최근 수정 시각 : 2024-07-08 08:52:01

동영상 인코더

동영상 인코딩에서 넘어옴
1. 개요2. 특징3. 하드웨어별 인코딩 방식
3.1. CPU (소프트웨어) 인코딩3.2. GPU 인코딩
3.2.1. GPGPU 인코딩3.2.2. 인코딩 전용 하드웨어
4. 동영상 인코더 목록
4.1. 코덱 라이브러리/프레임워크/콘솔4.2. FFmpeg 계열
5. 인코더 설정 방법

1. 개요

동영상인코딩하는 프로그램의 총칭.

2. 특징

일반적으로 "동영상 인코더 프로그램"이라 할 경우에는 편집 기능은 없거나 최소한으로만 갖고 있고 "인코딩 기능에 집중한 프로그램"을 말한다. 동영상 편집 프로그램에서 최종 결과물을 내보내기 할 때 거치는 도구 역시 동영상 인코더(플러그인)이라 부르기도 한다. 편집 없이 코덱과 포맷만 바꾸는 경우 "트랜스코더"라 불리기도 한다.

동영상 편집 기능이 미약해서 겉보기에는 별 것 아닌 것 같지만, 동영상의 화질 열화를 가능한 제어하면서 그 용량을 줄이는 기술(비유하자면 운전스킬)을 쓸 수 있다는 데 의미가 있다. 99%의 동영상 포맷이 손실 압축 포맷인 만큼 화질을 위해서라면 필히 잘 다룰 수 있어야 하는 도구이다. 널리 사용되는 동영상 인코더 프로그램은 기타 전문적이고 복잡한 다른 영상 편집기와 달리 적은 지식으로도 손쉽게 클릭 한두 번으로 인코딩을 해낼 수 있을 정도로 쓰기 쉽다는 데에 의미가 있기도 하다.

동영상을 새로 만들게 되면, 또는 실시간으로 영상/오디오 입력을 받아 파일형태로 녹화하게 되면 필히 인코딩을 거치게 된다. 동영상을 어떤 용도로 사용할지에 따라 인코더에서 각종 파라미터를 설정해주게 된다. 저장용인지 스트리밍용인지 커뮤니케이션용인지, 화질 우선인지 적은 버퍼링 우선인지, 최신기기에서만 재생되는지 레거시 기기에서도 재생되는지, 방송국 수준 장비 내에서 다루는지 휴대폰 수준 장비 내에서 다루는지 등등을 고려해서 원활한 재생이 이루어질 수 있도록 각종 설정들을 다루게 된다.

기존 동영상을 굳이 변환하는 인코딩(재인코딩)을 하는 이유로는 ① 화질을 보존하며 용량 줄이기, ② 구형 하드웨어 또는 휴대용 기기 등 저성능 기기가 지원하는 포맷으로 전환하기, ③ 특정 코덱만 재생 가능한 플레이어를 위해 포맷 전환하기, ④ 동영상 서비스(UCC)가 지원하는 포맷으로 전환하기 ⑤ 인터넷 대역폭에 맞춰 비트레이트 바꾸기 등등의 이유가 있다. 2000년대에는 코덱 종류도 다양하고, DVD플레이어, PMP, MP4플레이어 등의 하드웨어도 다양하고(=기종별로 미지원하는 코덱이 다양해서 변환이 필요했고), 인터넷은 느렸고, PC도 모든 코덱을 받쳐줄 정도로 성능이 좋은 것은 아니었기 때문에 재인코딩을 해야 할 필요가 많았다. 2010년대 들어서며 각종 동영상 재생 기기들이 스마트폰 출현으로 인해 망해서 사라지고(...) 코덱은 H.264사실상 표준이 되면서 재인코딩 할 필요성은 줄었지만, 지나치게 큰 동영상이 있는 경우 그 용량을 줄여 보존하고자 하는 용도로 사용하는 것과 그것을 넘어 동영상의 원활한 재생을 위한 인코딩이 주 목적이 되었다.[1][2]

인코딩 후 재생이 버벅이지 않게 되고, 영상 용량이 극적으로 줄어들게 되면 희열을 느낄 수 있다. 이를 위해서 CPU 리소스와 시간을 희생해야 하기 때문에 적정 선을 조절하는 것이 중요하며, ① 화질보존, ② 용량절약, ③ 시간절약이라는 세마리 토끼 중 두마리를 잡는 것을 목표로 인코딩을 한다. 이하 이를 위해 인코딩을 이해하는데 도움이 되는 정보들이 이어진다.

3. 하드웨어별 인코딩 방식

3.1. CPU (소프트웨어) 인코딩

오롯이 소프트웨어로 짜여진 로직에 의해서 범용 연산장치(CPU)로만 수행되는 인코딩으로서 후술될 "GPU/하드웨어(가속) 인코딩"이 나온 이후로 편의상 "CPU/소프트웨어 인코딩"이라고 부른다.

