FFmpeg
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
FFmpeg는 2000년 시작된 오픈 소스 프로젝트로, 다양한 오디오 및 비디오 형식을 변환하고 처리하는 데 사용되는 강력한 명령줄 도구와 라이브러리를 제공한다. 2004년부터 2015년까지 미하엘 니더마이어가 이끌었으며, 3개월마다 새로운 릴리스를 발표한다. FFmpeg은 자체 코덱 외에도 다양한 표준 코덱 및 컨테이너 형식을 지원하며, CPU, 특수 목적 하드웨어, 다양한 미디어 및 인터페이스를 지원한다. 블렌더, 유튜브, 구글 크롬 등 다양한 소프트웨어 및 프로젝트에서 사용되며, NASA의 화성 2020 임무에도 활용되었다.
더 읽어볼만한 페이지
- 오디오 라이브러리 - ASIO
ASIO는 독일 스타인버그에서 개발한 오디오 입출력 API 규격으로, 낮은 지연 시간과 멀티 채널 I/O를 지원하며 윈도우 운영체제에서 주로 사용된다. - 오디오 라이브러리 - 다이렉트뮤직
- 멀티미디어 프레임워크 - 퀵타임
퀵타임은 1991년 애플에서 처음 출시된 멀티미디어 프레임워크로, 다양한 기능 업데이트를 거치며 발전했으나 애플의 소극적인 지원으로 쇠퇴하였고, 비디오 및 오디오 트랜스코딩, 코덱 지원 등의 특징을 가지며 퀵타임 플레이어를 통해 다양한 파일 형식을 재생할 수 있도록 지원했으나, 2016년 4월 윈도우 버전 지원이 중단되었다. - 멀티미디어 프레임워크 - 다이렉트쇼
DirectShow는 마이크로소프트에서 개발한 윈도우 기반 멀티미디어 프레임워크이자 API로, 필터 그래프를 통해 비디오 재생, 오디오 녹음, 편집, 인코딩 등 다양한 작업을 처리하며, 뛰어난 코덱 확장성을 가지지만 복잡한 구조와 코덱 충돌 문제가 있다.
2. 역사
FFmpeg 프로젝트는 2000년 파브리스 벨라드에 의해 시작되었으며,[112] 2004년부터 2015년까지는 미하엘 니더마이어가 주도하였다.[113] 일부 FFmpeg 개발자들은 MPlayer 프로젝트 소속 개발자들이기도 했다.
2011년 3월 13일, FFmpeg 개발자 그룹은 Libav라는 이름으로 프로젝트를 포크하기로 결정했다.[14][15][16] 이는 프로젝트 관리 문제와 개발자 간의 리더십 불일치 때문이었다.[17][18][19] 이 분열로 데비안,[98] 우분투 11.04,[99] 젠투 리눅스는 Libav를 채택했다. 2015년 7월 데비안은 보안 문제 대응으로 Libav를 배제하고 FFmpeg 채용으로 돌아섰으며, 우분투도 FFmpeg를 다시 채택했다.[100]
2014년 1월 10일, 두 명의 구글 직원들이 퍼즈 테스팅을 이용하여 과거 2년 간 1,000개 이상의 버그를 FFmpeg에서 수정하였다고 발표하였다.[114]
2018년 1월, FFmpeg의 일부였던 ffserver 명령 줄 프로그램이 제거되었다.[115] 이는 내부 API 이용으로 인한 높은 유지보수 노력 때문이었다.[116]
프로젝트는 평균 3개월에 한 차례 새로운 릴리스를 출시한다. 릴리스 버전은 웹사이트에서 다운로드할 수 있지만, FFmpeg 개발자들은 사용자가 소스 코드 Git 버전 관리 시스템으로부터 최신 빌드를 이용하여 소스로부터 소프트웨어를 컴파일할 것을 권고한다.[117]
2022년 1월 17일 큰 API 변경과 비권장 API 삭제가 이루어진 FFmpeg 5.0이 출시되었다.[101]
2. 1. 코덱 역사
FFmpeg 프로젝트 내에서 FFV1, Snow, NUT 등 세 개의 비디오 코딩 형식 및 컨테이너 형식이 생성되었다. FFV1은 무손실 코덱이며, Snow는 무손실 및 손실 압축을 지원한다. Snow 코덱 개발은 중단되었고 비트스트림 형식도 확정되지 않아 2011년부터 실험적인 상태로 유지되고 있다. NUT 컨테이너 형식은 더 이상 활발히 개발되지는 않지만 유지보수는 진행 중이다.[24]2010년 여름, FFmpeg 개발자 피오나 글레이저, 로널드 불트예, 데이비드 콘래드는 ffvp8 디코더를 발표했다. 이들은 테스트를 통해 ffvp8이 구글의 libvpx 디코더보다 빠르다는 것을 확인했다.[25][26] FFmpeg는 0.6 버전부터 WebM과 VP8을 지원했다.[27]
2013년 10월, FFmpeg에 네이티브 VP9[28] 디코더와 오픈 소스 HEVC 디코더인 OpenHEVC가 추가되었다.[29] 2016년에는 네이티브 AAC 인코더가 안정화되면서 VisualOn 및 FAAC 등 외부 AAC 인코더 지원이 제거되었다. FFmpeg 3.0 ("아인슈타인")은 Fraunhofer FDK AAC 인코더에 대한 빌드 지원을 유지했다.[30] FFmpeg는 3.4 ("칸토어") 버전부터 FITS 이미지 형식을 지원했다.[31] 2018년 11월, FFmpeg 4.1 ("알콰리즈미")부터 AV1을 MP4 및 Matroska (WebM 포함)에 멀티플렉싱할 수 있게 되었다.[32][33]
3. 구성 요소
FFmpeg는 크게 명령줄 도구와 라이브러리로 구성된다.
=== 명령줄 도구 ===
- `ffmpeg`: 오디오 또는 비디오 형식을 변환하는 명령줄 도구이다. TV 캡처 카드와 같은 다양한 하드웨어 및 소프트웨어 소스에서 실시간으로 캡처하고 인코딩할 수 있다.[34]
- `ffplay`: SDL 및 FFmpeg 라이브러리를 활용하는 간단한 미디어 플레이어이다.
- `ffprobe`: 미디어 정보를 표시하는 명령줄 도구이다. MediaInfo도 참조.
=== 라이브러리 ===
- '''libavcodec:''' 모든 네이티브 FFmpeg 오디오/비디오 인코더 및 디코더를 담고 있는 라이브러리이다. 대부분의 코덱은 최고의 성능과 높은 코드 재사용성을 보장하기 위해 처음부터 개발되었다.[7]
- '''libavformat'''(Lavf): 오디오/비디오 컨테이너 형식에 대한 디멀티플렉서 및 멀티플렉서를 담고 있는 라이브러리이다.[7]
- '''libavutil:''' 해시 함수, 암호, LZO 디컴프레서, Base64 인코더/디코더 등 FFmpeg의 여러 부분에 공통적으로 사용되는 루틴을 담고 있는 헬퍼 라이브러리이다.
- '''libswresample:''' 오디오 리샘플링 루틴을 담고 있는 라이브러리이다.
- '''libavresample:''' Libav 프로젝트의 오디오 리샘플링 루틴을 담고 있는 라이브러리로, ''ffmpeg''의 ''libswresample''과 유사하다.
- '''libpostproc:''' 이전 H.263 기반 비디오 후처리 루틴을 담고 있는 라이브러리이다.
- '''libswscale:''' 비디오 이미지 스케일링 및 색 공간/픽셀 형식 변환 루틴을 담고 있는 라이브러리이다.
- '''libavfilter:''' 디코더와 인코더 사이에서 비디오/오디오를 수정하거나 검사(디버깅용)할 수 있도록 하는 vhook의 대체품이다. 필터는 MPlayer 및 avisynth를 포함한 많은 프로젝트에서 포팅되었다.
- '''libavdevice:''' 내부 및 외부 장치를 통해 오디오/비디오 입출력을 담고 있는 라이브러리이다.
3. 1. 명령줄 도구
- `ffmpeg`는 오디오 또는 비디오 형식을 변환하는 명령줄 도구이다. TV 캡처 카드와 같은 다양한 하드웨어 및 소프트웨어 소스에서 실시간으로 캡처하고 인코딩할 수도 있다.[34]
- `ffplay`는 SDL 및 FFmpeg 라이브러리를 활용하는 간단한 미디어 플레이어이다.
- `ffprobe`는 미디어 정보(텍스트, CSV, XML, JSON)를 표시하는 명령줄 도구이다. MediaInfo도 참조.
3. 2. 라이브러리
- '''libavcodec:''' 모든 네이티브 FFmpeg 오디오/비디오 인코더 및 디코더를 담고 있는 라이브러리이다. 대부분의 코덱은 최고의 성능과 높은 코드 재사용성을 보장하기 위해 처음부터 개발되었다.[7]
- '''libavformat'''(Lavf): 오디오/비디오 컨테이너 형식에 대한 디멀티플렉서 및 멀티플렉서를 담고 있는 라이브러리이다.[7]
- '''libavutil:''' 해시 함수, 암호, LZO 디컴프레서, Base64 인코더/디코더 등 FFmpeg의 여러 부분에 공통적으로 사용되는 루틴을 담고 있는 헬퍼 라이브러리이다.
- '''libswresample:''' 오디오 리샘플링 루틴을 담고 있는 라이브러리이다.
- '''libavresample:''' Libav 프로젝트의 오디오 리샘플링 루틴을 담고 있는 라이브러리로, ''ffmpeg''의 ''libswresample''과 유사하다.
- '''libpostproc:''' 이전 H.263 기반 비디오 후처리 루틴을 담고 있는 라이브러리이다.
- '''libswscale:''' 비디오 이미지 스케일링 및 색 공간/픽셀 형식 변환 루틴을 담고 있는 라이브러리이다.
- '''libavfilter:''' 디코더와 인코더 사이에서 비디오/오디오를 수정하거나 검사(디버깅용)할 수 있도록 하는 vhook의 대체품이다. 필터는 MPlayer 및 avisynth를 포함한 많은 프로젝트에서 포팅되었다.
- '''libavdevice:''' 내부 및 외부 장치를 통해 오디오/비디오 입출력을 담고 있는 라이브러리이다.
4. 지원 하드웨어
FFmpeg는 다양한 주문형 반도체(ASIC)를 통해 오디오/비디오 압축 및 압축 해제 계산 작업을 호스트 CPU에서 부분적으로 또는 완전히 오프로드할 수 있도록 지원한다. 이러한 ASIC를 사용하려면 알고리즘의 전체 구현 대신 API만 필요하다.[36]
다음 API도 지원된다: DirectX 비디오 가속 (DXVA2, 윈도우(Windows)), Direct3D 11 (D3D11VA, 윈도우), Media Foundation (윈도우), Vulkan (VKVA), VideoToolbox (iOS, iPadOS, macOS), RockChip MPP, OpenCL, OpenMAX, MMAL (라즈베리 파이), MediaCodec (안드로이드 OS), V4L2 (리눅스). 환경에 따라, 이러한 API는 특정 ASIC, GPGPU 루틴 또는 SIMD CPU 코드로 이어질 수 있다.[40]
4. 1. CPU
FFmpeg는 x86(IA-32 및 x86-64), PowerPC, ARM, DEC Alpha, SPARC, MIPS를 포함한 여러 명령어 집합을 지원한다.[35]4. 2. 특수 목적 하드웨어
다양한 주문형 반도체(ASIC)를 통해 호스트 CPU에서 오디오/비디오 압축 및 압축 해제 계산 작업을 부분적으로 또는 완전히 오프로드할 수 있다. 이러한 ASIC를 사용하려면 알고리즘의 전체 구현 대신 API만 필요하다.[36]
다음 API도 지원된다: DirectX 비디오 가속 (DXVA2, 윈도우(Windows)), Direct3D 11 (D3D11VA, 윈도우), Media Foundation (윈도우), Vulkan (VKVA), VideoToolbox (iOS, iPadOS, macOS), RockChip MPP, OpenCL, OpenMAX, MMAL (라즈베리 파이), MediaCodec (안드로이드 OS), V4L2 (리눅스). 환경에 따라, 이러한 API는 특정 ASIC, GPGPU 루틴 또는 SIMD CPU 코드로 이어질 수 있다.[40]
5. 지원 코덱 및 형식
FFmpeg는 다양한 이미지 형식, 오디오/비디오 코덱, 컨테이너 형식, 프로토콜 등을 지원한다.[24] 2011년 개발 체제 대립으로 ffmpeg.org와 libav.org로 분열되었으나,[98][99] 2015년 데비안과 우분투는 다시 FFmpeg를 채용했다.[100]
FFmpeg 프로젝트는 FFV1 (무손실 비디오 코덱), Snow 코덱 (무손실 및 손실 압축 지원), NUT (멀티미디어 컨테이너 형식)을 개발했다. Snow 코덱은 2011년부터 실험적인 상태이며, NUT는 유지보수만 되고 있다.[24]
2010년 여름, FFmpeg 개발자들은 ffvp8 디코더가 libvpx 디코더보다 빠르다고 발표했다.[25][26] FFmpeg는 0.6 버전부터 WebM과 VP8을 지원했고,[27] 2013년 10월에는 네이티브 VP9[28] 디코더와 OpenHEVC (HEVC 디코더)가 추가되었다.[29]
2016년, 네이티브 AAC 인코더가 안정화되어 VisualOn 및 FAAC의 두 외부 AAC 인코더에 대한 지원이 제거되었고, Fraunhofer FDK AAC 인코더는 빌드 지원을 유지했다.[30] FFmpeg 3.4 버전부터 FITS 이미지 형식을,[31] 4.1 버전부터 AV1을 MP4 및 Matroska (WebM 포함)에 멀티플렉싱할 수 있게 되었다.[32][33] 2022년 1월 17일, 큰 API 변경과 비권장 API 삭제가 이루어진 FFmpeg 5.0이 출시되었다.[101]
지원 코덱에 대한 자세한 내용은 libavcodec 라이브러리에서 확인할 수 있다.
5. 1. 이미지 형식
FFmpeg은 많은 일반적인 이미지 형식과 몇몇 특이한 이미지 형식을 지원한다.PGMYUV 이미지 형식은 바이너리(P5) PGM Netpbm 형식의 자체 제작 변형이다. FFmpeg은 또한 PGM 및 PPM 형식의 16비트 심도, 그리고 `pix_fmts`가 ''monob, gray, gray16be, rgb24, rgb48be, ya8, rgba, rgb64be''인 알파 채널 유무에 관계없이 8비트 또는 16비트 심도의 바이너리(P7) PAM 형식을 지원한다.
5. 2. 지원 형식
FFmpeg는 자체 개발한 FFV1, Snow 형식을 포함하여 다양한 형식을 지원한다.
5. 3. Muxer
FFmpeg는 출력 형식(컨테이너 형식 및 출력 스트림을 생성하는 기타 방법)을 "muxer"라고 부른다. FFmpeg가 지원하는 Muxer는 다음과 같다.[57][58][59][60][61][24][62][63][52]
5. 4. 픽셀 형식
FFmpeg는 다양한 픽셀 형식을 지원한다. 흑백, RGB, YUV, XYZ, 바이어 등 다양한 색상 공간 및 비트 심도를 다룬다.
FFmpeg는 IMC1-IMC4, AI44, CYMK, RGBE, 로그 RGB 등은 지원하지 않는다. 또한, 일반적으로 사용되지 않는 ARGB 1:5:5:5, 2:10:10:10, BMP 비트 필드 형식도 지원하지 않는다.
6. 지원 프로토콜
FFmpeg는 TCP, UDP, HTTP, RTP, RTSP, RealMedia RTSP/RDT, RTMP, librtmp를 경유하는 RTMPT, RTMPE, RTMPTE, RTMPS, SDP, 고퍼, MMS over TCP 등 다양한 프로토콜을 지원한다.
6. 1. 오픈 표준
6. 2. De facto 표준
7. 지원 필터
FFmpeg은 다양한 오디오 및 비디오 필터를 지원한다.[81]
FFmpeg에서 지원하는 필터에 대한 자세한 내용은 하위 섹션에서 확인할 수 있다.
7. 1. 오디오 필터
- 리샘플링 (aresample)
- 패스/스톱 필터
- * 로우패스 필터 (lowpass)
- * 하이패스 필터 (highpass)
- * 올패스 필터 (allpass)
- * 버터워스 밴드패스 필터 (bandpass)
- * 버터워스 밴드스톱 필터 (bandreject)
- 임의 유한 임펄스 응답 필터 (afir)
- 임의 무한 임펄스 응답 필터 (aiir)
- 이퀄라이저
- * 피크 이퀄라이저 (equalizer)
- * 버터워스/체비셰프 I형/II형 멀티밴드 이퀄라이저 (anequalizer)
- * 로우 셸빙 필터 (bass)
- * 하이 셸빙 필터 (treble)
- * Xbox 360 이퀄라이저
- * FIR 이퀄라이저 (firequalizer)
- * 바이어드 필터 (biquad)
- DC 오프셋 제거/추가 (dcshift)
- 표현식 평가
- * 시간 도메인 표현식 평가 (aeval)
- * 주파수 도메인 표현식 평가 (afftfilt)
- 다이내믹스
- * 리미터 (alimiter)
- * 컴프레서 (acompressor)
- * 다이내믹 레인지 익스팬더 (crystalizer)
- * 사이드체인 컴프레서 (sidechaincompress)
- * 컴팬더 (compand)
- * 노이즈 게이트 (agate)
- * 사이드체인 노이즈 게이트(sidechaingate)
- 디스토션
- * 비트크러셔 (acrusher)
- 엠퍼시스 (aemphasis)
- 증폭/노멀라이저
- * 볼륨 (volume)
- * 다이내믹 오디오 노멀라이저 (dynaudnorm)
- * EBU R 128 라우드니스 노멀라이저 (loudnorm)
- 변조
- * 사인파 진폭 변조 (tremolo)
- * 사인파 위상 변조 (vibrato)
- * 페이저 (aphaser)
- * 코러스 (chorus)
- * 플랜저 (flanger)
- * 펄세이터 (apulsator)
- 에코/리버브
- * 에코 (aecho)
- 라우팅/패닝
- * 스테레오 와이드닝 (stereowiden)
- * 채널 차이 증가 (extrastereo)
- * M/S to L/R (stereotools)
- * 채널 매핑 (channelmap)
- * 채널 분할 (channelsplit)
- * 채널 패닝 (pan)
- * 채널 병합 (amerge)
- * 채널 결합 (join)
- * 헤드폰용
- ** 스테레오 to 바이노럴 (earwax, SoX에서 포팅) [82]
- ** 바우어 스테레오 to 바이노럴 (bs2b, libbs2b 경유)
- ** 크로스피드 (crossfeed)
- ** 멀티채널 to 바이노럴 (sofalizer, libnetcdf 필요)
- 딜레이
- * 딜레이 (adelay)
- * 거리별 딜레이 (compensationdelay)
- 페이드
- * 페이더 (afade)
- * 크로스페이더 (acrossfade)
- 오디오 시간 늘이기 및 피치 스케일링
- * 시간 늘이기 (atempo)
- * 시간 늘이기 및 피치 시프팅 (rubberband, librubberband 경유)
- 편집
- * 트림 (atrim)
- * 무음 패딩 (apad)
- * 무음 제거 (silenceremove)
- 프레임/채널 정보 표시
- * 프레임 정보 표시 (ashowinfo)
- * 채널 정보 표시 (astats)
- * 무음 범위 표시 (silencedetect)
- * 오디오 볼륨 표시 (volumedetect)
- * 리플레이게인 스캐너 (replaygain)
- 프레임/채널 정보 수정
- * 출력 형식 설정 (aformat)
- * 샘플 수 설정 (asetnsamples)
- * 샘플링 레이트 설정 (asetrate)
- 믹서 (amix)
- 동기화 (asyncts)
- HDCD 데이터 디코더 (hdcd)
- 플러그인
- * LADSPA (ladspa)
- * LV2 (lv2)
- 아무것도 안 함 (anull)
7. 2. 비디오 필터
- 변환
- * 자르기 (crop, cropdetect)
- * 페이드 (fade)
- * 크기 조절 (scale)
- * 패딩 (pad)
- * 회전 (rotate)
- * 전치 (transpose)
- * 기타:
- ** 렌즈 보정 (lenscorrection)
- ** OpenCV 필터링 (ocv)
- ** 원근 보정 (perspective)
- 시간 편집
- * 프레임 속도 (fps, framerate)
- * 루핑 (loop)
- * 트리밍 (trim)
- 디인터레이싱 (bwdif, idet, kerndeint, nnedi, yadif, w3fdif)
- 역 텔레시네
- 필터링
- * 블러링 (boxblur, gblur, avgblur, sab, smartblur)
- * 컨볼루션 필터
- ** 컨볼루션 (convolution)
- ** 가장자리 감지 (edgedetect)
- ** 소벨 필터 (sobel)
- ** 프리윗 필터 (prewitt)
- ** 언샵 마스킹 (unsharp)
- 디노이징 (atadenoise, bitplanenoise, dctdnoiz, owdenoise, removegrain)
- 로고 제거 (delogo, removelogo)
- 자막 (ASS, subtitles)
- 알파 채널 편집 (alphaextract, alphamerge)
- 키잉 (chromakey, colorkey, lumakey)
- 프레임 감지
- * 블랙 프레임 감지 (blackdetect, blackframe)
- * 썸네일 선택 (thumbnail)
- 프레임 블렌딩 (blend, tblend, overlay)
- 비디오 안정화 (vidstabdetect, vidstabtransform)
- 색상 및 레벨 조정
- * 균형 및 레벨 (colorbalance, colorlevels)
- * 채널 믹싱 (colorchannelmixer)
- * 색 공간 (colorspace)
- * 파라메트릭 조정 (curves, eq)
- 히스토그램 및 시각화
- * CIE 스코프 (ciescope)
- * 벡터스코프 (vectorscope)
- * 파형 모니터 (waveform)
- * 색상 히스토그램 (histogram)
- 드로잉
- OCR
- 품질 측정
- * SSIM (ssim)
- * PSNR (psnr)
- 룩업 테이블
- * lut, lutrgb, lutyuv, lut2, lut3d, haldclut
8. 지원 미디어 및 인터페이스
FFmpeg은 외부 라이브러리를 통해 여러 장치를 지원한다.[83] 지원하는 장치는 다음과 같다.
{| class="wikitable"
|-
! 종류 !! 장치
|-
! 미디어
| 콤팩트 디스크 (libcdio를 통해; 입력만 지원)
|-
! 물리적 인터페이스
|
- IEEE 1394 (일명 FireWire, libdc1394 및 libraw1394 사용, 입력 전용)
- IEC 61883 (libiec61883 사용, 입력 전용)
- 덱스링크
- 브룩트리 비디오 캡처 칩 (bktr 드라이버 사용, 입력 전용)
|-
! 오디오 IO
|
|-
! 비디오 IO
|
|-
! 화면 캡처 및 출력
|
|}
8. 1. 미디어
콤팩트 디스크(libcdio를 통해; 입력만 지원)[83]8. 2. 물리적 인터페이스
FFmpeg은 외부 라이브러리를 통해 다음 장치들을 지원한다.[83]- IEEE 1394 (일명 FireWire, libdc1394 및 libraw1394 사용, 입력 전용)
- IEC 61883 (libiec61883 사용, 입력 전용)
- 덱스링크
- 브룩트리 비디오 캡처 칩 (bktr 드라이버 사용, 입력 전용)
8. 3. 오디오 IO
FFmpeg은 외부 라이브러리를 통해 다음 장치를 지원한다.[83]8. 4. 비디오 IO
FFmpeg은 외부 라이브러리를 통해 다음 장치들을 지원한다.[83]8. 5. 화면 캡처 및 출력
FFmpeg은 외부 라이브러리를 통해 다음 장치를 지원한다.[83]
9. 응용 분야
FFmpeg는 다양한 종류의 소프트웨어 및 하드웨어에서 널리 사용되고 있다.
FFmpeg를 사용하는 프로젝트는 다음과 같다.
FFmpeg에 포함된 라이브러리군은 Palm의 스마트폰 (Palm webOS[105])이나 소니의 블루레이 플레이어 (BDP-S1[106], BDP-S1E/BDP-S300/BDP-S280[107], BDP-S500/BDP-S2000ES[108]) 등의 장치에도 이용되고 있다.
9. 1. 법적 측면
FFmpeg은 100개 이상의 코덱[84]을 포함하며, 대부분은 압축 기술을 사용한다. 이러한 압축 기술 중 다수는 소프트웨어 특허와 관련된 법적 문제의 대상이 될 수 있다.[85] 이러한 문제는 소프트웨어 특허를 시행하는 미국과 같은 국가에서는 유효할 수 있지만, 유럽 연합 회원국에서는 무효하거나 시행할 수 없는 것으로 간주된다.[86] AC3 및 모든 MPEG-1 및 MPEG-2 코덱을 포함한 많은 구형 코덱에 대한 특허는 만료되었다.FFmpeg은 LGPL 라이선스 하에 라이선스가 부여되지만, FFmpeg의 특정 빌드가 GPL 라이브러리 (특히 x264)에 대해 링크된 경우 전체 바이너리는 GPL 하에 라이선스가 부여된다.
9. 2. FFmpeg 사용 프로젝트
FFmpeg는 다양한 종류의 소프트웨어 및 하드웨어에서 널리 사용된다.다음은 FFmpeg를 사용하는 프로젝트들이다.
- 인코더
- * MEncoder
- * HandBrake
- * MediaCoder
- * 휴대용 동영상 변환군
- * WinFF
- 코덱
- * ffdshow
- * GStreamer FFmpeg 플러그인
- * Perian
- * Bellagio OpenMAX IL - ST마이크로일렉트로닉스와 노키아가 개발한 오픈 소스 OpenMAX IL영어 구현
- * FFmpegInterop - 마이크로소프트가 개발한 MediaStreamSource 구현
- 3D 렌더링
- * Blender
- 멀티미디어 플레이어
- * MPlayer
- * VLC
- * Xine
- * Gnash - 오픈 소스 플래시 플레이어
- * swfdec - 오픈 소스 플래시 플레이어
- * Moonlight - 마이크로소프트가 지원하고 노벨이 개발하는 오픈 소스 Silverlight 대체 구현
- 음성 편집
- * Audacity (1.3.6 이후)
- * 라지록12 Windows판
- VoIP
- * Ekiga
- 사설 교환기 (PBX)
- * Asterisk
- 웹 브라우저
- * 구글 크롬[102] - HTML5의 video 태그에 사용. 또한 크롬을 기반으로 한 미디어 플레이어를 만들 계획이 있다.
- 래퍼
- * [https://code.google.com/archive/p/javacv JavaCV] - OpenCV의 Java 래퍼이지만 FFmpeg의 래퍼도 포함
FFmpeg에 포함된 라이브러리군은 Palm의 스마트폰 (Palm webOS[105])이나 소니의 블루레이 플레이어 (BDP-S1[106], BDP-S1E/BDP-S300/BDP-S280[107], BDP-S500/BDP-S2000ES[108]) 등의 장치에도 이용되고 있다.
참조
[1]
웹사이트
Bobby announces work on libavfilter as GsOC project
https://ffmpeg.org/p[...]
2008-02-09
[2]
웹사이트
Initial revision - git.videolan.org/ffmpeg.git/commit
http://git.videolan.[...]
git.videolan.org
2013-05-11
[3]
웹사이트
Developer Documentation
https://ffmpeg.org/d[...]
ffmpeg.org
2012-01-04
[4]
웹사이트
Platform Specific Information
https://ffmpeg.org/p[...]
2020-02-25
[5]
웹사이트
Download
https://ffmpeg.org/d[...]
FFmpeg
2012-01-04
[6]
문서
[7]
웹사이트
FFmpeg: Lavf: I/O and Muxing/Demuxing Library
https://www.ffmpeg.o[...]
2016-10-21
[8]
웹사이트
Libavfilter Documentation
https://ffmpeg.org/l[...]
2021-10-07
[9]
간행물
ijkplayer
https://github.com/b[...]
bilibili
2021-10-05
[10]
웹사이트
FFmpeg License and Legal Considerations
https://www.ffmpeg.o[...]
ffmpeg.org
2012-01-04
[11]
웹사이트
"[FFmpeg-devel] FFmpegs future and resigning as leader"
https://ffmpeg.org/p[...]
2015-07-31
[12]
웹사이트
FFmpeg naming and logo
https://ffmpeg.org/p[...]
FFmpeg website
2011-12-24
[13]
웹사이트
TIFF 6.0 specification
ftp://ftp.sgi.com/gr[...]
Aldus Corporation
2016-08-14
[14]
간행물
Libav project site
http://www.libav.org[...]
2012-01-04
[15]
간행물
Project renamed to Libav
http://article.gmane[...]
2012-01-04
[16]
간행물
A group of FFmpeg developers just forked as Libav
https://www.phoronix[...]
Phoronix
2012-01-04
[17]
간행물
What happened to FFmpeg
https://codecs.multi[...]
2012-05-19
[18]
간행물
FFMpeg turmoil
https://lwn.net/Arti[...]
2012-01-04
[19]
웹사이트
The FFmpeg/Libav situation
http://blog.pkh.me/p[...]
2015-09-22
[20]
웹사이트
FFmpeg and a thousand fixes
https://security.goo[...]
2016-10-21
[21]
웹사이트
ffserver – FFmpeg
https://trac.ffmpeg.[...]
2018-02-03
[22]
웹사이트
ffserver program being dropped
https://ffmpeg.org/i[...]
2018-02-03
[23]
웹사이트
ffmpeg.org/download.html#releases
https://ffmpeg.org/d[...]
ffmpeg.org
2015-04-27
[24]
웹사이트
NUT
http://wiki.multimed[...]
Multimedia Wiki
2014-01-03
[25]
간행물
Diary Of An x264 Developer: Announcing the world's fastest VP8 decoder
http://x264dev.multi[...]
2012-01-04
[26]
간행물
FFmpeg Announces High-Performance VP8 Decoder
https://news.slashdo[...]
Slashdot
2012-01-04
[27]
웹사이트
FFmpeg Goes WebM, Enabling VP8 for Boxee & Co
http://newteevee.com[...]
newteevee.com
2012-01-04
[28]
뉴스
Native VP9 decoder is now in the Git master branch
https://launchpad.ne[...]
2013-10-21
[29]
뉴스
FFmpeg Now Features Native HEVC/H.265 Decoder Support
https://linux.softpe[...]
Softpedia
2013-10-16
[30]
웹사이트
February 15th, 2016, FFmpeg 3.0 "Einstein"
https://ffmpeg.org/i[...]
2016-04-02
[31]
웹사이트
October 15th, 2017, FFmpeg 3.4 "Cantor"
https://ffmpeg.org/i[...]
2019-05-10
[32]
웹사이트
November 6th, 2018, FFmpeg 4.1 "al-Khwarizmi"
https://ffmpeg.org/i[...]
2019-05-10
[33]
웹사이트
Good News: AV1 Encoding Times Drop to Near-Reasonable Levels
https://www.streamin[...]
2019-05-10
[34]
문서
[35]
웹사이트
FFmpeg Automated Testing Environment
http://fate.multimed[...]
Fate.multimedia.cx
2012-01-04
[36]
웹사이트
FFmpeg Hardware Acceleration
https://trac.ffmpeg.[...]
ffmpeg.org Wiki
2016-11-12
[37]
웹사이트
Hardware/VAAPI – FFmpeg
https://trac.ffmpeg.[...]
2017-10-16
[38]
웹사이트
HEVC Video Encoder User Manual
https://developer.qu[...]
2021-02-23
[39]
웹사이트
FFmpeg Changelog
https://github.com/F[...]
2016-11-12
[40]
웹사이트
HWAccelIntro – FFmpeg
https://trac.ffmpeg.[...]
2016-11-12
[41]
웹사이트
FFmpeg Lands JPEG-XL Support
https://www.phoronix[...]
2022-04-26
[42]
웹사이트
git.ffmpeg.org Git - ffmpeg.git/commit
https://git.ffmpeg.o[...]
2018-04-23
[43]
뉴스
FFmpeg 3.0 Released, Supports VP9 VA-API Acceleration
https://www.phoronix[...]
Phoronix
2016-02-15
[44]
뉴스
FFmpeg 4.4 Released With AV1 VA-API Decoder, SVT-AV1 Encoding
https://www.phoronix[...]
Phoronix
2021-04-09
[45]
뉴스
FFmpeg 3.3 Brings Native Opus Encoder, Support For Spherical Videos
https://www.phoronix[...]
Phoronix
2017-04-17
[46]
뉴스
FFmpeg 5.0 Released For This Popular, Open-Source Multimedia Library
https://www.phoronix[...]
Phoronix
2022-01-14
[47]
뉴스
FFmpeg 2.2 Release Adds The Libx265 Encoder
https://www.phoronix[...]
Phoronix
2014-03-23
[48]
뉴스
FFmpeg 4.1 Brings AV1 Parser & Support For AV1 In MP4
https://www.phoronix[...]
Phoronix
2018-11-06
[49]
웹사이트
Changelog
http://svn.mplayerhq[...]
FFmpeg
2007-04-17
[50]
뉴스
FFmpeg 4.2 Released With AV1 Decoding Support, GIF Parser
https://www.phoronix[...]
Phoronix
2019-08-06
[51]
뉴스
FFmpeg 0.6 Released With H.264, VP8 Love
https://www.phoronix[...]
Phoronix
2010-06-16
[52]
웹사이트
FFmpeg development mailing list
https://archive.toda[...]
FFmpeg
2007-05-07
[53]
뉴스
FFmpeg 0.11 Has Blu-Ray Protocol, New Encoders
https://www.phoronix[...]
Phoronix
2012-05-26
[54]
뉴스
FFmpeg 5.1 Released With Many Improvements To This Important Multimedia Project
https://www.phoronix[...]
Phoronix
2022-07-22
[55]
뉴스
FFmpeg 2.5 Brings Animated PNG, WebP Decoding Support
https://www.phoronix[...]
Phoronix
2014-12-04
[56]
뉴스
FFmpeg 1.1 Brings New Support, Encoders/Decoders
https://www.phoronix[...]
Phoronix
2013-01-07
[57]
웹사이트
FFmpeg development mailing list
https://lists.mplaye[...]
FFmpeg website
2008-04-13
[58]
웹사이트
FFmpeg development mailing list
https://lists.mplaye[...]
FFmpeg website
2008-03-30
[59]
웹사이트
FFmpeg: MaxisXADemuxContext Struct Reference
https://ffmpeg.org/d[...]
FFmpeg website
2024-03-17
[60]
웹사이트
RELEASE NOTES for FFmpeg 2.5 "Bohr"
https://web.archive.[...]
VideoLAN
2014-12-05
[61]
웹사이트
FFmpeg development mailing list
https://web.archive.[...]
FFmpeg website
2008-03-18
[62]
웹사이트
FFmpeg development mailing list
https://web.archive.[...]
FFmpeg website
2008-06-08
[63]
웹사이트
FFmpeg development mailing list
https://web.archive.[...]
FFmpeg website
2008-03-21
[64]
문서
10-bit color components with 2-bit padding (X2RGB10)
[65]
문서
RGBx (rgb0) and xBGR (0bgr) are also supported
[66]
문서
used in YUV-centric codecs such like H.264
[67]
문서
YVU9, YV12, YV16, and YV24 are supported as rawvideo codec in FFmpeg.
[68]
문서
I420 a.k.a. YUV420P
[69]
문서
aka YUY2 in Windows
[70]
문서
UYVY 10bpc without a padding is supported as bitpacked codec in FFmpeg. UYVY 10bpc with 2-bits padding is supported as v210 codec in FFmpeg. 16bpc (Y216) is supported as targa_y216 codec in FFmpeg.
[71]
문서
I422 a.k.a. YUV422P
[72]
문서
XV30 a.k.a. XVYU2101010
[73]
문서
XV36
[74]
문서
VUYA a.k.a. AYUV
[75]
문서
10bpc (Y410), 12bpc (Y412), and Y416 (16bpc) are not supported.
[76]
문서
I444 a.k.a. YUV444P
[77]
문서
used in JPEG2000
[78]
웹사이트
Internet Drafts are not Open Standards
http://annevankester[...]
Self-published
2010-09-01
[79]
Webarchive
Real Time Streaming Protocol 2.0 (RTSP)
https://datatracker.[...]
2023-10-25
[80]
웹사이트
rtsp: Support tls-encapsulated RTSP - git.videolan.org Git - ffmpeg.git/commit
http://git.videolan.[...]
[81]
웹사이트
FFmpeg Filters
https://ffmpeg.org/f[...]
ffmpeg.org
2017-03-27
[82]
문서
How it works
https://web.archive.[...]
earwax.ca
[83]
웹사이트
FFmpeg Devices Documentation
https://ffmpeg.org/f[...]
ffmpeg.org
2021-10-25
[84]
웹사이트
Codecs list
https://ffmpeg.org/g[...]
ffmpeg.org
2012-01-01
[85]
웹사이트
Legal information on FFmpeg's website
https://ffmpeg.org/l[...]
ffmpeg.org
2012-01-04
[86]
웹사이트
The European Patent Convention
https://www.epo.org/[...]
European Patent Office
2021-11-24
[87]
웹사이트
VirtualDub2
https://sourceforge.[...]
2020-08-15
[88]
웹사이트
Google's YouTube Uses FFmpeg {{pipe}} Breaking Eggs And Making Omelettes
https://multimedia.c[...]
Multimedia.cx
2011-02-08
[89]
웹사이트
FFmpeg-based Projects
https://trac.ffmpeg.[...]
ffmpeg.org
2012-01-04
[90]
웹사이트
Firefox Enables FFmpeg Support By Default
https://www.phoronix[...]
Phoronix
2015-11-15
[91]
웹사이트
Multimedia Xpert
https://www.atlas-in[...]
Atlas Informatik
2022-05-26
[92]
간행물
The Mars 2020 Engineering Cameras and Microphone on the Perseverance Rover: A Next-Generation Imaging System for Mars Exploration
Springer Nature Switzerland AG.
[93]
웹사이트
Initial revision - git.videolan.org/ffmpeg.git/commit
https://git.videolan[...]
git.videolan.org
2000-12-20
[94]
웹사이트
Developer Documentation
https://ffmpeg.org/d[...]
ffmpeg.org
2011-12-08
[95]
웹사이트
Download
https://ffmpeg.org/d[...]
FFmpeg
2012-01-04
[96]
문서
オプションの外部ライブラリであるNVIDIA Performance Primitivesはプロプライエタリなソフトウェアであり、GPLの条件に基づいて配布することができないため
[97]
문서
A complete, cross-platform solution to record, convert and stream audio and video.> http://www.ffmpeg.org/
[98]
문서
transition: Libav 0.7
http://bugs.debian.o[...]
[99]
문서
Ubuntu Release Management: Transition: "libav"
http://people.canoni[...]
[100]
웹사이트
Why Debian returned to FFmpeg [LWN.net]
https://lwn.net/Arti[...]
2015-12-12
[101]
문서
FFmpeg 5.0 release
http://www.jbkempf.c[...]
[102]
문서
whatwg MPEG-1 subset proposal for HTML5 video codec
http://lists.whatwg.[...]
[103]
문서
Research White Paper - WHP 155
http://downloads.bbc[...]
[104]
문서
BBC R&D - Automated tapeless production - home page
http://www.bbc.co.uk[...]
[105]
문서
Open Source Packages
http://opensource.pa[...]
[106]
웹사이트
Model/Module : BDP-S1
http://www.sony.net/[...]
[107]
웹사이트
Model/Module : BDP-S1E/BDP-S300/BDP-S280
http://www.sony.net/[...]
[108]
웹사이트
Model/Module : BDP-S500/BDP-S2000ES
http://www.sony.net/[...]
[109]
웹인용
Initial revision - git.videolan.org/ffmpeg.git/commit
http://git.videolan.[...]
git.videolan.org
2000-12-20
[110]
웹사이트
FFmpeg Documentation
http://ffmpeg.org/ff[...]
[111]
웹인용
FFmpeg 이름과 로고
http://lists.mplayer[...]
Mplayer 웹사이트
2006-02-18
[112]
웹인용
FFmpeg License and Legal Considerations
https://www.ffmpeg.o[...]
ffmpeg.org
2012-01-04
[113]
웹인용
'[FFmpeg-devel] FFmpegs future and resigning as leader'
https://ffmpeg.org/p[...]
2015-09-22
[114]
웹인용
FFmpeg and a thousand fixes
https://security.goo[...]
2014-01-10
[115]
웹인용
ffserver – FFmpeg
https://trac.ffmpeg.[...]
2018-02-03
[116]
웹인용
ffserver program being dropped
https://ffmpeg.org/i[...]
2018-02-03
[117]
웹인용
ffmpeg.org/download.html#releases
https://ffmpeg.org/d[...]
ffmpeg.org
2015-04-27
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com
