2016년 10월 12일 수요일

리눅스 ffmpeg CUDA 비디오 코덱 연동 빌드 - build ffmpeg with cuda video codec on linux

1. nvidia 드라이버, cuda 툴킷 설치 - /usr/local/cuda
2. cuda video codec 설치 - /home/ubuntu/work/Video_Codec_SDK_7.0.1
3. x264 설치(비교 테스트용) - /home/ubuntu/work/x264/build
4. ffmpeg 빌드(64비트)

./configure --prefix=./build/ --enable-shared --disable-static --enable-cuda --enable-nvenc --enable-nonfree --extra-cflags=-I/usr/local/cuda-8.0/include \
--extra-cflags=-I/home/ubuntu/work/Video_Codec_SDK_7.0.1/Samples/common/inc --arch=x86_6
4 --enable-libx264 --enable-gpl --extra-cflags=-I/home/ubuntu/work/x264/build/include --extra-ldflags=-L/home/ubuntu/work/x264/build/lib

댓글 5개:

  1. 안녕하세요. 주인장님 블로그로 많은 도움받고 있습니다.
    질문이 있어서 염치없이 해당글도 아닌곳에 글을 남깁니다.
    mingw 로 visual studio에서 사용할 dll을 빌드하고
    있습니다.
    헌데 zeranoe 에서 받은 dll을 하용하면 h.265 영상 decoding시에 cpu사용량이 100%도달하는데 제가 빌드해서 올리면 cpu를 한개만 사용하는지 25% 언저리가 나옵니다.

    ./configure --enable-gpl --enable-version3 --disable-static --enable-shared --disable-debug --enable-w32threads --target-os=mingw32 --enable-memalign-hack --enable-w32threads

    이런식으로 사용하는데 혹시 이유가 있을까요? 간단한 힌트라도 좋으니 도와주시면 감사하겠습니다.

    답글삭제
    답글
    1. configure 옵션에는 문제가 없어보이는데 cpu 사용률에 관해서는 다른 원인이 있어보이네요. 동일한 조건이라면 sleep이나 디코더 사용방식에서 차이점이 있는지 봐야할것같습니다.
      ffmpeg 빌드는 윈도우에서 mingw로 하는것보다 우분투에서 mingw로 윈도우용 dll을 크로스컴파일해서 사용하는게 제일 확실합니다. 방법은 zeranoe 웹사이트에 있습니다

      삭제
    2. 네. 주인장님 답변 감사드립니다.

      삭제
  2. 작성자가 댓글을 삭제했습니다.

    답글삭제