CPU 성능에 절대적으로 의존하기 때문에 고성능 CPU에서 구동하는 것이 좋다. '인코딩은 닥치고 클럭 빨'이라는 말이 나올 정도로 CPU 성능에 따라 인코딩 퍼포먼스가 크게 좌우된다. 일차적으로 고클럭(빠른 연산)이 중요하며, 성능유지력(저발열, 저 스로틀링) 역시 중요하나 후자는 쿨러(사제쿨러, 수랭쿨러)로 해결이 가능한 편이다.[3] 멀티코어 프로세서가 대세가 된 이후로 CPU 코어 개수 역시 중요하다. 그저 다다익선. 단 이 경우 코덱 라이브러리와 인코더 프로그램이 멀티코어를 지원해주어야 한다.[4]

x264, x265는 대표적인 코덱 라이브러리로서 CPU 인코딩을 할 때 흔히 사용된다.[5] 이외 xvid, vp9, av1 등이 있고, 자세한 내용은 코덱 참고.

세상에 다양한 인코더가 있지만, 무료로 사용하는 인코더는 사실상 대부분 FFmpeg를 기반으로 한다. 무료 동영상 인코더에 FFmpeg에서 지원하는 기능이 없을 수 있어도 FFmpeg에 없는 기능을 보유하는 경우는 없다. 개발이 중단되거나 업데이트가 게으른 무료 동영상 인코더는 구버전의 FFmpeg을 이용하는 경우도 종종 있어 멀티코어 프로세서를 지원하지 않거나, 고전 시절에 최적화되었었던 프리셋을 사용하는 등 시스템 자원은 더 먹으면서 결과물은 더 안 좋은 상황을 일으키기도 한다. 이에 따라 전문 인코더(사람)들은 FFmpeg의 기본적인 명령어와 배치파일 짜는 방법을 익혀 FFmpeg를 사용하기도 한다. FFmpegCLI 환경만 지원하므로 접근성이 떨어져 진입장벽이 높다는 문제가 있지만, 잘 사용한다면 유료 동영상 인코더를 쓰는 것보다 나을 수도 있다.[6]

소프트웨어 인코더의 가장 큰 장점은 시간이 지나면 버전업이 된다는 것이다.[7] 초반에는 옵션이 빈약했을지라도, 몇 년 지나면 다양한 옵션을 제공하여 상황에 맞춰 효율적인(주로 저용량 고화질) 인코딩을 할 수 있게 해준다.

최신코덱을 사용하려면 CPU 인코딩을 사용할 수 밖에 없다. 최신 코덱이 발표되면 소프트웨어 인코더/코덱에 먼저 반영이 되고, 하드웨어로 이를 지원하는 것은 "칩 설계, 최적화, 칩 제조"등의 과정을 거치며 몇 년의 시간이 흘러야 하기 때문이다.[8]

저용량 고화질의 영상을 만들기 위해서는 CPU 인코딩을 선택해야 한다. 일례로 동영상 옵션에 "B-Frame"이 있다.[9] B-frame은 앞 뒤 프레임의 정보를 읽어들여 픽셀이 움직이는 크기와 방향을 계산을 해야 하기 때문에 많은 연산량이 요구되며, 인코딩/디코딩 속도를 저하시키게 된다. 대신 압축이 많이 되는만큼 용량 절약이나 화질 향상에 눈에 띄는 도움을 준다.[10] CPU인코딩에서는 이 옵션을 제공하지만, GPU 인코딩에서는 이 옵션을 제공하지 않는다. 물론 절대적인 진리는 아니며, 하드웨어가속기(GPU 등)가 이를 지원해주면 하드웨어 가속으로도 저용량 고화질의 영상을 만들 수 있지만, 그래픽카드 제조사가 그런 제품을 내놓지 않는다(...) 하드웨어 가속기의 존재 이유는 "빠른 속도 달성"이기 때문에 속도향상에 방해되는 옵션들은 다 떼어버리고 트랜지스터를 박아버리기 때문이다. 그래서 압축은 덜 하고 화질은 떨어지는 경향이 보인다. 하드웨어 가속기 제조사들은 나중에 미세공정의 도움으로 칩셋에 여유공간이 장만되었을 때, 그제서야 화질 향상에 도움되는 트랜지스터 회로를 넣어주는 듯 하다.

장비를 갖추지 못해 하드웨어 가속을 할 수 없어도, 옵션을 낮춰 인코딩을 하면 빠른 속도로 인코딩을 할 수 있다. 최고의 선택지는 아닐지언정 선택지가 다양하다는 점은 CPU 인코딩의 장점이다.

