DGDecNV
DGDecNV: AVC/HEVC/MPG/VC1 Decoder and Frame Server
내가 영상을 처리할 때 주로 쓰는 환경은 DGDecNV + AVISynth다.
이 중 DGDecNV는 Donald Graft가 만든 유료 프로그램으로, nVidia의 GPU를 활용해 비디오를 읽어준다.
비디오를 프레임 단위로 처리하기 때문에 AVISynth로 원하는 구간에 대해서만 효과를 넣는 것도 가능하다.
유료지만 15$밖에 하지 않는 저렴한 가격은 덤이다.
nVidia의 GPU만 지원하는 게 단점이지만, 어차피 지금 GPU는 nVidia가 지배하기 때문에 별 영향도 없다.
무엇보다도 이 프로그램의 장점은 비디오 파일을 프레임 단위로 정확하게 읽을 수 있다는 점이다.
DGIndexNV로 비디오 파일을 읽은 뒤 스크립트 하나만 제대로 작성하면 프레임 단위의 처리가 가능하다.
위에 언급한 장점들은 바로 이 특성 위에서 존재하는 것이다.
FFmpegSource
FFmpegSource (usually known as FFMS or FFMS2) is a cross-platform wrapper library around FFmpeg
FFmpegSource는 FFmpeg에 인터페이스를 추가(wrapping)해서 AVISynth에서 읽게 해주는 프로그램이다.
최초에는 ffmpeg.exe를 호출하는 구조였던 것 같은데, 지금은 그냥 독립적으로 수행된다.
AVI, MKV, MP4 등의 컨테이너에서는 프레임 단위로 정확하게 읽을 수 있기도 하다.
WMV, OGM 등은 프레임 단위까진 정확하지는 않으나, 읽을 수 있다.
특정 GPU에 대한 의존도도 없으며, AVISynth 스크립트에는 복잡한 내용을 쓸 필요도 없다.
즉, 사실상 모든 면에서 DGDecNV의 기능을 동일 이상으로 좀 더 간편하게 수행이 가능한 것이다.
nVidia의 신형 GPU 코어인 암페어를 적용한 RTX 30 시리즈는 비디오 인코더가 기존과 동일하다.
그래서 현재 사용중인 GTX1660을 GeForce 30대로 업그레이드할 필요가 없었다.
그런데, 비슷한 시기에 발표된 AMD의 Big Navi에서는 비디오 인코더가 개선되었다.
Big Navi로 이전을 검토하는 지금, nVidia 의존도가 없으며, 좀 더 나은 기능을 가진 FFMS2로 이전을 고려해야 한다.
이제는 DGDecNV를 보내줘야 할 때인가?