ffmpeg.exe를 이용해 planar 포맷의 데이터를 packed 형식으로 변환하는 방법?
결론 먼저 말하면, 없습니다. (없는 것 같습니다. ^^)
지난 글에서 다룬 예제는,
ffmpeg.exe - 기존 동영상 컨테이너에 다중 스트림을 추가하는 방법
; https://www.sysnet.pe.kr/2/0/12947
ffprobe로 확인했을 때 "yuv420p", 즉 AVPixelFormat이 AV_PIX_FMT_YUV420P 형식의 데이터입니다.
//
// Summary:
// planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
AV_PIX_FMT_YUV420P = 0,
이것을 혹시 다른 형식으로 변환할 수 있을까요? ^^ 이를 위해서는 ffmpeg의 -pix_fmt 옵션을 이용하면 되는데 해당 옵션에 가능한 값은 대충 이렇습니다.
c:\temp> ffmpeg -pix_fmts
...[생략]...
Pixel formats:
I.... = Supported Input format for conversion
.O... = Supported Output format for conversion
..H.. = Hardware accelerated format
...P. = Paletted format
....B = Bitstream format
FLAGS NAME NB_COMPONENTS BITS_PER_PIXEL
-----
IO... yuv420p 3 12
IO... yuyv422 3 16
IO... rgb24 3 24
IO... bgr24 3 24
IO... yuv422p 3 16
IO... yuv444p 3 24
IO... yuv410p 3 9
IO... yuv411p 3 12
IO... gray 1 8
IO..B monow 1 1
IO..B monob 1 1
I..P. pal8 1 8
IO... yuvj420p 3 12
IO... yuvj422p 3 16
IO... yuvj444p 3 24
IO... uyvy422 3 16
..... uyyvyy411 3 12
IO... bgr8 3 8
.O..B bgr4 3 4
IO... bgr4_byte 3 4
IO... rgb8 3 8
.O..B rgb4 3 4
IO... rgb4_byte 3 4
IO... nv12 3 12
IO... nv21 3 12
IO... argb 4 32
IO... rgba 4 32
IO... abgr 4 32
IO... bgra 4 32
IO... gray16be 1 16
IO... gray16le 1 16
IO... yuv440p 3 16
IO... yuvj440p 3 16
IO... yuva420p 4 20
IO... rgb48be 3 48
IO... rgb48le 3 48
IO... rgb565be 3 16
IO... rgb565le 3 16
IO... rgb555be 3 15
IO... rgb555le 3 15
IO... bgr565be 3 16
IO... bgr565le 3 16
IO... bgr555be 3 15
IO... bgr555le 3 15
..H.. vaapi_moco 0 0
..H.. vaapi_idct 0 0
..H.. vaapi_vld 0 0
IO... yuv420p16le 3 24
IO... yuv420p16be 3 24
IO... yuv422p16le 3 32
IO... yuv422p16be 3 32
IO... yuv444p16le 3 48
IO... yuv444p16be 3 48
..H.. dxva2_vld 0 0
IO... rgb444le 3 12
IO... rgb444be 3 12
IO... bgr444le 3 12
IO... bgr444be 3 12
IO... ya8 2 16
IO... bgr48be 3 48
IO... bgr48le 3 48
IO... yuv420p9be 3 13
IO... yuv420p9le 3 13
IO... yuv420p10be 3 15
IO... yuv420p10le 3 15
IO... yuv422p10be 3 20
IO... yuv422p10le 3 20
IO... yuv444p9be 3 27
IO... yuv444p9le 3 27
IO... yuv444p10be 3 30
IO... yuv444p10le 3 30
IO... yuv422p9be 3 18
IO... yuv422p9le 3 18
IO... gbrp 3 24
IO... gbrp9be 3 27
IO... gbrp9le 3 27
IO... gbrp10be 3 30
IO... gbrp10le 3 30
IO... gbrp16be 3 48
IO... gbrp16le 3 48
IO... yuva422p 4 24
IO... yuva444p 4 32
IO... yuva420p9be 4 22
IO... yuva420p9le 4 22
IO... yuva422p9be 4 27
IO... yuva422p9le 4 27
IO... yuva444p9be 4 36
IO... yuva444p9le 4 36
IO... yuva420p10be 4 25
IO... yuva420p10le 4 25
IO... yuva422p10be 4 30
IO... yuva422p10le 4 30
IO... yuva444p10be 4 40
IO... yuva444p10le 4 40
IO... yuva420p16be 4 40
IO... yuva420p16le 4 40
IO... yuva422p16be 4 48
IO... yuva422p16le 4 48
IO... yuva444p16be 4 64
IO... yuva444p16le 4 64
..H.. vdpau 0 0
IO... xyz12le 3 36
IO... xyz12be 3 36
..... nv16 3 16
..... nv20le 3 20
..... nv20be 3 20
IO... rgba64be 4 64
IO... rgba64le 4 64
IO... bgra64be 4 64
IO... bgra64le 4 64
IO... yvyu422 3 16
IO... ya16be 2 32
IO... ya16le 2 32
IO... gbrap 4 32
IO... gbrap16be 4 64
IO... gbrap16le 4 64
..H.. qsv 0 0
..H.. mmal 0 0
..H.. d3d11va_vld 0 0
..H.. cuda 0 0
IO... 0rgb 3 24
IO... rgb0 3 24
IO... 0bgr 3 24
IO... bgr0 3 24
IO... yuv420p12be 3 18
IO... yuv420p12le 3 18
IO... yuv420p14be 3 21
IO... yuv420p14le 3 21
IO... yuv422p12be 3 24
IO... yuv422p12le 3 24
IO... yuv422p14be 3 28
IO... yuv422p14le 3 28
IO... yuv444p12be 3 36
IO... yuv444p12le 3 36
IO... yuv444p14be 3 42
IO... yuv444p14le 3 42
IO... gbrp12be 3 36
IO... gbrp12le 3 36
IO... gbrp14be 3 42
IO... gbrp14le 3 42
IO... yuvj411p 3 12
I.... bayer_bggr8 3 8
I.... bayer_rggb8 3 8
I.... bayer_gbrg8 3 8
I.... bayer_grbg8 3 8
I.... bayer_bggr16le 3 16
I.... bayer_bggr16be 3 16
I.... bayer_rggb16le 3 16
I.... bayer_rggb16be 3 16
I.... bayer_gbrg16le 3 16
I.... bayer_gbrg16be 3 16
I.... bayer_grbg16le 3 16
I.... bayer_grbg16be 3 16
..H.. xvmc 0 0
IO... yuv440p10le 3 20
IO... yuv440p10be 3 20
IO... yuv440p12le 3 24
IO... yuv440p12be 3 24
IO... ayuv64le 4 64
..... ayuv64be 4 64
..H.. videotoolbox_vld 0 0
IO... p010le 3 15
IO... p010be 3 15
IO... gbrap12be 4 48
IO... gbrap12le 4 48
IO... gbrap10be 4 40
IO... gbrap10le 4 40
..H.. mediacodec 0 0
IO... gray12be 1 12
IO... gray12le 1 12
IO... gray10be 1 10
IO... gray10le 1 10
IO... p016le 3 24
IO... p016be 3 24
..H.. d3d11 0 0
IO... gray9be 1 9
IO... gray9le 1 9
IO... gbrpf32be 3 96
IO... gbrpf32le 3 96
IO... gbrapf32be 4 128
IO... gbrapf32le 4 128
..H.. drm_prime 0 0
..H.. opencl 0 0
IO... gray14be 1 14
IO... gray14le 1 14
IO... grayf32be 1 32
IO... grayf32le 1 32
IO... yuva422p12be 4 36
IO... yuva422p12le 4 36
IO... yuva444p12be 4 48
IO... yuva444p12le 4 48
IO... nv24 3 24
IO... nv42 3 24
..H.. vulkan 0 0
..... y210be 3 20
I.... y210le 3 20
위의 목록 중에 packed 형식인 것으로 yuyv422 항목을 선택해,
//
// Summary:
// packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr
AV_PIX_FMT_YUYV422 = 1,
진행했더니,
D:\media_sample> ffmpeg -i output2.mp4 -pix_fmt yuyv422 output2_yuv422.mp4
ffmpeg version 4.3.2-2021-02-27-full_build-www.gyan.dev Copyright (c) 2000-2021 the FFmpeg developers
built with gcc 10.2.0 (Rev6, Built by MSYS2 project)
configuration: ...[생략]...
libpostproc 55. 7.100 / 55. 7.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'output2.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf58.45.100
Duration: 00:03:07.95, start: 0.000000, bitrate: 3553 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 3070 kb/s, 29.97 fps, 29.97 tbr, 16k tbn, 59.94 tbc (default)
Metadata:
handler_name : ISO Media file produced by Google Inc.
Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default)
Metadata:
handler_name : SoundHandler
Stream #0:2(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
Metadata:
handler_name : ISO Media file produced by Google Inc.
Stream #0:3(eng): Video: vp9 (Profile 0) (vp09 / 0x39307076), yuv420p(tv, bt709), 640x360, 212 kb/s, SAR 1:1 DAR 16:9, 29.97 fps, 29.97 tbr, 16k tbn, 16k tbc (default)
Metadata:
handler_name : VideoHandler
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
Stream #0:1 -> #0:1 (aac (native) -> aac (native))
Press [q] to stop, [?] for help
Incompatible pixel format 'yuyv422' for codec 'libx264', auto-selecting format 'yuv422p'
[libx264 @ 000001fc16124ac0] using SAR=1/1
[libx264 @ 000001fc16124ac0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 000001fc16124ac0] profile High 4:2:2, level 4.0, 4:2:2, 8-bit
[libx264 @ 000001fc16124ac0] 264 - core 161 r3048 b86ae3c - H.264/MPEG-4 AVC codec - Copyleft 2003-2021 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=34 lookahead_threads=5 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'output2_yuv422.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf58.45.100
Stream #0:0(und): Video: h264 (libx264) (avc1 / 0x31637661), yuv422p, 1920x1080 [SAR 1:1 DAR 16:9], q=-1--1, 29.97 fps, 30k tbn, 29.97 tbc (default)
Metadata:
handler_name : ISO Media file produced by Google Inc.
encoder : Lavc58.91.100 libx264
Side data:
cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default)
Metadata:
handler_name : SoundHandler
encoder : Lavc58.91.100 aac
frame= 5633 fps=170 q=-1.0 Lsize= 86606kB time=00:03:07.94 bitrate=3774.9kbits/s speed=5.67x
video:83453kB audio:2953kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.232302%
[libx264 @ 000001fc16124ac0] frame I:80 Avg QP:17.86 size: 37597
[libx264 @ 000001fc16124ac0] frame P:1820 Avg QP:20.95 size: 23077
[libx264 @ 000001fc16124ac0] frame B:3733 Avg QP:23.39 size: 10835
[libx264 @ 000001fc16124ac0] consecutive B-frames: 5.4% 15.4% 9.9% 69.3%
[libx264 @ 000001fc16124ac0] mb I I16..4: 40.2% 57.2% 2.6%
[libx264 @ 000001fc16124ac0] mb P I16..4: 15.8% 31.6% 0.7% P16..4: 24.1% 3.9% 1.4% 0.0% 0.0% skip:22.4%
[libx264 @ 000001fc16124ac0] mb B I16..4: 2.6% 4.1% 0.2% B16..8: 29.4% 2.4% 0.3% direct: 5.2% skip:55.8% L0:47.8% L1:49.3% BI: 2.8%
[libx264 @ 000001fc16124ac0] 8x8 transform intra:63.7% inter:91.3%
[libx264 @ 000001fc16124ac0] coded y,uvDC,uvAC intra: 22.5% 47.4% 1.7% inter: 6.0% 15.7% 0.0%
[libx264 @ 000001fc16124ac0] i16 v,h,dc,p: 39% 21% 11% 29%
[libx264 @ 000001fc16124ac0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 43% 13% 26% 2% 3% 6% 2% 4% 1%
[libx264 @ 000001fc16124ac0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 43% 7% 10% 3% 8% 17% 4% 7% 1%
[libx264 @ 000001fc16124ac0] i8c dc,h,v,p: 45% 16% 29% 11%
[libx264 @ 000001fc16124ac0] Weighted P-Frames: Y:8.0% UV:1.6%
[libx264 @ 000001fc16124ac0] ref P L0: 68.3% 7.8% 17.0% 6.4% 0.6%
[libx264 @ 000001fc16124ac0] ref B L0: 91.9% 6.7% 1.5%
[libx264 @ 000001fc16124ac0] ref B L1: 96.9% 3.1%
[libx264 @ 000001fc16124ac0] kb/s:3637.27
[aac @ 000001fc15c7d5c0] Qavg: 204.445
libx264 코덱이 yuyv422를 지원하지 않아 자동으로 yuv422p를 선택해 트랜스코딩 하고 있습니다. 실제로 ffprobe로 확인해 보면 "yuv422p"로 출력이 됩니다.
이후 다른 packed 형식의 uyvy422, uyyvyy411 옵션을 지정해도 마찬가지입니다. 결국 libx264 코덱에서는 packed 형식은 볼 일이 없는 것입니다.
그렇다면 코덱이 다른 것은 어떨까요? 혹시 예전 MPEG1 비디오라면 가능할까요?
ffmpeg.exe를 사용해 비디오 파일을 MPEG1 포맷으로 변경하는 방법
; https://www.sysnet.pe.kr/2/0/12923
그런데 ^^; 마찬가지의 결과가 나오는군요.
Incompatible pixel format 'yuyv422' for codec 'mpeg1video', auto-selecting format 'yuv420p'
검색해 보면, ffmpeg 명령어에서 인코더가 제공하는 pixel format을 확인하는 방법이 나옵니다. 아래는 mpeg1video 코덱에 대해 적용한 결과입니다.
D:\media_sample> ffmpeg -h encoder=mpeg1video
ffmpeg version 4.3.2-2021-02-27-full_build-www.gyan.dev Copyright (c) 2000-2021 the FFmpeg developers
built with gcc 10.2.0 (Rev6, Built by MSYS2 project)
configuration: ...[생략]...
Encoder mpeg1video [MPEG-1 video]:
General capabilities: delay threads
Threading capabilities: slice
Supported framerates: 24000/1001 24/1 25/1 30000/1001 30/1 50/1 60000/1001 60/1 15/1 5/1 10/1 12/1 15/1
Supported pixel formats: yuv420p
...[생략]...
반면 libx264의 경우에는 다음과 같이 제법 많습니다.
Supported pixel formats: yuv420p yuvj420p yuv422p yuvj422p yuv444p yuvj444p nv12 nv16 nv21 yuv420p10le yuv422p10le yuv444p10le nv20le gray gray10le
따라서 위의 목록에 따른 트랜스코딩은 가능하지만,
c:\temp> ffmpeg -i output2.mp4 -pix_fmt yuv444p output2_yuv444p.mp4
packed 형식으로의 변환은 가능하지 않습니다.
"ffmpeg -codecs" 명령어를 이용해 코덱 종류를 나열해 보면 이와 같은데,
D.VI.S 012v Uncompressed 4:2:2 10-bit
D.V.L. 4xm 4X Movie
D.VI.S 8bps QuickTime 8BPS video
.EVIL. a64_multi Multicolor charset for Commodore 64 (encoders: a64multi )
.EVIL. a64_multi5 Multicolor charset for Commodore 64, extended with 5th color (colram) (encoders: a64multi5 )
D.V..S aasc Autodesk RLE
D.V.L. agm Amuse Graphics Movie
D.VIL. aic Apple Intermediate Codec
DEVI.S alias_pix Alias/Wavefront PIX image
DEVIL. amv AMV Video
D.V.L. anm Deluxe Paint Animation
D.V.L. ansi ASCII/ANSI art
DEV..S apng APNG (Animated Portable Network Graphics) image
D.V.L. arbc Gryphon's Anim Compressor
DEVIL. asv1 ASUS V1
DEVIL. asv2 ASUS V2
D.VIL. aura Auravision AURA
D.VIL. aura2 Auravision Aura 2
DEV.L. av1 Alliance for Open Media AV1 (decoders: libdav1d libaom-av1 ) (encoders: libaom-av1 librav1e )
D.V... avrn Avid AVI Codec
DEVI.S avrp Avid 1:1 10-bit RGB Packer
D.V.L. avs AVS (Audio Video Standard) video
..V.L. avs2 AVS2-P2/IEEE1857.4
DEVI.S avui Avid Meridien Uncompressed
DEVI.S ayuv Uncompressed packed MS 4:4:4:4
D.V.L. bethsoftvid Bethesda VID video
D.V.L. bfi Brute Force & Ignorance
D.V.L. binkvideo Bink video
D.VI.. bintext Binary text
D.VI.S bitpacked Bitpacked
DEVI.S bmp BMP (Windows and OS/2 bitmap)
D.V..S bmv_video Discworld II BMV video
D.VI.S brender_pix BRender PIX image
D.V.L. c93 Interplay C93
D.V.L. cavs Chinese AVS (Audio Video Standard) (AVS1-P2, JiZhun profile)
D.V.L. cdgraphics CD Graphics video
D.V..S cdtoons CDToons video
D.VIL. cdxl Commodore CDXL video
D.V.L. cfhd Cineform HD
DEV.L. cinepak Cinepak
D.V.L. clearvideo Iterated Systems ClearVideo
DEVIL. cljr Cirrus Logic AccuPak
D.VI.S cllc Canopus Lossless Codec
D.V.L. cmv Electronic Arts CMV video (decoders: eacmv )
D.V... cpia CPiA video format
D.V..S cscd CamStudio (decoders: camstudio )
D.VIL. cyuv Creative YUV (CYUV)
..V.LS daala Daala
D.VILS dds DirectDraw Surface image decoder
D.V.L. dfa Chronomaster DFA
DEV.LS dirac Dirac (encoders: vc2 )
DEVIL. dnxhd VC3/DNxHD
DEVI.S dpx DPX (Digital Picture Exchange) image
D.V.L. dsicinvideo Delphine Software International CIN video
DEVIL. dvvideo DV (Digital Video)
D.V..S dxa Feeble Files/ScummVM DXA
D.VI.S dxtory Dxtory
D.VIL. dxv Resolume DXV
D.V.L. escape124 Escape 124
D.V.L. escape130 Escape 130
D.VILS exr OpenEXR image
DEV..S ffv1 FFmpeg video codec #1
DEVI.S ffvhuff Huffyuv FFmpeg variant
D.V.L. fic Mirillis FIC
DEVI.S fits FITS (Flexible Image Transport System)
DEV..S flashsv Flash Screen Video v1
DEV.L. flashsv2 Flash Screen Video v2
D.V..S flic Autodesk Animator Flic video
DEV.L. flv1 FLV / Sorenson Spark / Sorenson H.263 (Flash Video) (decoders: flv ) (encoders: flv )
D.V..S fmvc FM Screen Capture Codec
D.VI.S fraps Fraps
D.VI.S frwu Forward Uncompressed
D.V.L. g2m Go2Meeting
D.V.L. gdv Gremlin Digital Video
DEV..S gif CompuServe GIF (Graphics Interchange Format)
DEV.L. h261 H.261
DEV.L. h263 H.263 / H.263-1996, H.263+ / H.263-1998 / H.263 version 2
D.V.L. h263i Intel H.263
DEV.L. h263p H.263+ / H.263-1998 / H.263 version 2
DEV.LS h264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (decoders: h264 h264_qsv h264_cuvid ) (encoders: libx264 libx264rgb h264_amf h264_nvenc h264_qsv nvenc nvenc_h264 )
DEVIL. hap Vidvox Hap
DEV.L. hevc H.265 / HEVC (High Efficiency Video Coding) (decoders: hevc hevc_qsv hevc_cuvid ) (encoders: libx265 nvenc_hevc hevc_amf hevc_nvenc hevc_qsv )
D.V.L. hnm4video HNM 4 video
D.VIL. hq_hqa Canopus HQ/HQA
D.VIL. hqx Canopus HQX
DEVI.S huffyuv HuffYUV
D.VI.S hymt HuffYUV MT
D.V.L. idcin id Quake II CIN video (decoders: idcinvideo )
D.VI.. idf iCEDraw text
D.V.L. iff_ilbm IFF ACBM/ANIM/DEEP/ILBM/PBM/RGB8/RGBN (decoders: iff )
D.V.L. imm4 Infinity IMM4
D.V.L. imm5 Infinity IMM5
D.V.L. indeo2 Intel Indeo 2
D.V.L. indeo3 Intel Indeo 3
D.V.L. indeo4 Intel Indeo Video Interactive 4
D.V.L. indeo5 Intel Indeo Video Interactive 5
D.V.L. interplayvideo Interplay MVE video
DEVILS jpeg2000 JPEG 2000 (decoders: jpeg2000 libopenjpeg ) (encoders: jpeg2000 libopenjpeg )
DEVILS jpegls JPEG-LS
D.VIL. jv Bitmap Brothers JV video
D.V.L. kgv1 Kega Game Video
D.V.L. kmvc Karl Morton's video codec
D.VI.S lagarith Lagarith lossless
.EVI.S ljpeg Lossless JPEG
D.VI.S loco LOCO
D.V.L. lscr LEAD Screen Capture
D.VI.S m101 Matrox Uncompressed SD
D.V.L. mad Electronic Arts Madcow Video (decoders: eamad )
DEVI.S magicyuv MagicYUV video
D.VIL. mdec Sony PlayStation MDEC (Motion DECoder)
D.V.L. mimic Mimic
DEVIL. mjpeg Motion JPEG (decoders: mjpeg mjpeg_cuvid mjpeg_qsv ) (encoders: mjpeg mjpeg_qsv )
D.VIL. mjpegb Apple MJPEG-B
D.V.L. mmvideo American Laser Games MM Video
D.V.L. motionpixels Motion Pixels video
DEV.L. mpeg1video MPEG-1 video (decoders: mpeg1video mpeg1_cuvid )
DEV.L. mpeg2video MPEG-2 video (decoders: mpeg2video mpegvideo mpeg2_qsv mpeg2_cuvid ) (encoders: mpeg2video mpeg2_qsv )
DEV.L. mpeg4 MPEG-4 part 2 (decoders: mpeg4 mpeg4_cuvid ) (encoders: mpeg4 libxvid )
D.V.L. msa1 MS ATC Screen
D.VI.S mscc Mandsoft Screen Capture Codec
D.V.L. msmpeg4v1 MPEG-4 part 2 Microsoft variant version 1
DEV.L. msmpeg4v2 MPEG-4 part 2 Microsoft variant version 2
DEV.L. msmpeg4v3 MPEG-4 part 2 Microsoft variant version 3 (decoders: msmpeg4 ) (encoders: msmpeg4 )
D.V..S msrle Microsoft RLE
D.V.L. mss1 MS Screen 1
D.VIL. mss2 MS Windows Media Video V9 Screen
DEV.L. msvideo1 Microsoft Video 1
D.VI.S mszh LCL (LossLess Codec Library) MSZH
D.V.L. mts2 MS Expression Encoder Screen
D.V.L. mv30 MidiVid 3.0
D.VIL. mvc1 Silicon Graphics Motion Video Compressor 1
D.VIL. mvc2 Silicon Graphics Motion Video Compressor 2
D.V.L. mvdv MidiVid VQ
D.VIL. mvha MidiVid Archive Codec
D.V..S mwsc MatchWare Screen Capture Codec
D.V.L. mxpeg Mobotix MxPEG video
D.VIL. notchlc NotchLC
D.V.L. nuv NuppelVideo/RTJPEG
D.V.L. paf_video Amazing Studio Packed Animation File Video
DEVI.S pam PAM (Portable AnyMap) image
DEVI.S pbm PBM (Portable BitMap) image
DEVI.S pcx PC Paintbrush PCX image
D.VI.S pfm PFM (Portable FloatMap) image
DEVI.S pgm PGM (Portable GrayMap) image
DEVI.S pgmyuv PGMYUV (Portable GrayMap YUV) image
D.VIL. pictor Pictor/PC Paint
D.VIL. pixlet Apple Pixlet
DEV..S png PNG (Portable Network Graphics) image
DEVI.S ppm PPM (Portable PixelMap) image
DEVIL. prores Apple ProRes (iCodec Pro) (encoders: prores prores_aw prores_ks )
D.VIL. prosumer Brooktree ProSumer Video
D.VI.S psd Photoshop PSD file
D.VIL. ptx V.Flash PTX image
D.VI.S qdraw Apple QuickDraw
D.V.L. qpeg Q-team QPEG
DEV..S qtrle QuickTime Animation (RLE) video
DEVI.S r10k AJA Kona 10-bit RGB Codec
DEVI.S r210 Uncompressed RGB 10-bit
D.V.L. rasc RemotelyAnywhere Screen Capture
DEVI.S rawvideo raw video
D.VIL. rl2 RL2 video
DEV.L. roq id RoQ video (decoders: roqvideo ) (encoders: roqvideo )
D.V.L. rpza QuickTime video (RPZA)
D.V..S rscc innoHeim/Rsupport Screen Capture Codec
DEV.L. rv10 RealVideo 1.0
DEV.L. rv20 RealVideo 2.0
D.V.L. rv30 RealVideo 3.0
D.V.L. rv40 RealVideo 4.0
D.V.L. sanm LucasArts SANM/SMUSH video
D.V.LS scpr ScreenPressor
D.V..S screenpresso Screenpresso
DEVI.S sgi SGI image
D.VI.S sgirle SGI RLE 8-bit
D.VI.S sheervideo BitJazz SheerVideo
D.V.L. smackvideo Smacker video (decoders: smackvid )
D.V.L. smc QuickTime Graphics (SMC)
D.V... smvjpeg Sigmatel Motion Video
DEV.LS snow Snow
D.VIL. sp5x Sunplus JPEG (SP5X)
D.VIL. speedhq NewTek SpeedHQ
D.VI.S srgc Screen Recorder Gold Codec
DEVI.S sunrast Sun Rasterfile image
..V..S svg Scalable Vector Graphics
DEV.L. svq1 Sorenson Vector Quantizer 1 / Sorenson Video 1 / SVQ1
D.V.L. svq3 Sorenson Vector Quantizer 3 / Sorenson Video 3 / SVQ3
DEVI.S targa Truevision Targa image
D.VI.S targa_y216 Pinnacle TARGA CineWave YUV16
D.V.L. tdsc TDSC
D.V.L. tgq Electronic Arts TGQ video (decoders: eatgq )
D.V.L. tgv Electronic Arts TGV video (decoders: eatgv )
DEV.L. theora Theora (encoders: libtheora )
D.VIL. thp Nintendo Gamecube THP video
D.V.L. tiertexseqvideo Tiertex Limited SEQ video
DEVI.S tiff TIFF image
D.VIL. tmv 8088flex TMV
D.V.L. tqi Electronic Arts TQI video (decoders: eatqi )
D.V.L. truemotion1 Duck TrueMotion 1.0
D.V.L. truemotion2 Duck TrueMotion 2.0
D.VIL. truemotion2rt Duck TrueMotion 2.0 Real Time
D.V..S tscc TechSmith Screen Capture Codec (decoders: camtasia )
D.V.L. tscc2 TechSmith Screen Codec 2
D.VIL. txd Renderware TXD (TeXture Dictionary) image
D.V.L. ulti IBM UltiMotion (decoders: ultimotion )
DEVI.S utvideo Ut Video
DEVI.S v210 Uncompressed 4:2:2 10-bit
D.VI.S v210x Uncompressed 4:2:2 10-bit
DEVI.S v308 Uncompressed packed 4:4:4
DEVI.S v408 Uncompressed packed QT 4:4:4:4
DEVI.S v410 Uncompressed 4:4:4 10-bit
D.V.L. vb Beam Software VB
D.VI.S vble VBLE Lossless Codec
D.V.L. vc1 SMPTE VC-1 (decoders: vc1 vc1_qsv vc1_cuvid )
D.V.L. vc1image Windows Media Video 9 Image v2
D.VIL. vcr1 ATI VCR1
D.VIL. vixl Miro VideoXL (decoders: xl )
D.V.L. vmdvideo Sierra VMD video
D.V..S vmnc VMware Screen Codec / VMware Video
D.V.L. vp3 On2 VP3
D.V.L. vp4 On2 VP4
D.V.L. vp5 On2 VP5
D.V.L. vp6 On2 VP6
D.V.L. vp6a On2 VP6 (Flash version, with alpha channel)
D.V.L. vp6f On2 VP6 (Flash version)
D.V.L. vp7 On2 VP7
DEV.L. vp8 On2 VP8 (decoders: vp8 libvpx vp8_cuvid vp8_qsv ) (encoders: libvpx )
DEV.L. vp9 Google VP9 (decoders: vp9 libvpx-vp9 vp9_cuvid vp9_qsv ) (encoders: libvpx-vp9 vp9_qsv )
D.V..S wcmv WinCAM Motion Video
DEVILS webp WebP (encoders: libwebp_anim libwebp )
DEV.L. wmv1 Windows Media Video 7
DEV.L. wmv2 Windows Media Video 8
D.V.L. wmv3 Windows Media Video 9
D.V.L. wmv3image Windows Media Video 9 Image
D.VIL. wnv1 Winnov WNV1
DEV..S wrapped_avframe AVFrame to AVPacket passthrough
D.V.L. ws_vqa Westwood Studios VQA (Vector Quantized Animation) video (decoders: vqavideo )
D.V.L. xan_wc3 Wing Commander III / Xan
D.V.L. xan_wc4 Wing Commander IV / Xxan
D.VI.. xbin eXtended BINary text
DEVI.S xbm XBM (X BitMap) image
DEVIL. xface X-face image
D.VI.S xpm XPM (X PixMap) image
DEVI.S xwd XWD (X Window Dump) image
DEVI.S y41p Uncompressed YUV 4:1:1 12-bit
D.VI.S ylc YUY2 Lossless Codec
D.V.L. yop Psygnosis YOP Video
DEVI.S yuv4 Uncompressed packed 4:2:0
D.V..S zerocodec ZeroCodec Lossless Video
DEVI.S zlib LCL (LossLess Codec Library) ZLIB
DEV..S zmbv Zip Motion Blocks Video
..AIL. 4gv 4GV (Fourth Generation Vocoder)
D.AIL. 8svx_exp 8SVX exponential
D.AIL. 8svx_fib 8SVX fibonacci
DEAIL. aac AAC (Advanced Audio Coding) (decoders: aac aac_fixed )
D.AIL. aac_latm AAC LATM (Advanced Audio Coding LATM syntax)
DEAIL. ac3 ATSC A/52A (AC-3) (decoders: ac3 ac3_fixed ) (encoders: ac3 ac3_fixed )
D.AIL. acelp.kelvin Sipro ACELP.KELVIN
D.AIL. adpcm_4xm ADPCM 4X Movie
DEAIL. adpcm_adx SEGA CRI ADX ADPCM
D.AIL. adpcm_afc ADPCM Nintendo Gamecube AFC
D.AIL. adpcm_agm ADPCM AmuseGraphics Movie AGM
D.AIL. adpcm_aica ADPCM Yamaha AICA
D.AIL. adpcm_argo ADPCM Argonaut Games
D.AIL. adpcm_ct ADPCM Creative Technology
D.AIL. adpcm_dtk ADPCM Nintendo Gamecube DTK
D.AIL. adpcm_ea ADPCM Electronic Arts
D.AIL. adpcm_ea_maxis_xa ADPCM Electronic Arts Maxis CDROM XA
D.AIL. adpcm_ea_r1 ADPCM Electronic Arts R1
D.AIL. adpcm_ea_r2 ADPCM Electronic Arts R2
D.AIL. adpcm_ea_r3 ADPCM Electronic Arts R3
D.AIL. adpcm_ea_xas ADPCM Electronic Arts XAS
DEAIL. adpcm_g722 G.722 ADPCM (decoders: g722 ) (encoders: g722 )
DEAIL. adpcm_g726 G.726 ADPCM (decoders: g726 ) (encoders: g726 )
DEAIL. adpcm_g726le G.726 ADPCM little-endian (decoders: g726le ) (encoders: g726le )
D.AIL. adpcm_ima_alp ADPCM IMA High Voltage Software ALP
D.AIL. adpcm_ima_amv ADPCM IMA AMV
D.AIL. adpcm_ima_apc ADPCM IMA CRYO APC
D.AIL. adpcm_ima_apm ADPCM IMA Ubisoft APM
D.AIL. adpcm_ima_cunning ADPCM IMA Cunning Developments
D.AIL. adpcm_ima_dat4 ADPCM IMA Eurocom DAT4
D.AIL. adpcm_ima_dk3 ADPCM IMA Duck DK3
D.AIL. adpcm_ima_dk4 ADPCM IMA Duck DK4
D.AIL. adpcm_ima_ea_eacs ADPCM IMA Electronic Arts EACS
D.AIL. adpcm_ima_ea_sead ADPCM IMA Electronic Arts SEAD
D.AIL. adpcm_ima_iss ADPCM IMA Funcom ISS
D.AIL. adpcm_ima_mtf ADPCM IMA Capcom's MT Framework
D.AIL. adpcm_ima_oki ADPCM IMA Dialogic OKI
DEAIL. adpcm_ima_qt ADPCM IMA QuickTime
D.AIL. adpcm_ima_rad ADPCM IMA Radical
D.AIL. adpcm_ima_smjpeg ADPCM IMA Loki SDL MJPEG
DEAIL. adpcm_ima_ssi ADPCM IMA Simon & Schuster Interactive
DEAIL. adpcm_ima_wav ADPCM IMA WAV
D.AIL. adpcm_ima_ws ADPCM IMA Westwood
DEAIL. adpcm_ms ADPCM Microsoft
D.AIL. adpcm_mtaf ADPCM MTAF
D.AIL. adpcm_psx ADPCM Playstation
D.AIL. adpcm_sbpro_2 ADPCM Sound Blaster Pro 2-bit
D.AIL. adpcm_sbpro_3 ADPCM Sound Blaster Pro 2.6-bit
D.AIL. adpcm_sbpro_4 ADPCM Sound Blaster Pro 4-bit
DEAIL. adpcm_swf ADPCM Shockwave Flash
D.AIL. adpcm_thp ADPCM Nintendo THP
D.AIL. adpcm_thp_le ADPCM Nintendo THP (Little-Endian)
D.AIL. adpcm_vima LucasArts VIMA audio
D.AIL. adpcm_xa ADPCM CDROM XA
DEAIL. adpcm_yamaha ADPCM Yamaha
D.AIL. adpcm_zork ADPCM Zork
DEAI.S alac ALAC (Apple Lossless Audio Codec)
DEAIL. amr_nb AMR-NB (Adaptive Multi-Rate NarrowBand) (decoders: amrnb libopencore_amrnb ) (encoders: libopencore_amrnb )
DEAIL. amr_wb AMR-WB (Adaptive Multi-Rate WideBand) (decoders: amrwb libopencore_amrwb ) (encoders: libvo_amrwbenc )
D.AI.S ape Monkey's Audio
DEAIL. aptx aptX (Audio Processing Technology for Bluetooth)
DEAIL. aptx_hd aptX HD (Audio Processing Technology for Bluetooth)
D.AIL. atrac1 ATRAC1 (Adaptive TRansform Acoustic Coding)
D.AIL. atrac3 ATRAC3 (Adaptive TRansform Acoustic Coding 3)
D.AI.S atrac3al ATRAC3 AL (Adaptive TRansform Acoustic Coding 3 Advanced Lossless)
D.AIL. atrac3p ATRAC3+ (Adaptive TRansform Acoustic Coding 3+) (decoders: atrac3plus )
D.AI.S atrac3pal ATRAC3+ AL (Adaptive TRansform Acoustic Coding 3+ Advanced Lossless) (decoders: atrac3plusal )
D.AIL. atrac9 ATRAC9 (Adaptive TRansform Acoustic Coding 9)
D.AIL. avc On2 Audio for Video Codec (decoders: on2avc )
D.AIL. binkaudio_dct Bink Audio (DCT)
D.AIL. binkaudio_rdft Bink Audio (RDFT)
D.AIL. bmv_audio Discworld II BMV audio
..AIL. celt Constrained Energy Lapped Transform (CELT)
..AIL. codec2 codec2 (very low bitrate speech codec)
DEAIL. comfortnoise RFC 3389 Comfort Noise
D.AIL. cook Cook / Cooker / Gecko (RealAudio G2)
D.AIL. derf_dpcm DPCM Xilam DERF
D.AIL. dolby_e Dolby E
D.AIL. dsd_lsbf DSD (Direct Stream Digital), least significant bit first
D.AIL. dsd_lsbf_planar DSD (Direct Stream Digital), least significant bit first, planar
D.AIL. dsd_msbf DSD (Direct Stream Digital), most significant bit first
D.AIL. dsd_msbf_planar DSD (Direct Stream Digital), most significant bit first, planar
D.AIL. dsicinaudio Delphine Software International CIN audio
D.AIL. dss_sp Digital Speech Standard - Standard Play mode (DSS SP)
D.AI.S dst DST (Direct Stream Transfer)
DEAILS dts DCA (DTS Coherent Acoustics) (decoders: dca ) (encoders: dca )
D.AIL. dvaudio DV audio
DEAIL. eac3 ATSC A/52B (AC-3, E-AC-3)
D.AIL. evrc EVRC (Enhanced Variable Rate Codec)
DEAI.S flac FLAC (Free Lossless Audio Codec)
DEAIL. g723_1 G.723.1
D.AIL. g729 G.729
D.AIL. gremlin_dpcm DPCM Gremlin
DEAIL. gsm GSM (decoders: gsm libgsm ) (encoders: libgsm )
DEAIL. gsm_ms GSM Microsoft variant (decoders: gsm_ms libgsm_ms ) (encoders: libgsm_ms )
D.AIL. hca CRI HCA
D.AIL. hcom HCOM Audio
D.AIL. iac IAC (Indeo Audio Coder)
DEAIL. ilbc iLBC (Internet Low Bitrate Codec) (decoders: ilbc libilbc ) (encoders: libilbc )
D.AIL. imc IMC (Intel Music Coder)
D.AIL. interplay_dpcm DPCM Interplay
D.AIL. interplayacm Interplay ACM
D.AIL. mace3 MACE (Macintosh Audio Compression/Expansion) 3:1
D.AIL. mace6 MACE (Macintosh Audio Compression/Expansion) 6:1
D.AIL. metasound Voxware MetaSound
DEAI.S mlp MLP (Meridian Lossless Packing)
D.AIL. mp1 MP1 (MPEG audio layer 1) (decoders: mp1 mp1float )
DEAIL. mp2 MP2 (MPEG audio layer 2) (decoders: mp2 mp2float ) (encoders: mp2 mp2fixed libtwolame )
DEAIL. mp3 MP3 (MPEG audio layer 3) (decoders: mp3float mp3 ) (encoders: libmp3lame libshine )
D.AIL. mp3adu ADU (Application Data Unit) MP3 (MPEG audio layer 3) (decoders: mp3adufloat mp3adu )
D.AIL. mp3on4 MP3onMP4 (decoders: mp3on4float mp3on4 )
D.AI.S mp4als MPEG-4 Audio Lossless Coding (ALS) (decoders: als )
..A.L. mpegh_3d_audio MPEG-H 3D Audio
D.AIL. musepack7 Musepack SV7 (decoders: mpc7 )
D.AIL. musepack8 Musepack SV8 (decoders: mpc8 )
DEAIL. nellymoser Nellymoser Asao
DEAIL. opus Opus (Opus Interactive Audio Codec) (decoders: opus libopus ) (encoders: opus libopus )
D.AIL. paf_audio Amazing Studio Packed Animation File Audio
DEAIL. pcm_alaw PCM A-law / G.711 A-law
D.AI.S pcm_bluray PCM signed 16|20|24-bit big-endian for Blu-ray media
DEAI.S pcm_dvd PCM signed 20|24-bit big-endian
D.AI.S pcm_f16le PCM 16.8 floating point little-endian
D.AI.S pcm_f24le PCM 24.0 floating point little-endian
DEAI.S pcm_f32be PCM 32-bit floating point big-endian
DEAI.S pcm_f32le PCM 32-bit floating point little-endian
DEAI.S pcm_f64be PCM 64-bit floating point big-endian
DEAI.S pcm_f64le PCM 64-bit floating point little-endian
D.AI.S pcm_lxf PCM signed 20-bit little-endian planar
DEAIL. pcm_mulaw PCM mu-law / G.711 mu-law
DEAI.S pcm_s16be PCM signed 16-bit big-endian
DEAI.S pcm_s16be_planar PCM signed 16-bit big-endian planar
DEAI.S pcm_s16le PCM signed 16-bit little-endian
DEAI.S pcm_s16le_planar PCM signed 16-bit little-endian planar
DEAI.S pcm_s24be PCM signed 24-bit big-endian
DEAI.S pcm_s24daud PCM D-Cinema audio signed 24-bit
DEAI.S pcm_s24le PCM signed 24-bit little-endian
DEAI.S pcm_s24le_planar PCM signed 24-bit little-endian planar
DEAI.S pcm_s32be PCM signed 32-bit big-endian
DEAI.S pcm_s32le PCM signed 32-bit little-endian
DEAI.S pcm_s32le_planar PCM signed 32-bit little-endian planar
DEAI.S pcm_s64be PCM signed 64-bit big-endian
DEAI.S pcm_s64le PCM signed 64-bit little-endian
DEAI.S pcm_s8 PCM signed 8-bit
DEAI.S pcm_s8_planar PCM signed 8-bit planar
DEAI.S pcm_u16be PCM unsigned 16-bit big-endian
DEAI.S pcm_u16le PCM unsigned 16-bit little-endian
DEAI.S pcm_u24be PCM unsigned 24-bit big-endian
DEAI.S pcm_u24le PCM unsigned 24-bit little-endian
DEAI.S pcm_u32be PCM unsigned 32-bit big-endian
DEAI.S pcm_u32le PCM unsigned 32-bit little-endian
DEAI.S pcm_u8 PCM unsigned 8-bit
DEAIL. pcm_vidc PCM Archimedes VIDC
D.AIL. qcelp QCELP / PureVoice
D.AIL. qdm2 QDesign Music Codec 2
D.AIL. qdmc QDesign Music
DEAIL. ra_144 RealAudio 1.0 (14.4K) (decoders: real_144 ) (encoders: real_144 )
D.AIL. ra_288 RealAudio 2.0 (28.8K) (decoders: real_288 )
D.AI.S ralf RealAudio Lossless
DEAIL. roq_dpcm DPCM id RoQ
DEAI.S s302m SMPTE 302M
DEAIL. sbc SBC (low-complexity subband codec)
D.AIL. sdx2_dpcm DPCM Squareroot-Delta-Exact
D.AI.S shorten Shorten
D.AIL. sipr RealAudio SIPR / ACELP.NET
D.AIL. siren Siren
D.AIL. smackaudio Smacker audio (decoders: smackaud )
..AIL. smv SMV (Selectable Mode Vocoder)
D.AIL. sol_dpcm DPCM Sol
DEAI.. sonic Sonic
.EAI.. sonicls Sonic lossless
DEAIL. speex Speex (decoders: libspeex ) (encoders: libspeex )
D.AI.S tak TAK (Tom's lossless Audio Kompressor)
DEA..S truehd TrueHD
D.AIL. truespeech DSP Group TrueSpeech
DEAI.S tta TTA (True Audio)
D.AIL. twinvq VQF TwinVQ
D.AIL. vmdaudio Sierra VMD audio
DEAIL. vorbis Vorbis (decoders: vorbis libvorbis ) (encoders: vorbis libvorbis )
D.AI.. wavesynth Wave synthesis pseudo-codec
DEAILS wavpack WavPack
D.AIL. westwood_snd1 Westwood Audio (SND1) (decoders: ws_snd1 )
D.AI.S wmalossless Windows Media Audio Lossless
D.AIL. wmapro Windows Media Audio 9 Professional
DEAIL. wmav1 Windows Media Audio 1
DEAIL. wmav2 Windows Media Audio 2
D.AIL. wmavoice Windows Media Audio Voice
D.AIL. xan_dpcm DPCM Xan
D.AIL. xma1 Xbox Media Audio 1
D.AIL. xma2 Xbox Media Audio 2
..D... bin_data binary data
..D... dvd_nav_packet DVD Nav packet
..D... epg Electronic Program Guide
..D... klv SMPTE 336M Key-Length-Value (KLV) metadata
..D... otf OpenType font
..D... scte_35 SCTE 35 Message Queue
..D... timed_id3 timed ID3 metadata
..D... ttf TrueType font
..S... arib_caption ARIB STD-B24 caption
DES... ass ASS (Advanced SSA) subtitle (decoders: ssa ass ) (encoders: ssa ass )
DES... dvb_subtitle DVB subtitles (decoders: dvbsub ) (encoders: dvbsub )
D.S... dvb_teletext DVB teletext (decoders: libzvbi_teletextdec )
DES... dvd_subtitle DVD subtitles (decoders: dvdsub ) (encoders: dvdsub )
D.S... eia_608 EIA-608 closed captions (decoders: cc_dec )
D.S... hdmv_pgs_subtitle HDMV Presentation Graphic Stream subtitles (decoders: pgssub )
..S... hdmv_text_subtitle HDMV Text subtitle
D.S... jacosub JACOsub subtitle
D.S... microdvd MicroDVD subtitle
DES... mov_text MOV text
D.S... mpl2 MPL2 subtitle
D.S... pjs PJS (Phoenix Japanimation Society) subtitle
D.S... realtext RealText subtitle
D.S... sami SAMI subtitle
..S... srt SubRip subtitle with embedded timing
..S... ssa SSA (SubStation Alpha) subtitle
D.S... stl Spruce subtitle format
DES... subrip SubRip subtitle (decoders: srt subrip ) (encoders: srt subrip )
D.S... subviewer SubViewer subtitle
D.S... subviewer1 SubViewer v1 subtitle
DES... text raw UTF-8 text
..S... ttml Timed Text Markup Language
D.S... vplayer VPlayer subtitle
DES... webvtt WebVTT subtitle
DES... xsub XSUB
대충 유명한 비디오 코덱에 대해 확인을 해봐도 packed 형식의 YUV 포맷은 지원하고 있지 않습니다. 그렇다면 AV_PIX_FMT_YUYV422 같은 포맷은 언제 유용한 것일까요? ^^;
[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]