화질을 보존해야 할 필요성이 크지만 용량을 절약해야 할 필요성이 적은 상황(하드를 살 돈이 빵빵한 상황), 즉 직업으로 동영상을 다루는 사람들이 사용하는 코덱들은 CPU 기반 인코딩만을 지원하는 경우가 많다. ProRes나 DNxHD, DNxHR 등 Intermediate Codec이라 불리는 편집용 코덱들의 경우가 그러하다. 압축률이 적다면 CPU 부담이 적어 GPU 등 하드웨어 가속의 도움을 받을 필요성이 줄어들고, 한편으로는 버전업 된 효율적인 최신 기술을 사용하기에도 좋기 때문이다. 물론 하드웨어 가속을 배제해야만 하는 이유는 없기에 어느정도 기술이 성숙되면 하드웨어 가속기 제품이 출시되기도 하며, ProRes의 경우 Apple Afterburner라는 전용 하드웨어로도 인/디코딩 가속이 가능하다.

CPU 인코더의 단점은 오로지 느린 속도. 동영상 인코딩은 일정 패턴이 있고[11] 시간별로 영역별로 쪼개서 분업화를 하기 좋은 프로세싱이기 때문에 능력이 쩔지만 손이 적은 애 대신 능력이 평범하지만 손이 많은 애에게 맡기기 시작한다. 이에 따라 GPGPU 기술이 발전하였고, 자주 쓰는 코덱이 한두개(H.264, H.265)밖에 없다면 이를 하드웨어로 찍어서 이 업무만 전담하게 만들어보기 시작한다. 이를 통틀어 하드웨어 가속이라 칭한다.(자세한 내용은 후술.)

GPU를 이용하는 인코딩 프로그램도 있으며 그 인코딩 속도는 CPU 따위 저리가라 할 정도로 빠르다. CPU는 서버용이래봐야 칩 하나당 코어가 64개지만(2019년 기준), GPU는 칩 하나에 그래픽 전용 병렬연산 코어가 요즘 기준으로 최소 수 백개, 최대 수 천개나 들어가는 매니코어 프로세서이다. 하지만 GPU를 이용하면 OpenGL 기반 인코더를 사용하는 경우에는 화질이 떨어진다고 한다. OpenGL이 3D 그래픽 처리용 라이브러리라 정밀도는 신경을 안 쓰기 때문. OpenCL 혹은 CUDA 기반은 이론상으로 품질이 떨어지지 않는다. 반면에 동영상 디코딩 시에는 GPU를 사용하는 것이 이득이다 (DXVA를 이용하는 NVIDIA PureVideo와 AMD UVD, VCN의 디코딩 영역, 인텔의 퀵 싱크 비디오 등).

업무용 인코더의 경우는 별도의 하드웨어 인코더가 장착된 가속장비와 영상입출력 인터페이스를 내장한 형태로 카메라나 VCR 등에서의 입력을 실시간으로 압축하여 파일 형태로 보관하게 된다. 대개의 경우 영상의 재편집이나 납품의 특정한 포맷을 위한 경우가 많다. 여기서 더 발전된 형태로는 스트리밍 기능을 부여하여 생방송용 장비로 운용된다.

3.2. GPU 인코딩

사실 엄밀히 말해 GPU 가속이 화질을 떨어트릴 이유는 없지만, GPU 회사들에서 품질보다는 속도를 위주로 작성되는 가속 지원 라이브러리나, GPU 내장 하드웨어 인코더의 성능 등의 이유로 대부분의 경우에서 떨어지지만 일반인 수준에서는 큰 상관 없는 화질 저하라 속도를 위해 자주 사용되며, 유료 코덱 등으로 이러한 저하를 억제할 수 있다. 작업용 소스나 소장용이 아니고 유튜브, Vimeo, dailymotion 같은 비디오 사이트에 올릴 목적이라면 어차피 업로드 과정에서 압축을 위한 재인코딩 도중 화질 열화가 일어나기 때문에 사용해도 상관없다.

GPU 가속에 사용되는 장치는 크게 두 가지로 나뉘는데, 하나는 게임에서는 셰이딩에 주로 사용되고 게임 외에 다른 전문 분야에서는 범용 연산(GPGPU)에 사용되는 스트림 프로세싱 유닛(NVIDIA의 CUDA, AMD의 스트림 프로세서, 인텔의 실행 유닛 등)이랑 다른 하나는 오로지 동영상 인코딩을 위한 전용 하드웨어 인코더로 나뉜다. 그래픽 하드웨어에 따라 쓸 수 있는 기능이 다르다.

GPU 인코딩이 가장 많이 쓰이는 곳은 유튜브 업로드 같은 동영상 서비스인데, 이유는 간단하다. 비트레이트를 넓게 줘도 자체 프로그램으로 어차피 화질 손상이 일어나기 때문이다. 그래서 비트레이트를 평소보다 1.5배 정도 주고 업로드해 버리면 화질을 너무 해치지 않으면서 시간이 절약되는 효율적인 환경을 구축할 수 있다. 실제로 어도비 프리미어 프로에서는 인코딩 할 때 선택할 수 있는 유튜브 프리셋을 보면 비트레이트 설정이 유튜브 권장 비트레이트보다 1.5배 높게 잡혀있는 것을 볼 수 있다.

게임 원컴 방송이나, 녹화시에도 유용한데, NVENC나 퀵 싱크의 경우 게임과 별도의 전용 하드웨어 장치를 활용하기 때문에 게임성능을 거의 떨어뜨리지 않는다. 특히 녹화위주의 유튜버의 경우는 일단 최대 비트레이트로 녹화 해두고 나중에 인코딩을 해서 용량을 줄이는 식으로 사용도 가능하다. 물론 하드웨어 가속으로 비트레이트 최대로 잡고 녹화를 한다면 화질은 좋은 편이겠지만, 무손실 압축마냥 용량이 커지기는 한다.

3.2.1. GPGPU 인코딩

GPU의 셰이딩을 비롯한 범용 연산을 담당하는 주력 장치인 스트림 프로세싱 유닛을 이용하여 가속하는 방식으로, 이론적으로는 GPGPU를 지원하는 모든 그래픽카드가 활용할 수 있어서 범용성 면에서는 장점이 있지만, GPGPU 답게 GPU 체급에 따라 성능에 크게 좌우되어서 빠른 인코딩을 찾는다면 최신의 비싼 그래픽카드를 찾아야 하는 단점이 있다.
  • NVCUVENC : 2009년 1월 v181.20 드라이버 버전부터 도입된 NVIDIA CUDA Video Encoder의 약자로, CUDA를 이용하는 인코딩이라서 줄여서 'CUDA 인코더'라고도 부르는데 CUDA 32코어 이상인 모든 NVIDIA 그래픽카드가 지원한다.[12] 속도는 다소 느리고 화질 저하는 보통인데, H.265(HEVC) 동영상을 i5-4460으로 인코딩할 경우 12시간 나올 게 CUDA를 활용하면 대략 35분이면 완성할 수 있을 정도로 속도가 빠르다. 화질 저하는 있지만 그래도 심하지 않아서 일반인이라면 크게 신경 안 써도 될 정도까진 된다. 다만 NVIDIA 측에서 2014년 6월에 발표된 v340.43 베타 드라이버 버전부터 지원을 끊어 버렸기에[13] 사용하기 위해서는 별도의 라이브러리를 설치해야 한다.
  • OpenCL: 사실상 현존 모든 GPU들에서 지원하며, 라이센스가 공개되어 있기 때문에 지원하는 기기가 더욱 많아질 가능성이 높다. 속도는 가장 느리며, 화질 저하는 가장 적다. 과거 TeraScale 3 마이크로아키텍처 이전의 라데온 그래픽카드(주로 HD 2000~6000 시리즈)로 인코딩하려면 이것 말고는 대안이 없었다. VCE가 도입되지 않은 시기였기 때문이다.
  • Metal: Apple 플랫폼에서 주력으로 쓰이며, OpenCL보다 훨씬 빠른 속도를 자랑한다. 어도비 프리미어 프로의 머큐리 엔진이 Metal 가속을 지원하기 시작하며 맥북 프로의 비디오 인코딩 성능이 동급의 윈도우 노트북과 대등 혹은 그 이상의 퍼포먼스를 보여주었을 정도.

3.2.2. 인코딩 전용 하드웨어

GPU 내부에 별도로 탑재된 동영상 인코딩 전용 하드웨어 장치를 이용하여 가속하는 방식으로, GPU의 체급에 상관없는 하드웨어이기 때문에 원하는 인코딩을 위해 굳이 비싼 그래픽카드를 찾을 필요가 없다는 장점이 있다. 하지만 하드웨어의 기능과 성능이 대체로 세대마다 개선되기 때문에 GPU 체급에 상관없이 구형보단 신형 그래픽카드가 절대적으로 더 유리할 수밖에 없으므로, 장기적으로 고려해서 알아볼거면 앞으로를 위해 최신 그래픽카드를 찾는 것이 좋다.
전용 하드웨어 인코더가 인코딩을 전담한다고 해서 GPU 전체적인 이용률이 0%가 되는 것은 아니다. 인코딩과 동시에 출력하는 실시간 인코딩의 경우, 렌더링 및 디스플레이 출력을 위해 GPU 이용률이 어느 정도 나타날 수밖에 없기 때문이다.[14] 최신이지만 비용 아낀다고 무작정 저사양 그래픽카드로 장시간 돌리다간 그래픽카드 자체에 무리를 줄 수 있으므로, 단일 스트림 플랫폼 기준으로 GPU 자원에 어느 정도 여유를 남기려면 최소한 현세대 엔트리~메인스트림 라인의 그래픽카드를 알아보는 것이 안정적이다.
  • 퀵 싱크 비디오: 2011년 샌디브릿지부터 도입된 인텔의 내장 그래픽 내에 들어있는 전용 하드웨어. 브랜드 이름답게 속도에 중점을 둔 인코딩 기술로, 속도가 가장 빠르지만 그만큼 화질 저하도 가장 크다. 저사양 컴퓨터로 방송이나 녹화를 할 수 있게 해 주는 일등공신.
    디코딩에 대한 설명은 해당 문서 참조.
  • NVENC: 2012년 케플러 마이크로아키텍처와 함께 소개된 NVIDIA 그래픽카드에 올라가는 전용 하드웨어 인코더. 인텔 퀵싱크처럼 동영상 하드웨어 인코딩을 제어하는 데에 사용되며, 속도는 인텔 퀵싱크에 맞먹지만 화질이 CUDA 인코더라고도 불렀던 GPGPU(CUDA) 방식의 NVCUVENC보다 떨어진다. CUDA는 게임의 경우 3D 그래픽의 셰이딩 역할을 담당하지만 NVENC는 3D 그래픽 코어가 아닌 영상 처리 전용 코어들을 조작한다.
    지포스 10 시리즈부터 도입된 5세대에 들어서 화질이 꽤 개선되었고, 지포스 20 시리즈부터 도입된 6세대에 들어서는 x264 fast 옵션과 비슷한 수준이 되었다.[15] 따라서 그냥 엔비디아 최신형 그래픽 하나만 달아놓으면 방송에 지장이 전혀 없기 때문에, 스트리밍으로 돈을 벌정도의 사람이 아니라면 특별히 방송용 견적을 살 필요 없다.
    등장한지 2년 뒤에 NVCUVENC의 지원이 중단되었지만 NVENC도 인코딩 전용 하드웨어만으로는 부족하다면 CUDA까지 이용하여 함께 동작해주기도 해서 엄밀히 따지면 하이브리드 인코딩도 지원해주는 유연한 기능이다. 단, 기본적으로 인코딩 전용 하드웨어를 우선으로 동작하므로 반쪽짜리 유연성을 지녔다고 볼 수 있다. OBS Studio 같은 방송 소프트웨어에서 NVENC NEW 인코더를 지원하게 됨으로써 GTX 600번대 이상 그래픽카드 이용자는 게임 프레임 손실 없이 방송이나 녹화가 가능하게 되었다.
    참고로 NVDEC는 인코딩이 아닌 디코딩 전용 하드웨어이므로 헷갈리지 말자. 이쪽은 PureVideo와 연계되므로 자세한 내용은 PureVideo 문서 참조.
  • VCE: 2012년 GCN 마이크로아키텍처부터 도입된 AMD 라데온 그래픽 카드의 전용 하드웨어 인코더. 그동안 스트림 프로세서로만 이용해야 했던 TeraScale 3 이전의 마이크로아키텍처와는 다르게 전용 하드웨어 인코더가 탑재되어, 보다 효율적인 인코딩이 가능해졌지만 지원하는 프로그램의 수가 인텔 퀵싱크나 NVENC에 비해서 적다. 2017년 VCE가 VCN에 흡수, 통합되었으므로 현재는 VCN으로 통용된다. 마찬가지로 OBS Studio에서 지원한다. 가능하다면 X264 대신 선택하는게 좋다.
  • VCN: 2017년 1세대 라이젠 APU(레이븐 릿지)부터 도입된 AMD 라데온 그래픽의 인코딩 & 디코딩 전용 하드웨어. 이름만 다를 뿐, 인코딩 부분은 VCE에서 계승되었기 때문에 VCE가 가지고 있는 불리한 점을 고스란히 이어받았다(...).
    참고로 디코딩은 UVD에서 계승되었다. 디코딩에 대한 자세한 내용은 해당 문서 참조.
  • Microsoft Media Foundation: Windows Vista부터 도입된 DXVA 레이어. 웹캠 캡쳐, 오디오 캡쳐, 인코더 디코더, 비디오 프로세싱의 하드웨어 가속을 지원한다. 트랜스코딩 API 문서. 핸드 브레이크 인코더에서 지원하며, 퀄컴AP를 사용하는 Windows 10 on ARM 기기에서 동영상 하드웨어 가속시 활용할 수 있다.
  • Video Toolbox: 애플의 하드웨어 인코딩 디코딩 가속을 지원하는 low-level framework.# M1 mac에서는 M1에 내장된 인코더를 이용하고 인텔맥이라면 기본적으로 cpu에 내장되어있는 인텔 퀵싱크를 사용하여 작동한다.

4. 동영상 인코더 목록

4.1. 코덱 라이브러리/프레임워크/콘솔

  • x264(for H.264): 무료이고 오픈소스이다. x264는 FFmpeg에 종속된 프로젝트가 아니며 독립되어 있고 오히려 FFmpeg 쪽에서 x264 소스를 받아다 쓰는 관계이다.
  • x265(for H.265)
  • libvpx(for VP8, VP9)
  • libaom(for AV1) - 공식 AV1 인코더
  • rav1e(for AV1) - 조금 더 빠른 AV1 인코더
  • svt-av1(for AV1) - 조금 더 더 빠른 AV1 인코더 (느리다)
  • VideoToolbox(in macOS) - 기기 내 AP, GPU가 지원하는 하드웨어 인코딩을 운영체제 레벨에서 지원한다.(H.264, H.265 등)
  • Media Foundation(in Windows) - 기기 내 CPU, GPU가 지원하는 하드웨어 인코딩을 운영체제 레벨에서 지원한다.(H.264, H.265 등)[16]

4.2. FFmpeg 계열

  • A's Video Converter(무료): 속도를 중점으로 둔 인코더로, 여러 하드웨어 인코딩 방식을 지원하고 VfW(Video for Windows) 기반이라서 FFmpeg에서는 라이센스 문제로 사용할 수 없는 하드웨어 필터를 사용할 수 있기 때문에 하드웨어 인코딩 속도가 여타 FFmpeg 기반 인코더들보다 빠르다. GUI도 간단하고 쓰기 편하게끔 구성되어 있어서 사용하기에도 편리하다. 하지만 하드웨어 인코딩에 초점이 맞추어져 있는 만큼 소프트웨어 인코딩은 AV1 코덱을 지원하지 않는 등 취급이 좋지 않고, 하드웨어 인코더의 필터 기능도 정말 기본적인 것들 이외엔 포함되어 있지 않기 때문에 다른 기능을 사용하지 않고 가벼운 용도로 사용할 사람들에게만 추천한다.
  • Adobe Media Encoder(유료, 어도비): 이쪽은 독립적인 프로그램이라기보다는 프리미어 프로애프터 이펙트에 딸려있는 프로그램에 가깝다. 독립적으로도 사용 가능 하지만, 프리미어 프로나 애프터 이펙트로 편집한 뒤에 결과물을 미디어 인코더로 내보내서 인코딩 하는 용도로 많이 사용된다. 프리미어나 에펙 자체에서 내보내면 인코딩 하는 동안 그 무거운 프리미어/에펙을 계속 켜둬야 하지만, 미디어 인코더로 내보내서 인코딩하면 무거운 프리미어/에펙을 종료해서 PC 리소스를 인코딩 쪽으로 더 돌릴 수 있는 장점이 있다.
    단품으로 살 수는 없고, 크리에이티브 클라우드에서 프리미어 프로나 애프터 이펙트를 구독하면 같이 딸려 온다. 약칭은 AME.
  • Mencoder (무료, 오픈소스) MPlayer에 포함되어 있고 수많은 인코더에서 활용하고 있다.
  • MeGUI - (무료, Mencoder 프론트엔드): 인코딩을 전문적으로 한다면 꼭 배워야 할 프로그램.
  • Hybrid(무료, FFmpeg 프론트엔드): MeGUI와 기반이 되는 프론트엔드는 다르지만 기능은 비슷하다.
  • IRIVER PLUS(무료, 아이리버)
  • KIES(무료, 삼성전자)
  • 곰인코더(유료, 그래택):현재 서비스 종료됨.[17][18]
  • 바닥(무료, Mencoder 프론트엔드): 키플에서 개발한 프로그램으로 2009년경에 지원을 중단한다고 발표했다.
  • 샤나인코더(무료, 부분오픈소스): 키라라 인코더의 후신.[19] 커뮤니티도 있으며 최신 QnA가 하단 표시줄에 등장한다. 팟인코더가 지원중단되고 카카오인코더가 맬웨어 삽입으로 타락한 이후 국산 프리웨어 인코더계의 얼마 안되는 보루이다.
  • 엔젤인코더(무료)
  • 제트오디오VX (무료 혹은 유료, 코원)
  • 카카오인코더: Kakao가 아니라 Cacao다. 다음카카오의 이름과 유사한 점을 이용해 인지도를 올린 것을 더해, 실제로는 인코더를 가장한 악성코드이다. 네이버 소프트웨어 주의사항에 다음카카오에서 제작한 것이 아니라고 명시되어 있었고, 현재는 삭제되어 있다. [상표문제] [그리드문제] [채굴문제][23]
  • 다음팟인코더(무료, 다음): 현재 서비스 종료됨.
  • 핸드브레이크(무료, 오픈소스)
  • mainconcept(유료) : 개인에게 하이브리드 HEVC 인코더 FFmpeg 플러그인을 $99에 판매한다. 홍보 문구는 x265보다 30% 높은 효율이라고 홍보하지만 이게 사실이라면 AV1 코덱 급의 성능이라 신뢰하기 힘들고 MSU 비디오 코덱 비교에 의하면 x265보다 10% 정도 효율적이다. 회사를 대상으로 한 스트리밍 솔루션이 주요 상품이라 인코더에 대해서는 국내외 모두 정보를 얻기 힘들다. 국내는 구라 제거기 개발자의 후기가 있는데 인코딩 속도는 x264의 절반, NVENC의 두 배에 품질은 x264와 x265 사이라고 한다.
  • 미디어 코더(무료)
  • 파워디렉터
  • Staxrip(무료, 오픈소스) : 최신 코덱을 가장 빠르게 지원하는 프론트엔드 GUI.

5. 인코더 설정 방법

코덱 또는 FFmpeg 문서 참고.
컨테이너, 퀀타이저,비트레이트, 퀄리티 등 각종 설정방법이 담겨있다.


[1] 그렇지만 인코딩(트랜스코딩) 행위 자체는 알게 모르게 많이 이루어지고 있다. 동영상 편집 전문 프로그램에서 프록시 파일 생성을 위해 인코딩을 하는 일이 선행되곤 하고, NAS 같은 기기에서는 인터넷 대역폭에 맞춰 트랜스코딩을 하기도 한다.[2] 용량을 줄이는 것외에도 원활한 재생을 위한 인코딩이 지속적으로 있는 이유는 예전의 코덱들의 경우 재생 시 노이즈가 발생하거나 영상의 스킵 시 끊기는 현상이 발생하거나 해상도에 따라 레터박스필러박스가 붙어 가독성을 떨어뜨리는 경우가 많아 이러한 수요로 인한 인코딩이 용량을 줄이는 것보다 더욱 주요한 수요가 생기고 있다.[3] 이 때문에 노트북보다 데스크탑에서 인코딩을 하는 것이 더 낫다.[4] 현재는 대다수 프로그램이 멀티코어를 지원한다. 과거 멀티코어 초창기에는 멀티코어를 제대로 활용하지 않는 앱들이 많았고, 인코더가 멀티코어를 제대로 자원하지 않는다면 코어 하나만 일하고 나머지는 놀아서 코어빨은 의미가 없었다.[5] 이것이 하드웨어 가속을 지원하면서 x264(QSV)처럼 별도의 선택지가 생겼지만, 일단 기본적으로 시작은 소프트웨어 인코딩이다.[6] GPU 제조회사들이 FFmpeg과 협업을 하는 등 동영상 인코딩계에서 FFmpeg의 영향력은 막강하기 때문에, 인코더의 사실상 표준 지위라 봐도 무방하다.[7] 후술할 하드웨어 인코딩(GPGPU, 인코딩 칩셋)은 버전업을 하려면 장비를 교체해야 한다.[8] 물론 이래나 저래나 최신코덱은 제대로 쓰기 어렵다. CPU 인코딩 속도가 처참하게 느릴 것이 자명하기 때문이다(...)[9] I-frame은 동영상 캡쳐 이미지 같은 온전한 사진, P-frame은 선행 프레임에서 변화된 픽셀정보만 담은 프레임, B-frame은 선후 프레임에서 변화된 픽셀정보만 담은 프레임. 이 정보량 차이로 인해 I-frame은 용량이 큰 반면에 B-frame은 용량이 적다.[10] 물론 정도껏 해야지, 극단적으로 가면 영상이 깨지면 답이 없어진다(...)[11] 좌로이동, 우로이동, 위로이동, 아래로 이동, 우회전, 좌회전 이런 패턴에서 크게 벗어나지 않는다. 순간이동 하는 존재가 없다면.[12] 지포스 8 시리즈에서는 지포스 8600 GT 이상, 지포스 9 시리즈에서는 9500 GT 이상, 지포스 200 시리즈에서는 GT 220 이상부터 해당된다. 지포스 400 시리즈부터 사용된 페르미 마이크로아키텍처부터는 로우엔드의 CUDA 스펙이 최소 48코어이므로 모든 체급의 그래픽카드들이 지원하는 것으로 보면 된다.[13] WHQL 인증받은 정식 드라이버 기준으로는 2014년 7월에 발표된 v340.52 버전부터[14] 이는 하드웨어 디코딩할 때, 디코딩 처리를 전용 하드웨어 디코더가 전담한다 해도 결과물을 보려면 렌더링 및 디스플레이 출력 과정이 필요하므로 GPU 전체 이용률이 0%가 될 수 없는 것과 비슷한 맥락이다.[15] 실제 성능은 X264 MEDIUM에 필적하는 수준이다.[16] 참고로 QSV, NVENC 등은 하드웨어 제조사가 제공하는 API로 운영체제를 거치지 않고 직접 하드웨어를 다루기 때문에 성능이 조금 더 좋다. 그래서 Media Foundation은 잘 사용되지 않는 경향이 있다. 다만 스냅드래곤 아드레노 GPU의 경우, 하드웨어 가속기 API를 제공해주지 않고 태업을 하기 때문에(...) 답내친 윈도우가 스냅드래곤 하드웨어 가속을 쓸 수 있도록 해줄 수 있다.[17] 2024년 5월 23일서비스가 공식적으로 종료되었다.[18] 곰랩 홈페이지의 고객지원 메뉴에서 다운로드를 클릭하면 다운로드를 받을 수 있지만 무료 버전 즉 인코딩된 영상물에 워터마크가 삽입되는 버전만 이용이 가능하며 유료 버전은 이용이 불가능하다. 로그인 시 알 수 없는 오류로 사용자 인증에 실패하였습니다.(인터넷 연결여부 등을 확인하세요.)라는 창이 뜨는데 단순 오류가 아니고 서비스를 공식적으로 종료했기에 창이 뜨는 것이다.[19] 한때 샤나 인코더 홈페이지에서 키라라 인코더도 다운로드 할 수 있게 배포하였으나 홈페이지 개편 이후 예전 버전들을 한번 정리하면서 현재는 삭제 되었다.[상표문제] 다음의 서비스들이 카카오로 이름이 변경되면서 이것도 다음팟인코더가 이름이 변한 것이라고 착지하는 경우가 있는데(색깔도 카카오 제품과 똑같은 노란색을 쓴다) 전혀 다른 제품이다. 보통 상식적인 개발자들은 자신이 만드는 프로그램명이 다른 기업과 혼동되는 등의 상황을 굉장히 꺼리며, 자신이 만들었기 때문에 오히려 색다른 이름을 쓰고자 하는 경우도 많다. 카카오라는 기업이 이미 있는 상황에서 '카카오'(cacao)라는 이름으로 개발을 시작했다는 것은, 애초에 이름 혼동을 노리고 일부러 저렇게 명명한 것이다. 그렇다면 그 유명세에 묻어가서 광고나 암호화폐 채굴 등의 이익을 얻으려 했을 가능성이 높은, 일종의 계획범죄다. 공교롭게도 카카오인코더 저작권에 명시된 시작 연도가 2011년인데, 그때가 카카오톡이 등장한 2010년 이후 한창 카카오톡 열풍이 불던 때였음을 생각하면 의미심장하다. 공식 홈페이지만 보더라도 줄바꿈조차 제대로 안 되어 있는 텍스트 위주의 사이트로, 개인이 재미삼아 만드는 오픈소스 프로그램들도 GitHubReadme.md 정도의 단장은 하는 것에 비해 매우 정성이 없다. 애초에 그런 것을 만들 능력도 의지도 없으며 사람들 등쳐먹는 데에만 그 의의를 두기 때문이다.[그리드문제] 2018년 6월 한국교육학술정보원 교육사이버안전부 공식 발표로 카카오인코더를 한번이라도 설치한 적이 있다면 프로그램을 지웠더라도 sch.exe라는 파일이 혼자서 업데이트를 하여 mon.exe를 깔고 다시 smartpoint.exe를 설치하여 사용자 몰래 컴퓨터 소스를 사용하여 그리드를 하고 있다는 것이 밝혀졌다. 언론 기사가 나고 기자가 연락을 취했음에도 카카오툴즈 제작자는 묵묵 부답. 절대 설치하지 않도록 주의해야 하며, 한번이라도 사용했다면 폴더 째로 찾아서 삭제를 하고 바이러스 탐색 프로그램으로 채굴 설치파일과 실행파일 모두 찾아서 지워야 한다. 직접 찾아서 제거 하기 어렵다면 MZK 도구 돌리면 제거된다.[채굴문제] 2018년 7월 2일에 카카오인코더를 설치하면 사용자의 동의 없이 몰래 악성 프로그램을 설치해 암호화폐 채굴기로 사용한다는 기사가 올라왔다. 2018년경 버전(암호화폐가 화제가 되던 시기였다.)부터 그랬던것으로 보아 어느샌가 업데이트로 슬그머니 집어넣은 모양. 2019년 후반 1.95버전 Windows Server 2008 32비트 기준으로는 SCH.EXE나 관련 서비스가 없는 것이 확인되었다. 다만 작동 방식이 변경된 것일 수도 있다. 2020년 현재에도 멀웨어가 숨어져있다. Windows 10을 쓰는 사람이면 방화벽이 잡아내긴 한다. 2020년 초부터 2020년 8월 현재 현재 공식 사이트(카카오툴즈)에 들어가보면 새로운 브랜드명으로 찾아뵙겠다는 내용, 새로운 브랜드명을 권유하는 프로그램을 설치한다거나, 다음 카카오와는 상관없다는 내용이 들어가있다. 또한 암호화폐 채굴기를 설치하지 않는다는 내용이 올라와있다. 그러나 이미 공식적으로 밝혀지고 기자와의 인터뷰도 거절하는것에 비추어보면 한명이라도 낚으려는 의도로 볼 수 있다.[23] 내비게이션을 네이게이션으로 오자를 냈다.