mirror of
https://github.com/mpv-player/mpv
synced 2025-03-21 10:51:51 +00:00
Merge branch '10bit'
This commit is contained in:
commit
fd01bee8f7
@ -180,8 +180,13 @@ static const struct {
|
||||
{"420P16LE", IMGFMT_420P16_LE},
|
||||
{"420P16BE", IMGFMT_420P16_BE},
|
||||
{"444P16", IMGFMT_444P16},
|
||||
{"444P10", IMGFMT_444P10},
|
||||
{"444P9", IMGFMT_444P9},
|
||||
{"422P16", IMGFMT_422P16},
|
||||
{"422P10", IMGFMT_422P10},
|
||||
{"420P16", IMGFMT_420P16},
|
||||
{"420P10", IMGFMT_420P10},
|
||||
{"420P9", IMGFMT_420P9},
|
||||
{"420A", IMGFMT_420A},
|
||||
{"444P", IMGFMT_444P},
|
||||
{"422P", IMGFMT_422P},
|
||||
|
154
etc/codecs.conf
154
etc/codecs.conf
@ -15,7 +15,6 @@ videocodec ffanm
|
||||
fourcc "ANM " ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll anm
|
||||
out BGR8
|
||||
|
||||
videocodec ffbinkvideo
|
||||
info "FFmpeg Bink Video"
|
||||
@ -26,8 +25,6 @@ videocodec ffbinkvideo
|
||||
fourcc BIKi ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll binkvideo
|
||||
out YV12
|
||||
out 420A
|
||||
|
||||
videocodec ffcdgraphics
|
||||
info "FFmpeg CD-Graphics"
|
||||
@ -35,7 +32,6 @@ videocodec ffcdgraphics
|
||||
fourcc CDGR ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll cdgraphics
|
||||
out BGR8
|
||||
|
||||
videocodec ffmvi1
|
||||
info "FFmpeg Motion Pixels"
|
||||
@ -43,8 +39,6 @@ videocodec ffmvi1
|
||||
fourcc MVI1 ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll motionpixels
|
||||
out BGR32,BGR24,BGR8,Y800,RGB32,RGB24,RGB8
|
||||
out YV12,YUY2
|
||||
|
||||
videocodec ffmdec
|
||||
info "FFmpeg Sony PlayStation MDEC (Motion DECoder)"
|
||||
@ -52,7 +46,6 @@ videocodec ffmdec
|
||||
fourcc MDEC ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll mdec
|
||||
out YV12
|
||||
|
||||
videocodec ffsiff
|
||||
info "FFmpeg Beam Software SIFF"
|
||||
@ -60,14 +53,12 @@ videocodec ffsiff
|
||||
fourcc VBV1
|
||||
driver ffmpeg
|
||||
dll vb
|
||||
out BGR8
|
||||
|
||||
videocodec ffmimic
|
||||
info "FFmpeg Mimic video"
|
||||
status working
|
||||
fourcc ML20
|
||||
fourcc LM20 ; mimic in avi
|
||||
out I420
|
||||
driver ffmpeg
|
||||
dll "mimic"
|
||||
|
||||
@ -75,7 +66,6 @@ videocodec ffkmvc
|
||||
info "FFmpeg Karl Morton Video Codec"
|
||||
status working
|
||||
fourcc KMVC
|
||||
out BGR8
|
||||
driver ffmpeg
|
||||
dll "kmvc"
|
||||
|
||||
@ -85,7 +75,6 @@ videocodec ffzmbv
|
||||
fourcc ZMBV
|
||||
driver ffmpeg
|
||||
dll "zmbv"
|
||||
out RGB24
|
||||
|
||||
videocodec geov
|
||||
info "GeoCodec"
|
||||
@ -160,7 +149,6 @@ videocodec ffr210
|
||||
fourcc r210
|
||||
driver ffmpeg
|
||||
dll "r210"
|
||||
out RGB48BE,RGB48LE
|
||||
|
||||
videocodec blackmagic
|
||||
info "Blackmagic 10-bit"
|
||||
@ -184,7 +172,6 @@ videocodec ffmpeg1
|
||||
fourcc m1v1
|
||||
driver ffmpeg
|
||||
dll "mpeg1video"
|
||||
out YV12,I420,IYUV
|
||||
|
||||
videocodec ffmpeg2
|
||||
info "FFmpeg MPEG-2"
|
||||
@ -218,8 +205,6 @@ videocodec ffmpeg2
|
||||
fourcc slif ; SoftLab MPEG-2 I-frames Codec
|
||||
driver ffmpeg
|
||||
dll "mpeg2video"
|
||||
out YV12,I420,IYUV
|
||||
out 422P,444P
|
||||
|
||||
; for backward compatibility
|
||||
videocodec ffmpeg12
|
||||
@ -257,8 +242,6 @@ videocodec ffmpeg12
|
||||
fourcc EM2V ; Etymonix MPEG-2 I-frame Video Codec
|
||||
driver ffmpeg
|
||||
dll "mpegvideo"
|
||||
out YV12,I420,IYUV
|
||||
out 422P,444P
|
||||
|
||||
videocodec ffmpeg12vdpau
|
||||
info "FFmpeg MPEG-1/2 (VDPAU)"
|
||||
@ -324,7 +307,6 @@ videocodec ffmpeg2crystalhd
|
||||
fourcc slif ; SoftLab MPEG-2 I-frames Codec
|
||||
driver ffmpeg
|
||||
dll mpeg2_crystalhd
|
||||
out YUY2
|
||||
|
||||
videocodec mpegpes
|
||||
info "MPEG-PES output (.mpg or DXR3/IVTV/DVB/V4L2 card)"
|
||||
@ -365,7 +347,6 @@ videocodec ffnuv
|
||||
fourcc RJPG
|
||||
driver ffmpeg
|
||||
dll nuv
|
||||
out I420
|
||||
|
||||
videocodec ffbmp
|
||||
info "FFmpeg BMP"
|
||||
@ -374,7 +355,6 @@ videocodec ffbmp
|
||||
format 0x706D62 ; AVI
|
||||
driver ffmpeg
|
||||
dll bmp
|
||||
out BGR32,BGR24,BGR8,Y800,RGB32,RGB24,RGB8
|
||||
|
||||
videocodec ffdpx
|
||||
info "FFmpeg DPX"
|
||||
@ -382,7 +362,6 @@ videocodec ffdpx
|
||||
fourcc "dpx " ; "dpx " is an internal MPlayer FOURCC
|
||||
driver ffmpeg
|
||||
dll dpx
|
||||
out RGB48BE,RGB48LE,RGB24,RGB32,BGR32
|
||||
|
||||
videocodec ffgif
|
||||
info "FFmpeg GIF"
|
||||
@ -390,7 +369,6 @@ videocodec ffgif
|
||||
fourcc "gif " ; for GIF-encoded QuickTime files
|
||||
driver ffmpeg
|
||||
dll gif
|
||||
out BGR32,BGR24,BGR8,Y800,RGB32,RGB24,RGB8
|
||||
|
||||
videocodec fftiff
|
||||
info "FFmpeg TIFF"
|
||||
@ -398,7 +376,6 @@ videocodec fftiff
|
||||
fourcc "tiff" ; for TIFF-encoded QuickTime files
|
||||
driver ffmpeg
|
||||
dll tiff
|
||||
out BGR32,BGR24,BGR8,Y800,RGB32,RGB24,RGB8
|
||||
|
||||
videocodec ffpcx
|
||||
info "FFmpeg PCX"
|
||||
@ -406,7 +383,6 @@ videocodec ffpcx
|
||||
fourcc "pcx "
|
||||
driver ffmpeg
|
||||
dll pcx
|
||||
out BGR32,BGR24,BGR8,Y800,RGB32,RGB24,RGB8
|
||||
|
||||
videocodec ffpng
|
||||
info "FFmpeg PNG"
|
||||
@ -415,7 +391,6 @@ videocodec ffpng
|
||||
fourcc "png " ; for PNG-encoded QuickTime files
|
||||
driver ffmpeg
|
||||
dll png
|
||||
out BGR32,BGR24,BGR8,Y800,RGB48BE,RGB32,RGB24,RGB8
|
||||
|
||||
videocodec mpng
|
||||
info "PNG image"
|
||||
@ -433,7 +408,6 @@ videocodec ffptx
|
||||
fourcc "ptx " ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll ptx
|
||||
out BGR32,BGR24,BGR8,Y800,RGB32,RGB24,RGB8
|
||||
|
||||
videocodec fftga
|
||||
info "FFmpeg TGA"
|
||||
@ -442,7 +416,6 @@ videocodec fftga
|
||||
fourcc "tga " ; for TGA-encoded QuickTime files
|
||||
driver ffmpeg
|
||||
dll targa
|
||||
out BGR32,BGR24,BGR8,Y800,RGB32,RGB24,RGB8
|
||||
|
||||
videocodec mtga
|
||||
info "TGA image"
|
||||
@ -458,7 +431,6 @@ videocodec ffsgi
|
||||
fourcc SGI1 ; SGI1 is an internal MPlayer FOURCC
|
||||
driver ffmpeg
|
||||
dll sgi
|
||||
out RGB24,Y800,RGB48BE
|
||||
|
||||
videocodec sgi
|
||||
info "SGI image"
|
||||
@ -473,7 +445,6 @@ videocodec ffsunras
|
||||
fourcc "sun " ; sun is an internal MPlayer FOURCC
|
||||
driver ffmpeg
|
||||
dll sunrast
|
||||
out BGR32,BGR24,BGR8,Y800,RGB32,RGB24,RGB8
|
||||
|
||||
videocodec ffindeo3
|
||||
info "FFmpeg Intel Indeo 3.1/3.2"
|
||||
@ -482,7 +453,6 @@ videocodec ffindeo3
|
||||
fourcc IV32,iv32
|
||||
driver ffmpeg
|
||||
dll indeo3
|
||||
out YVU9
|
||||
|
||||
videocodec fffli
|
||||
info "Autodesk FLI/FLC Animation"
|
||||
@ -490,7 +460,6 @@ videocodec fffli
|
||||
fourcc FLIC ; FLIC is an internal MPlayer FOURCC
|
||||
driver ffmpeg
|
||||
dll "flic"
|
||||
out BGR16,BGR15,BGR8 query
|
||||
|
||||
videocodec ffaasc
|
||||
info "Autodesk RLE"
|
||||
@ -498,7 +467,6 @@ videocodec ffaasc
|
||||
fourcc AASC
|
||||
driver ffmpeg
|
||||
dll "aasc"
|
||||
out BGR24
|
||||
|
||||
videocodec ffloco
|
||||
info "LOCO video"
|
||||
@ -506,7 +474,6 @@ videocodec ffloco
|
||||
fourcc LOCO
|
||||
driver ffmpeg
|
||||
dll "loco"
|
||||
out 422P,YV12,BGR32,BGR24 query
|
||||
|
||||
videocodec ffqtrle
|
||||
info "QuickTime Animation (RLE)"
|
||||
@ -514,7 +481,6 @@ videocodec ffqtrle
|
||||
format 0x20656C72 ; "rle "
|
||||
driver ffmpeg
|
||||
dll "qtrle"
|
||||
out BGR32,RGB24,BGR15,BGR8 query
|
||||
|
||||
videocodec ffrpza
|
||||
info "QuickTime Apple Video"
|
||||
@ -522,7 +488,6 @@ videocodec ffrpza
|
||||
fourcc rpza,azpr,RPZA,AZPR
|
||||
driver ffmpeg
|
||||
dll "rpza"
|
||||
out BGR15
|
||||
|
||||
videocodec ffsmc
|
||||
info "Apple Graphics (SMC) codec"
|
||||
@ -530,7 +495,6 @@ videocodec ffsmc
|
||||
format 0x20636d73 ; "smc "
|
||||
driver ffmpeg
|
||||
dll "smc"
|
||||
out BGR8
|
||||
|
||||
videocodec ff8bps
|
||||
info "Planar RGB (Photoshop)"
|
||||
@ -538,7 +502,6 @@ videocodec ff8bps
|
||||
fourcc 8BPS
|
||||
driver ffmpeg
|
||||
dll "8bps"
|
||||
out BGR32,BGR24,BGR8 query
|
||||
|
||||
videocodec ffcyuv
|
||||
info "Creative YUV (libavcodec)"
|
||||
@ -546,7 +509,6 @@ videocodec ffcyuv
|
||||
fourcc cyuv,CYUV
|
||||
driver ffmpeg
|
||||
dll "cyuv"
|
||||
out 411P
|
||||
|
||||
videocodec ffaura
|
||||
info "Auravision Aura (libavcodec)"
|
||||
@ -554,7 +516,6 @@ videocodec ffaura
|
||||
fourcc aura,AURA
|
||||
driver ffmpeg
|
||||
dll "aura"
|
||||
out 411P
|
||||
|
||||
videocodec ffaura2
|
||||
info "Auravision Aura 2 (libavcodec)"
|
||||
@ -562,7 +523,6 @@ videocodec ffaura2
|
||||
fourcc aur2,AUR2
|
||||
driver ffmpeg
|
||||
dll "aura2"
|
||||
out 422P
|
||||
|
||||
videocodec ffmsrle
|
||||
info "Microsoft RLE"
|
||||
@ -572,7 +532,6 @@ videocodec ffmsrle
|
||||
fourcc WRLE
|
||||
driver ffmpeg
|
||||
dll "msrle"
|
||||
out BGR8
|
||||
|
||||
videocodec ffroqvideo
|
||||
info "Id RoQ File Video"
|
||||
@ -580,7 +539,6 @@ videocodec ffroqvideo
|
||||
fourcc RoQV ; RoQV is an internal MPlayer FOURCC
|
||||
driver ffmpeg
|
||||
dll "roqvideo"
|
||||
out 444P
|
||||
|
||||
videocodec lzo
|
||||
info "LZO compressed"
|
||||
@ -663,7 +621,6 @@ videocodec ffcvid
|
||||
fourcc cvid,CVID
|
||||
driver ffmpeg
|
||||
dll "cinepak"
|
||||
out YV12,BGR8 query
|
||||
|
||||
videocodec cvidvfw
|
||||
info "Cinepak Video"
|
||||
@ -695,7 +652,6 @@ videocodec ffvideo1
|
||||
fourcc wham,WHAM
|
||||
driver ffmpeg
|
||||
dll "msvideo1"
|
||||
out BGR15,BGR8 query
|
||||
|
||||
videocodec ffmszh
|
||||
info "FFmpeg AVImszh"
|
||||
@ -703,7 +659,6 @@ videocodec ffmszh
|
||||
fourcc MSZH
|
||||
driver ffmpeg
|
||||
dll "mszh"
|
||||
out BGR24
|
||||
|
||||
videocodec ffzlib
|
||||
info "FFmpeg AVIzlib"
|
||||
@ -711,7 +666,6 @@ videocodec ffzlib
|
||||
fourcc ZLIB
|
||||
driver ffmpeg
|
||||
dll "zlib"
|
||||
out BGR24
|
||||
|
||||
;XAnim (slow):
|
||||
|
||||
@ -732,8 +686,6 @@ videocodec ffhuffyuv
|
||||
fourcc HFYU,FFVH
|
||||
driver ffmpeg
|
||||
dll huffyuv
|
||||
out YUY2,422P,YV12
|
||||
out BGR32,BGR24
|
||||
|
||||
videocodec ffv1
|
||||
info "FFV1 (lossless codec)"
|
||||
@ -741,8 +693,6 @@ videocodec ffv1
|
||||
fourcc FFV1
|
||||
driver ffmpeg
|
||||
dll ffv1
|
||||
out 411P,444P,422P,YV12,I420,IYUV,YVU9,422P16
|
||||
out BGR32
|
||||
|
||||
videocodec ffsnow
|
||||
info "FFSNOW (Michael's wavelet codec)"
|
||||
@ -750,7 +700,6 @@ videocodec ffsnow
|
||||
fourcc snow,SNOW
|
||||
driver ffmpeg
|
||||
dll snow
|
||||
out YV12
|
||||
|
||||
videocodec ffasv1
|
||||
info "FFmpeg ASUS V1"
|
||||
@ -758,7 +707,6 @@ videocodec ffasv1
|
||||
fourcc ASV1
|
||||
driver ffmpeg
|
||||
dll asv1
|
||||
out YV12,I420,IYUV
|
||||
|
||||
videocodec ffasv2
|
||||
info "FFmpeg ASUS V2"
|
||||
@ -766,7 +714,6 @@ videocodec ffasv2
|
||||
fourcc ASV2
|
||||
driver ffmpeg
|
||||
dll asv2
|
||||
out YV12,I420,IYUV
|
||||
|
||||
videocodec ffvcr1
|
||||
info "FFmpeg ATI VCR1"
|
||||
@ -774,7 +721,6 @@ videocodec ffvcr1
|
||||
fourcc VCR1
|
||||
driver ffmpeg
|
||||
dll vcr1
|
||||
out YVU9
|
||||
|
||||
videocodec ffcljr
|
||||
info "FFmpeg Cirrus Logic AccuPak (CLJR)"
|
||||
@ -782,7 +728,6 @@ videocodec ffcljr
|
||||
fourcc CLJR
|
||||
driver ffmpeg
|
||||
dll cljr
|
||||
out 411P
|
||||
|
||||
videocodec ffsvq1
|
||||
info "FFmpeg Sorenson Video v1 (SVQ1)"
|
||||
@ -790,7 +735,6 @@ videocodec ffsvq1
|
||||
fourcc SVQ1,svq1
|
||||
driver ffmpeg
|
||||
dll svq1
|
||||
out YVU9
|
||||
|
||||
videocodec ff4xm
|
||||
info "FFmpeg 4XM video"
|
||||
@ -798,7 +742,6 @@ videocodec ff4xm
|
||||
fourcc 4XMV
|
||||
driver ffmpeg
|
||||
dll 4xm
|
||||
out BGR15,BGR16 query
|
||||
|
||||
videocodec ffvixl
|
||||
info "Miro/Pinnacle VideoXL codec"
|
||||
@ -808,7 +751,6 @@ videocodec ffvixl
|
||||
fourcc XIXL
|
||||
driver ffmpeg
|
||||
dll xl
|
||||
out 411P
|
||||
|
||||
videocodec ffqtdrw
|
||||
info "FFmpeg QuickDraw"
|
||||
@ -816,7 +758,6 @@ videocodec ffqtdrw
|
||||
fourcc qdrw
|
||||
driver ffmpeg
|
||||
dll qdraw
|
||||
out BGR8
|
||||
|
||||
videocodec ffindeo2
|
||||
info "FFmpeg Indeo 2"
|
||||
@ -825,7 +766,6 @@ videocodec ffindeo2
|
||||
fourcc IV20
|
||||
driver ffmpeg
|
||||
dll indeo2
|
||||
out YVU9
|
||||
|
||||
videocodec ffflv
|
||||
info "FFmpeg Flash video"
|
||||
@ -833,7 +773,6 @@ videocodec ffflv
|
||||
fourcc FLV1,flv
|
||||
driver ffmpeg
|
||||
dll flv
|
||||
out YV12
|
||||
|
||||
videocodec fffsv
|
||||
info "FFmpeg Flash Screen video"
|
||||
@ -841,7 +780,6 @@ videocodec fffsv
|
||||
fourcc FSV1
|
||||
driver ffmpeg
|
||||
dll flashsv
|
||||
out BGR24
|
||||
|
||||
videocodec ffdivx
|
||||
info "FFmpeg DivX ;-) (MSMPEG-4 v3)"
|
||||
@ -858,7 +796,6 @@ videocodec ffdivx
|
||||
fourcc DVX3
|
||||
driver ffmpeg
|
||||
dll msmpeg4
|
||||
out YV12,I420,IYUV
|
||||
|
||||
videocodec ffdivxcrystalhd
|
||||
info "FFmpeg DivX ;-) (MSMPEG-4 v3) (CrystalHD)"
|
||||
@ -875,7 +812,6 @@ videocodec ffdivxcrystalhd
|
||||
fourcc DVX3
|
||||
driver ffmpeg
|
||||
dll msmpeg4_crystalhd
|
||||
out YUY2
|
||||
|
||||
videocodec ffmp42
|
||||
info "FFmpeg MSMPEG-4 v2"
|
||||
@ -884,7 +820,6 @@ videocodec ffmp42
|
||||
fourcc MP42,mp42,Mp42
|
||||
driver ffmpeg
|
||||
dll msmpeg4v2
|
||||
out YV12,I420,IYUV
|
||||
|
||||
videocodec ffmp41
|
||||
info "FFmpeg MSMPEG-4 v1"
|
||||
@ -894,7 +829,6 @@ videocodec ffmp41
|
||||
fourcc MP41
|
||||
driver ffmpeg
|
||||
dll msmpeg4v1
|
||||
out YV12,I420,IYUV
|
||||
|
||||
videocodec ffwmv1
|
||||
info "FFmpeg WMV1/WMV7"
|
||||
@ -902,7 +836,6 @@ videocodec ffwmv1
|
||||
fourcc WMV1,wmv1
|
||||
driver ffmpeg
|
||||
dll wmv1
|
||||
out YV12,I420,IYUV
|
||||
|
||||
videocodec ffwmv2
|
||||
info "FFmpeg WMV2/WMV8"
|
||||
@ -910,7 +843,6 @@ videocodec ffwmv2
|
||||
fourcc WMV2,wmv2
|
||||
driver ffmpeg
|
||||
dll wmv2
|
||||
out YV12,I420,IYUV
|
||||
|
||||
videocodec ffwmv3
|
||||
info "FFmpeg WMV3/WMV9"
|
||||
@ -918,7 +850,6 @@ videocodec ffwmv3
|
||||
fourcc WMV3,wmv3
|
||||
driver ffmpeg
|
||||
dll wmv3
|
||||
out YV12,I420,IYUV
|
||||
|
||||
videocodec ffwmvp
|
||||
info "FFmpeg WVC1"
|
||||
@ -927,7 +858,6 @@ videocodec ffwmvp
|
||||
fourcc wmvp,WMVP
|
||||
driver ffmpeg
|
||||
dll wmv3
|
||||
out YV12,I420,IYUV
|
||||
|
||||
videocodec ffwmv3vdpau
|
||||
info "FFmpeg WMV3/WMV9 (VDPAU)"
|
||||
@ -943,7 +873,6 @@ videocodec ffwmv3crystalhd
|
||||
fourcc WMV3,wmv3
|
||||
driver ffmpeg
|
||||
dll wmv3_crystalhd
|
||||
out YUY2
|
||||
|
||||
videocodec ffvc1
|
||||
info "FFmpeg WVC1"
|
||||
@ -952,7 +881,6 @@ videocodec ffvc1
|
||||
fourcc vc-1,VC-1
|
||||
driver ffmpeg
|
||||
dll vc1
|
||||
out YV12,I420,IYUV
|
||||
|
||||
videocodec ffvc1vdpau
|
||||
info "FFmpeg WVC1 (VDPAU)"
|
||||
@ -970,7 +898,6 @@ videocodec ffvc1crystalhd
|
||||
fourcc vc-1,VC-1
|
||||
driver ffmpeg
|
||||
dll vc1_crystalhd
|
||||
out YUY2
|
||||
|
||||
videocodec ffh264
|
||||
info "FFmpeg H.264"
|
||||
@ -986,7 +913,6 @@ videocodec ffh264
|
||||
format 0x10000005
|
||||
driver ffmpeg
|
||||
dll h264
|
||||
out YV12,I420,IYUV
|
||||
|
||||
videocodec ffh264vdpau
|
||||
info "FFmpeg H.264 (VDPAU)"
|
||||
@ -1015,7 +941,6 @@ videocodec ffh264crystalhd
|
||||
format 0x10000005
|
||||
driver ffmpeg
|
||||
dll h264_crystalhd
|
||||
out YUY2
|
||||
|
||||
videocodec coreavcwindows
|
||||
info "CoreAVC H.264 for x86 - http://corecodec.org/"
|
||||
@ -1041,7 +966,6 @@ videocodec ffsvq3
|
||||
fourcc SVQ3
|
||||
driver ffmpeg
|
||||
dll svq3
|
||||
out YV12,I420,IYUV
|
||||
|
||||
videocodec ffodivx
|
||||
info "FFmpeg MPEG-4"
|
||||
@ -1074,7 +998,6 @@ videocodec ffodivx
|
||||
fourcc SIPP ; Samsung SHR-6040
|
||||
driver ffmpeg
|
||||
dll mpeg4 ;opendivx
|
||||
out YV12,I420,IYUV
|
||||
|
||||
videocodec ffodivxvdpau
|
||||
info "FFmpeg MPEG-4,DIVX-4/5 (VDPAU)"
|
||||
@ -1140,7 +1063,6 @@ videocodec ffodivxcrystalhd
|
||||
fourcc SIPP ; Samsung SHR-6040
|
||||
driver ffmpeg
|
||||
dll mpeg4_crystalhd
|
||||
out YUY2
|
||||
|
||||
videocodec ffwv1f
|
||||
info "WV1F MPEG-4"
|
||||
@ -1156,7 +1078,6 @@ videocodec fflibschroedinger
|
||||
fourcc drac
|
||||
driver ffmpeg
|
||||
dll libschroedinger
|
||||
out YV12,I420,IYUV,422P,444P
|
||||
|
||||
videocodec fflibdirac
|
||||
info "Dirac (through FFmpeg libdirac)"
|
||||
@ -1164,7 +1085,6 @@ videocodec fflibdirac
|
||||
fourcc drac
|
||||
driver ffmpeg
|
||||
dll libdirac
|
||||
out YV12,I420,IYUV,422P,444P
|
||||
|
||||
videocodec xvid
|
||||
info "Xvid (MPEG-4)"
|
||||
@ -1440,14 +1360,6 @@ videocodec ffmjpeg
|
||||
fourcc MTSJ,ZJPG
|
||||
driver ffmpeg
|
||||
dll mjpeg
|
||||
out 444P
|
||||
out 422P
|
||||
out 440P
|
||||
out YUY2 ; queried (conversion from yuv422p)
|
||||
out YV12,I420,IYUV
|
||||
out BGR32 ; lossless JPEG
|
||||
out RGB24 ; JPEG-LS
|
||||
out Y800
|
||||
|
||||
videocodec ffmjpegb
|
||||
info "FFmpeg MJPEG-B"
|
||||
@ -1455,11 +1367,6 @@ videocodec ffmjpegb
|
||||
fourcc mjpb ; Apple MJPEG-B (Quicktime)
|
||||
driver ffmpeg
|
||||
dll mjpegb
|
||||
out 444P
|
||||
out 422P
|
||||
out 440P
|
||||
out YUY2 ; queryed (conversion from yuv422p)
|
||||
out YV12,I420,IYUV
|
||||
|
||||
; slow. usable only for standalone JPEGs, like -mf, avid or Photo-JPEG:
|
||||
videocodec ijpg
|
||||
@ -1544,7 +1451,6 @@ videocodec fflibopenjpeg
|
||||
fourcc mjp2
|
||||
driver ffmpeg
|
||||
dll "libopenjpeg"
|
||||
out RGB24,RGB32,BGR32,Y8,Y800
|
||||
|
||||
videocodec m3jpeg2k
|
||||
info "Morgan MJPEG2000"
|
||||
@ -1603,7 +1509,6 @@ videocodec fffrwu
|
||||
fourcc FRWU
|
||||
driver ffmpeg
|
||||
dll "FRWU"
|
||||
out UYVY
|
||||
|
||||
videocodec frwuvfw
|
||||
info "Forward Uncompressed Video Codec"
|
||||
@ -1673,7 +1578,6 @@ videocodec ffi263
|
||||
fourcc I263,i263
|
||||
driver ffmpeg
|
||||
dll h263i
|
||||
out YV12,I420,IYUV
|
||||
|
||||
videocodec ffh263
|
||||
info "FFmpeg H.263+"
|
||||
@ -1688,7 +1592,6 @@ videocodec ffh263
|
||||
fourcc VX1K ; Agora Labs VX1000S H263
|
||||
driver ffmpeg
|
||||
dll h263
|
||||
out YV12,I420,IYUV
|
||||
|
||||
videocodec ffzygo
|
||||
info "FFmpeg ZyGo"
|
||||
@ -1714,7 +1617,6 @@ videocodec ffh261
|
||||
fourcc H261,h261
|
||||
driver ffmpeg
|
||||
dll h261
|
||||
out YV12
|
||||
|
||||
videocodec qt261
|
||||
info "QuickTime H.261 video"
|
||||
@ -1818,7 +1720,6 @@ videocodec ffindeo5
|
||||
fourcc IV50
|
||||
driver ffmpeg
|
||||
dll indeo5
|
||||
out YVU9
|
||||
|
||||
; DV: qdv is more stable... libdv is slow, mcdv is unstable
|
||||
|
||||
@ -1844,7 +1745,6 @@ videocodec ffdv
|
||||
fourcc dvs1,dvh1
|
||||
driver ffmpeg
|
||||
dll dvvideo
|
||||
out 411P,422P,YV12
|
||||
|
||||
videocodec qdv
|
||||
info "Sony Digital Video (DV)"
|
||||
@ -1989,7 +1889,6 @@ videocodec ffrv20
|
||||
fourcc RVTR
|
||||
driver ffmpeg
|
||||
dll rv20
|
||||
out YV12,I420,IYUV
|
||||
|
||||
videocodec ffrv30
|
||||
info "FFmpeg RV30"
|
||||
@ -1997,7 +1896,6 @@ videocodec ffrv30
|
||||
fourcc RV30,rv30
|
||||
driver ffmpeg
|
||||
dll rv30
|
||||
out YV12,I420,IYUV
|
||||
|
||||
videocodec ffrv40
|
||||
info "FFmpeg RV40"
|
||||
@ -2005,7 +1903,6 @@ videocodec ffrv40
|
||||
fourcc RV40,rv40
|
||||
driver ffmpeg
|
||||
dll rv40
|
||||
out YV12,I420,IYUV
|
||||
|
||||
videocodec rv20
|
||||
info "Linux RealPlayer 8 RV20"
|
||||
@ -2046,7 +1943,6 @@ videocodec ffrv10
|
||||
fourcc RV13,rv13
|
||||
driver ffmpeg
|
||||
dll rv10
|
||||
out YV12,I420,IYUV
|
||||
|
||||
; others:
|
||||
|
||||
@ -2091,7 +1987,6 @@ videocodec fflagarith
|
||||
fourcc LAGS
|
||||
driver ffmpeg
|
||||
dll lagarith
|
||||
out YV12
|
||||
|
||||
videocodec lagarith
|
||||
info "Lagarith Lossless Video Codec"
|
||||
@ -2194,7 +2089,6 @@ videocodec ffvp3
|
||||
format 0x20335056 ; "VP3 " (used in .nsv files)
|
||||
driver ffmpeg
|
||||
dll "vp3"
|
||||
out YV12
|
||||
|
||||
videocodec fftheora
|
||||
info "FFmpeg Theora"
|
||||
@ -2204,7 +2098,6 @@ videocodec fftheora
|
||||
format 0xFFFC
|
||||
driver ffmpeg
|
||||
dll "theora"
|
||||
out YV12,422P,444P
|
||||
|
||||
videocodec vp3
|
||||
info "On2 Open Source VP3 Codec"
|
||||
@ -2234,7 +2127,6 @@ videocodec ffvp5
|
||||
fourcc VP50
|
||||
driver ffmpeg
|
||||
dll "vp5"
|
||||
out YV12
|
||||
|
||||
videocodec vp5
|
||||
info "On2 VP5 Personal Codec"
|
||||
@ -2251,7 +2143,6 @@ videocodec ffvp6
|
||||
fourcc VP60,VP61,VP62
|
||||
driver ffmpeg
|
||||
dll "vp6"
|
||||
out YV12
|
||||
|
||||
videocodec ffvp6a
|
||||
info "FFmpeg VP6A"
|
||||
@ -2259,7 +2150,6 @@ videocodec ffvp6a
|
||||
fourcc VP6A
|
||||
driver ffmpeg
|
||||
dll "vp6a"
|
||||
out 420A
|
||||
|
||||
videocodec ffvp6f
|
||||
info "FFmpeg VP6 Flash"
|
||||
@ -2268,7 +2158,6 @@ videocodec ffvp6f
|
||||
fourcc FLV4
|
||||
driver ffmpeg
|
||||
dll "vp6f"
|
||||
out YV12
|
||||
|
||||
videocodec vp6
|
||||
info "On2 VP6 Personal Codec"
|
||||
@ -2303,7 +2192,6 @@ videocodec ffvp8
|
||||
fourcc VP80
|
||||
driver ffmpeg
|
||||
dll "vp8"
|
||||
out YV12
|
||||
|
||||
videocodec fflibvpx
|
||||
info "FFmpeg wrapper for libvpx/VP8"
|
||||
@ -2311,7 +2199,6 @@ videocodec fflibvpx
|
||||
fourcc VP80
|
||||
driver ffmpeg
|
||||
dll "libvpx"
|
||||
out YV12
|
||||
|
||||
videocodec mwv1
|
||||
info "Motion Wavelets"
|
||||
@ -2353,7 +2240,6 @@ videocodec ffultimotion
|
||||
fourcc ULTI
|
||||
driver ffmpeg
|
||||
dll "ultimotion"
|
||||
out YVU9
|
||||
|
||||
videocodec ultimotion
|
||||
info "IBM Ultimotion"
|
||||
@ -2443,7 +2329,6 @@ videocodec ffduck
|
||||
fourcc PVEZ
|
||||
driver ffmpeg
|
||||
dll "truemotion1"
|
||||
out BGR15,BGR16,BGR24,BGR32 query
|
||||
|
||||
videocodec fftm20
|
||||
info "FFmpeg Duck/On2 TrueMotion 2.0"
|
||||
@ -2451,7 +2336,6 @@ videocodec fftm20
|
||||
fourcc TM20
|
||||
driver ffmpeg
|
||||
dll truemotion2
|
||||
out BGR24
|
||||
|
||||
; our BGR15->BGR32 is bad or the DLL?
|
||||
videocodec tm20
|
||||
@ -2505,7 +2389,6 @@ videocodec ffamv
|
||||
fourcc AMVV ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll "amv"
|
||||
out YV12
|
||||
|
||||
videocodec ffsp5x
|
||||
info "SP5x codec - used by Aiptek MegaCam"
|
||||
@ -2513,7 +2396,6 @@ videocodec ffsp5x
|
||||
fourcc SP53,SP54,SP55,SP56,SP57,SP58
|
||||
driver ffmpeg
|
||||
dll "sp5x"
|
||||
out YV12
|
||||
|
||||
videocodec sp6x
|
||||
info "SP6x codec"
|
||||
@ -2586,7 +2468,6 @@ videocodec ffkega
|
||||
fourcc KGV1
|
||||
driver ffmpeg
|
||||
dll kgv1
|
||||
out BGR15
|
||||
|
||||
videocodec kegavideo
|
||||
info "Kega Video"
|
||||
@ -2701,7 +2582,6 @@ videocodec ffwnv1
|
||||
fourcc WNV1
|
||||
driver ffmpeg
|
||||
dll wnv1
|
||||
out 422P
|
||||
|
||||
videocodec wnv1
|
||||
info "Winnov Videum wnv1 codec"
|
||||
@ -2744,7 +2624,6 @@ videocodec ffvmnc
|
||||
fourcc VMnc
|
||||
driver ffmpeg
|
||||
dll "vmnc"
|
||||
out BGR32,BGR15,BGR8
|
||||
|
||||
videocodec vmnc
|
||||
info "VMware video"
|
||||
@ -2759,7 +2638,6 @@ videocodec ffsmkvid
|
||||
status working
|
||||
fourcc SMK2
|
||||
fourcc SMK4
|
||||
out BGR8
|
||||
driver ffmpeg
|
||||
dll "smackvid"
|
||||
|
||||
@ -2771,7 +2649,6 @@ videocodec ffcavs
|
||||
fourcc avs2
|
||||
driver ffmpeg
|
||||
dll "cavs"
|
||||
out YV12,I420
|
||||
|
||||
videocodec qtdnxhd
|
||||
info "QuickTime Avid DNxHD"
|
||||
@ -2788,7 +2665,6 @@ videocodec ffdnxhd
|
||||
fourcc AVdn
|
||||
driver ffmpeg
|
||||
dll "dnxhd"
|
||||
out 422P
|
||||
|
||||
; quicktime codecs:
|
||||
|
||||
@ -2918,7 +2794,6 @@ videocodec ffv210
|
||||
fourcc v210
|
||||
driver ffmpeg
|
||||
dll v210
|
||||
out 422P16
|
||||
|
||||
videocodec qtcine
|
||||
info "cinewave uncompressed 10-bit codec"
|
||||
@ -3065,7 +2940,6 @@ videocodec ffcamtasia
|
||||
fourcc TSCC,tscc
|
||||
driver ffmpeg
|
||||
dll "camtasia"
|
||||
out BGR32,BGR24,BGR15,BGR8 query
|
||||
|
||||
; sample videos: http://www.techsmith.com/products/camtasia/examplevideos.asp
|
||||
videocodec camtasia
|
||||
@ -3082,7 +2956,6 @@ videocodec ffcamstudio
|
||||
fourcc CSCD,cscd
|
||||
driver ffmpeg
|
||||
dll "camstudio"
|
||||
out BGR32,BGR24,BGR15 query
|
||||
|
||||
; Fraps - Realtime Video Capture - http://www.fraps.com/
|
||||
videocodec fraps
|
||||
@ -3100,7 +2973,6 @@ videocodec fffraps
|
||||
fourcc FPS1,fps1
|
||||
driver ffmpeg
|
||||
dll "fraps"
|
||||
out BGR24,YV12,I420
|
||||
|
||||
videocodec ffjv
|
||||
info "FFmpeg Bitmap Brothers JV"
|
||||
@ -3108,7 +2980,6 @@ videocodec ffjv
|
||||
fourcc FFJV ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll "jv"
|
||||
out BGR8
|
||||
|
||||
videocodec fftiertexseq
|
||||
info "FFmpeg Tiertex SEQ"
|
||||
@ -3116,7 +2987,6 @@ videocodec fftiertexseq
|
||||
fourcc TSEQ ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll "tiertexseqvideo"
|
||||
out BGR8
|
||||
|
||||
videocodec ffvmd
|
||||
info "FFmpeg Sierra VMD video"
|
||||
@ -3124,7 +2994,6 @@ videocodec ffvmd
|
||||
fourcc VMDV ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll "vmdvideo"
|
||||
out BGR8
|
||||
|
||||
videocodec ffdxa
|
||||
info "FFmpeg Feeble Files DXA video"
|
||||
@ -3132,7 +3001,6 @@ videocodec ffdxa
|
||||
fourcc DXA1 ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll "dxa"
|
||||
out BGR8
|
||||
|
||||
videocodec ffdsicinvideo
|
||||
info "FFmpeg Delphine CIN video"
|
||||
@ -3140,7 +3008,6 @@ videocodec ffdsicinvideo
|
||||
fourcc DCIV ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll "dsicinvideo"
|
||||
out BGR8
|
||||
|
||||
videocodec ffthp
|
||||
info "FFmpeg THP video"
|
||||
@ -3148,7 +3015,6 @@ videocodec ffthp
|
||||
fourcc THPV ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll thp
|
||||
out YV12
|
||||
|
||||
videocodec ffbfi
|
||||
info "FFmpeg BFI Video"
|
||||
@ -3156,7 +3022,6 @@ videocodec ffbfi
|
||||
fourcc BFIV ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll bfi
|
||||
out BGR8
|
||||
|
||||
videocodec ffbethsoftvid
|
||||
info "FFmpeg Bethesda Software VID"
|
||||
@ -3165,7 +3030,6 @@ videocodec ffbethsoftvid
|
||||
fourcc BETH ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll bethsoftvid
|
||||
out BGR8
|
||||
|
||||
videocodec ffrl2
|
||||
info "FFmpeg RL2"
|
||||
@ -3173,7 +3037,6 @@ videocodec ffrl2
|
||||
fourcc RL2V ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll rl2
|
||||
out BGR8
|
||||
|
||||
videocodec fftxd
|
||||
info "FFmpeg Renderware TeXture Dictionary"
|
||||
@ -3181,7 +3044,6 @@ videocodec fftxd
|
||||
fourcc TXDV ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll txd
|
||||
out BGR32
|
||||
|
||||
videocodec xan
|
||||
info "XAN Video"
|
||||
@ -3197,7 +3059,6 @@ videocodec ffwc4
|
||||
fourcc Xxan
|
||||
driver ffmpeg
|
||||
dll "xan_wc4"
|
||||
out YV12
|
||||
|
||||
videocodec ffwc3
|
||||
info "FFmpeg XAN wc3"
|
||||
@ -3205,7 +3066,6 @@ videocodec ffwc3
|
||||
fourcc WC3V ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll "xan_wc3"
|
||||
out BGR8
|
||||
|
||||
videocodec ffidcin
|
||||
info "FFmpeg Id CIN video"
|
||||
@ -3213,7 +3073,6 @@ videocodec ffidcin
|
||||
fourcc IDCI ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll "idcinvideo"
|
||||
out BGR8
|
||||
|
||||
videocodec ffinterplay
|
||||
info "FFmpeg Interplay Video"
|
||||
@ -3221,7 +3080,6 @@ videocodec ffinterplay
|
||||
fourcc INPV ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll "interplayvideo"
|
||||
out BGR8,BGR15
|
||||
|
||||
videocodec ffvqa
|
||||
info "FFmpeg VQA Video"
|
||||
@ -3229,7 +3087,6 @@ videocodec ffvqa
|
||||
fourcc VQAV ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll "vqavideo"
|
||||
out BGR8
|
||||
|
||||
videocodec ffc93
|
||||
info "FFmpeg C93 Video"
|
||||
@ -3237,7 +3094,6 @@ videocodec ffc93
|
||||
fourcc C93V ; internal MPlayer FourCC
|
||||
driver ffmpeg
|
||||
dll c93
|
||||
out BGR8
|
||||
|
||||
videocodec ffeatgv
|
||||
info "FFmpeg Electronic Arts TGV"
|
||||
@ -3245,7 +3101,6 @@ videocodec ffeatgv
|
||||
fourcc fVGT
|
||||
driver ffmpeg
|
||||
dll eatgv
|
||||
out BGR8
|
||||
|
||||
; raw formats: (now RGB formats are autodetected)
|
||||
|
||||
@ -3506,7 +3361,6 @@ videocodec ffrawyuy2
|
||||
fourcc yuvs,YUVS
|
||||
driver ffmpeg
|
||||
dll rawvideo
|
||||
out YUY2
|
||||
|
||||
videocodec ffrawyuv2
|
||||
info "RAW YUV2"
|
||||
@ -3516,7 +3370,6 @@ videocodec ffrawyuv2
|
||||
fourcc yuv2,YUV2
|
||||
driver ffmpeg
|
||||
dll rawvideo
|
||||
out YUY2
|
||||
|
||||
videocodec ffrawuyvy
|
||||
info "RAW UYVY"
|
||||
@ -3534,7 +3387,6 @@ videocodec ffrawuyvy
|
||||
fourcc VDTZ
|
||||
driver ffmpeg
|
||||
dll rawvideo
|
||||
out UYVY
|
||||
|
||||
videocodec ffraw444P
|
||||
info "RAW 444P"
|
||||
@ -3544,7 +3396,6 @@ videocodec ffraw444P
|
||||
fourcc 444p,444P
|
||||
driver ffmpeg
|
||||
dll rawvideo
|
||||
out 444P
|
||||
|
||||
videocodec ffraw422P
|
||||
info "RAW 422P"
|
||||
@ -3556,7 +3407,6 @@ videocodec ffraw422P
|
||||
fourcc Y42B,y42b
|
||||
driver ffmpeg
|
||||
dll rawvideo
|
||||
out 422P
|
||||
|
||||
videocodec ffrawyv12
|
||||
info "RAW YV12"
|
||||
@ -3566,7 +3416,6 @@ videocodec ffrawyv12
|
||||
fourcc yv12,YV12
|
||||
driver ffmpeg
|
||||
dll rawvideo
|
||||
out YV12
|
||||
|
||||
videocodec ffrawi420
|
||||
info "RAW I420"
|
||||
@ -3577,7 +3426,6 @@ videocodec ffrawi420
|
||||
fourcc IYUV,iyuv
|
||||
driver ffmpeg
|
||||
dll rawvideo
|
||||
out I420,IYUV
|
||||
|
||||
videocodec ffrawyvu9
|
||||
info "RAW YVU9"
|
||||
@ -3587,7 +3435,6 @@ videocodec ffrawyvu9
|
||||
fourcc yvu9,YVU9
|
||||
driver ffmpeg
|
||||
dll rawvideo
|
||||
out YVU9
|
||||
|
||||
videocodec ffrawy800
|
||||
info "RAW Y8/Y800"
|
||||
@ -3597,7 +3444,6 @@ videocodec ffrawy800
|
||||
fourcc y800,Y800
|
||||
driver ffmpeg
|
||||
dll rawvideo
|
||||
out Y800,Y8
|
||||
|
||||
; NULL codec - for testing.
|
||||
|
||||
|
@ -18,6 +18,7 @@
|
||||
|
||||
#include "mp_msg.h"
|
||||
#include "libavutil/avutil.h"
|
||||
#include <libavutil/pixdesc.h>
|
||||
#include "libmpcodecs/img_format.h"
|
||||
#include "fmt-conversion.h"
|
||||
|
||||
@ -74,6 +75,20 @@ static const struct {
|
||||
|
||||
{IMGFMT_420P16_LE, PIX_FMT_YUV420P16LE},
|
||||
{IMGFMT_420P16_BE, PIX_FMT_YUV420P16BE},
|
||||
#if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(51, 2, 0)
|
||||
{IMGFMT_420P9_LE, PIX_FMT_YUV420P9LE},
|
||||
{IMGFMT_420P9_BE, PIX_FMT_YUV420P9BE},
|
||||
{IMGFMT_420P10_LE, PIX_FMT_YUV420P10LE},
|
||||
{IMGFMT_420P10_BE, PIX_FMT_YUV420P10BE},
|
||||
{IMGFMT_422P10_LE, PIX_FMT_YUV422P10LE},
|
||||
{IMGFMT_422P10_BE, PIX_FMT_YUV422P10BE},
|
||||
#endif
|
||||
#if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(51, 7, 0)
|
||||
{IMGFMT_444P9_BE , PIX_FMT_YUV444P9BE},
|
||||
{IMGFMT_444P9_LE , PIX_FMT_YUV444P9LE},
|
||||
{IMGFMT_444P10_BE, PIX_FMT_YUV444P10BE},
|
||||
{IMGFMT_444P10_LE, PIX_FMT_YUV444P10LE},
|
||||
#endif
|
||||
{IMGFMT_422P16_LE, PIX_FMT_YUV422P16LE},
|
||||
{IMGFMT_422P16_BE, PIX_FMT_YUV422P16BE},
|
||||
{IMGFMT_444P16_LE, PIX_FMT_YUV444P16LE},
|
||||
@ -114,12 +129,18 @@ enum PixelFormat imgfmt2pixfmt(int fmt)
|
||||
int pixfmt2imgfmt(enum PixelFormat pix_fmt)
|
||||
{
|
||||
int i;
|
||||
int fmt;
|
||||
for (i = 0; conversion_map[i].pix_fmt != PIX_FMT_NONE; i++)
|
||||
if (conversion_map[i].pix_fmt == pix_fmt)
|
||||
break;
|
||||
fmt = conversion_map[i].fmt;
|
||||
if (!fmt)
|
||||
int fmt = conversion_map[i].fmt;
|
||||
if (!fmt) {
|
||||
#if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(51, 2, 0)
|
||||
const char *fmtname = av_get_pix_fmt_name(pix_fmt);
|
||||
mp_msg(MSGT_GLOBAL, MSGL_ERR, "Unsupported PixelFormat %s (%d)\n",
|
||||
fmtname ? fmtname : "INVALID", pix_fmt);
|
||||
#else
|
||||
mp_msg(MSGT_GLOBAL, MSGL_ERR, "Unsupported PixelFormat %i\n", pix_fmt);
|
||||
#endif
|
||||
}
|
||||
return fmt;
|
||||
}
|
||||
|
@ -59,10 +59,20 @@ const char *vo_format_name(int format)
|
||||
case IMGFMT_Y8: return "Planar Y8";
|
||||
case IMGFMT_420P16_LE: return "Planar 420P 16-bit little-endian";
|
||||
case IMGFMT_420P16_BE: return "Planar 420P 16-bit big-endian";
|
||||
case IMGFMT_420P10_LE: return "Planar 420P 10-bit little-endian";
|
||||
case IMGFMT_420P10_BE: return "Planar 420P 10-bit big-endian";
|
||||
case IMGFMT_420P9_LE: return "Planar 420P 9-bit little-endian";
|
||||
case IMGFMT_420P9_BE: return "Planar 420P 9-bit big-endian";
|
||||
case IMGFMT_422P16_LE: return "Planar 422P 16-bit little-endian";
|
||||
case IMGFMT_422P16_BE: return "Planar 422P 16-bit big-endian";
|
||||
case IMGFMT_422P10_LE: return "Planar 422P 10-bit little-endian";
|
||||
case IMGFMT_422P10_BE: return "Planar 422P 10-bit big-endian";
|
||||
case IMGFMT_444P16_LE: return "Planar 444P 16-bit little-endian";
|
||||
case IMGFMT_444P16_BE: return "Planar 444P 16-bit big-endian";
|
||||
case IMGFMT_444P10_LE: return "Planar 444P 10-bit little-endian";
|
||||
case IMGFMT_444P10_BE: return "Planar 444P 10-bit big-endian";
|
||||
case IMGFMT_444P9_LE: return "Planar 444P 9-bit little-endian";
|
||||
case IMGFMT_444P9_BE: return "Planar 444P 9-bit big-endian";
|
||||
case IMGFMT_420A: return "Planar 420P with alpha";
|
||||
case IMGFMT_444P: return "Planar 444P";
|
||||
case IMGFMT_422P: return "Planar 422P";
|
||||
@ -116,6 +126,10 @@ int mp_get_chroma_shift(int format, int *x_shift, int *y_shift)
|
||||
switch (format) {
|
||||
case IMGFMT_420P16_LE:
|
||||
case IMGFMT_420P16_BE:
|
||||
case IMGFMT_420P10_LE:
|
||||
case IMGFMT_420P10_BE:
|
||||
case IMGFMT_420P9_LE:
|
||||
case IMGFMT_420P9_BE:
|
||||
bpp_factor = 2;
|
||||
case IMGFMT_420A:
|
||||
case IMGFMT_I420:
|
||||
@ -131,6 +145,10 @@ int mp_get_chroma_shift(int format, int *x_shift, int *y_shift)
|
||||
break;
|
||||
case IMGFMT_444P16_LE:
|
||||
case IMGFMT_444P16_BE:
|
||||
case IMGFMT_444P10_LE:
|
||||
case IMGFMT_444P10_BE:
|
||||
case IMGFMT_444P9_LE:
|
||||
case IMGFMT_444P9_BE:
|
||||
bpp_factor = 2;
|
||||
case IMGFMT_444P:
|
||||
xs = 0;
|
||||
@ -138,6 +156,8 @@ int mp_get_chroma_shift(int format, int *x_shift, int *y_shift)
|
||||
break;
|
||||
case IMGFMT_422P16_LE:
|
||||
case IMGFMT_422P16_BE:
|
||||
case IMGFMT_422P10_LE:
|
||||
case IMGFMT_422P10_BE:
|
||||
bpp_factor = 2;
|
||||
case IMGFMT_422P:
|
||||
xs = 1;
|
||||
|
@ -123,22 +123,42 @@
|
||||
|
||||
#define IMGFMT_444P16_LE 0x51343434
|
||||
#define IMGFMT_444P16_BE 0x34343451
|
||||
#define IMGFMT_444P10_LE 0x52343434
|
||||
#define IMGFMT_444P10_BE 0x34343452
|
||||
#define IMGFMT_444P9_LE 0x53343434
|
||||
#define IMGFMT_444P9_BE 0x34343453
|
||||
#define IMGFMT_422P16_LE 0x51323234
|
||||
#define IMGFMT_422P16_BE 0x34323251
|
||||
#define IMGFMT_422P10_LE 0x52323234
|
||||
#define IMGFMT_422P10_BE 0x34323252
|
||||
#define IMGFMT_420P16_LE 0x51303234
|
||||
#define IMGFMT_420P16_BE 0x34323051
|
||||
#define IMGFMT_420P10_LE 0x52303234
|
||||
#define IMGFMT_420P10_BE 0x34323052
|
||||
#define IMGFMT_420P9_LE 0x53303234
|
||||
#define IMGFMT_420P9_BE 0x34323053
|
||||
#if HAVE_BIGENDIAN
|
||||
#define IMGFMT_444P16 IMGFMT_444P16_BE
|
||||
#define IMGFMT_444P10 IMGFMT_444P10_BE
|
||||
#define IMGFMT_444P9 IMGFMT_444P9_BE
|
||||
#define IMGFMT_422P16 IMGFMT_422P16_BE
|
||||
#define IMGFMT_422P10 IMGFMT_422P10_BE
|
||||
#define IMGFMT_420P16 IMGFMT_420P16_BE
|
||||
#define IMGFMT_420P10 IMGFMT_420P10_BE
|
||||
#define IMGFMT_420P9 IMGFMT_420P9_BE
|
||||
#else
|
||||
#define IMGFMT_444P16 IMGFMT_444P16_LE
|
||||
#define IMGFMT_444P10 IMGFMT_444P10_LE
|
||||
#define IMGFMT_444P9 IMGFMT_444P9_LE
|
||||
#define IMGFMT_422P16 IMGFMT_422P16_LE
|
||||
#define IMGFMT_422P10 IMGFMT_422P10_LE
|
||||
#define IMGFMT_420P16 IMGFMT_420P16_LE
|
||||
#define IMGFMT_420P10 IMGFMT_420P10_LE
|
||||
#define IMGFMT_420P9 IMGFMT_420P9_LE
|
||||
#endif
|
||||
|
||||
#define IMGFMT_IS_YUVP16_LE(fmt) (((fmt ^ IMGFMT_420P16_LE) & 0xff0000ff) == 0)
|
||||
#define IMGFMT_IS_YUVP16_BE(fmt) (((fmt ^ IMGFMT_420P16_BE) & 0xff0000ff) == 0)
|
||||
#define IMGFMT_IS_YUVP16_LE(fmt) (((fmt - 0x51000034) & 0xfc0000ff) == 0)
|
||||
#define IMGFMT_IS_YUVP16_BE(fmt) (((fmt - 0x34000051) & 0xff0000fc) == 0)
|
||||
#define IMGFMT_IS_YUVP16_NE(fmt) (((fmt ^ IMGFMT_420P16 ) & 0xff0000ff) == 0)
|
||||
#define IMGFMT_IS_YUVP16(fmt) (IMGFMT_IS_YUVP16_LE(fmt) || IMGFMT_IS_YUVP16_BE(fmt))
|
||||
|
||||
|
@ -145,10 +145,20 @@ void mp_image_setfmt(mp_image_t* mpi,unsigned int out_fmt){
|
||||
case IMGFMT_440P:
|
||||
case IMGFMT_444P16_LE:
|
||||
case IMGFMT_444P16_BE:
|
||||
case IMGFMT_444P10_LE:
|
||||
case IMGFMT_444P10_BE:
|
||||
case IMGFMT_444P9_LE:
|
||||
case IMGFMT_444P9_BE:
|
||||
case IMGFMT_422P16_LE:
|
||||
case IMGFMT_422P16_BE:
|
||||
case IMGFMT_422P10_LE:
|
||||
case IMGFMT_422P10_BE:
|
||||
case IMGFMT_420P16_LE:
|
||||
case IMGFMT_420P16_BE:
|
||||
case IMGFMT_420P10_LE:
|
||||
case IMGFMT_420P10_BE:
|
||||
case IMGFMT_420P9_LE:
|
||||
case IMGFMT_420P9_BE:
|
||||
return;
|
||||
case IMGFMT_Y800:
|
||||
case IMGFMT_Y8:
|
||||
|
@ -35,6 +35,7 @@
|
||||
|
||||
#include "vd.h"
|
||||
#include "vf.h"
|
||||
#include "libvo/video_out.h"
|
||||
|
||||
extern const vd_functions_t mpcodecs_vd_null;
|
||||
extern const vd_functions_t mpcodecs_vd_ffmpeg;
|
||||
@ -108,13 +109,12 @@ const vd_functions_t * const mpcodecs_vd_drivers[] = {
|
||||
NULL
|
||||
};
|
||||
|
||||
#include "libvo/video_out.h"
|
||||
|
||||
int mpcodecs_config_vo(sh_video_t *sh, int w, int h,
|
||||
unsigned int preferred_outfmt)
|
||||
int mpcodecs_config_vo2(sh_video_t *sh, int w, int h,
|
||||
const unsigned int *outfmts,
|
||||
unsigned int preferred_outfmt)
|
||||
{
|
||||
struct MPOpts *opts = sh->opts;
|
||||
int i, j;
|
||||
int j;
|
||||
unsigned int out_fmt = 0;
|
||||
int screen_size_x = 0;
|
||||
int screen_size_y = 0;
|
||||
@ -138,6 +138,10 @@ int mpcodecs_config_vo(sh_video_t *sh, int w, int h,
|
||||
// user wants postprocess but no pp filter yet:
|
||||
sh->vfilter = vf = vf_open_filter(opts, vf, "pp", NULL);
|
||||
}
|
||||
|
||||
if (!outfmts || sh->codec->outfmt[0] != 0xffffffff)
|
||||
outfmts = sh->codec->outfmt;
|
||||
|
||||
// check if libvo and codec has common outfmt (no conversion):
|
||||
csp_again:
|
||||
|
||||
@ -150,11 +154,11 @@ int mpcodecs_config_vo(sh_video_t *sh, int w, int h,
|
||||
}
|
||||
|
||||
j = -1;
|
||||
for (i = 0; i < CODECS_MAX_OUTFMT; i++) {
|
||||
for (int i = 0; i < CODECS_MAX_OUTFMT; i++) {
|
||||
int flags;
|
||||
out_fmt = sh->codec->outfmt[i];
|
||||
out_fmt = outfmts[i];
|
||||
if (out_fmt == (unsigned int) 0xFFFFFFFF)
|
||||
continue;
|
||||
break;
|
||||
flags = vf->query_format(vf, out_fmt);
|
||||
mp_msg(MSGT_CPLAYER, MSGL_DBG2,
|
||||
"vo_debug: query(%s) returned 0x%X (i=%d) \n",
|
||||
@ -234,7 +238,8 @@ int mpcodecs_config_vo(sh_video_t *sh, int w, int h,
|
||||
sh->vf_initialized = -1;
|
||||
return 0; // failed
|
||||
}
|
||||
out_fmt = sh->codec->outfmt[j];
|
||||
out_fmt = outfmts[j];
|
||||
sh->outfmt = out_fmt;
|
||||
mp_msg(MSGT_CPLAYER, MSGL_V, "VDec: using %s as output csp (no %d)\n",
|
||||
vo_format_name(out_fmt), j);
|
||||
sh->outfmtidx = j;
|
||||
@ -354,8 +359,7 @@ mp_image_t *mpcodecs_get_image(sh_video_t *sh, int mp_imgtype, int mp_imgflag,
|
||||
int w, int h)
|
||||
{
|
||||
mp_image_t *mpi =
|
||||
vf_get_image(sh->vfilter, sh->codec->outfmt[sh->outfmtidx], mp_imgtype,
|
||||
mp_imgflag, w, h);
|
||||
vf_get_image(sh->vfilter, sh->outfmt, mp_imgtype, mp_imgflag, w, h);
|
||||
if (mpi)
|
||||
mpi->x = mpi->y = 0;
|
||||
return mpi;
|
||||
|
@ -49,7 +49,15 @@ extern const vd_functions_t * const mpcodecs_vd_drivers[];
|
||||
#define VDCTRL_QUERY_UNSEEN_FRAMES 9 /* current decoder lag */
|
||||
|
||||
// callbacks:
|
||||
int mpcodecs_config_vo(sh_video_t *sh, int w, int h, unsigned int preferred_outfmt);
|
||||
int mpcodecs_config_vo2(sh_video_t *sh, int w, int h,
|
||||
const unsigned int *outfmts,
|
||||
unsigned int preferred_outfmt);
|
||||
static inline int mpcodecs_config_vo(sh_video_t *sh, int w, int h,
|
||||
unsigned int preferred_outfmt)
|
||||
{
|
||||
return mpcodecs_config_vo2(sh, w, h, NULL, preferred_outfmt);
|
||||
}
|
||||
|
||||
mp_image_t* mpcodecs_get_image(sh_video_t *sh, int mp_imgtype, int mp_imgflag, int w, int h);
|
||||
void mpcodecs_draw_slice(sh_video_t *sh, unsigned char** src, int* stride, int w,int h, int x, int y);
|
||||
|
||||
|
@ -501,7 +501,18 @@ static int init_vo(sh_video_t *sh, enum PixelFormat pix_fmt){
|
||||
sh->disp_h = height;
|
||||
ctx->pix_fmt = pix_fmt;
|
||||
ctx->best_csp = pixfmt2imgfmt(pix_fmt);
|
||||
if (!mpcodecs_config_vo(sh, sh->disp_w, sh->disp_h, ctx->best_csp))
|
||||
const unsigned int *supported_fmts;
|
||||
if (ctx->best_csp == IMGFMT_YV12)
|
||||
supported_fmts = (const unsigned int[])
|
||||
{IMGFMT_YV12, IMGFMT_I420, IMGFMT_IYUV, 0xffffffff};
|
||||
else if (ctx->best_csp == IMGFMT_422P)
|
||||
supported_fmts = (const unsigned int[])
|
||||
{IMGFMT_422P, IMGFMT_YV12, IMGFMT_I420, IMGFMT_IYUV,
|
||||
0xffffffff};
|
||||
else
|
||||
supported_fmts = (const unsigned int[]){ctx->best_csp, 0xffffffff};
|
||||
if (!mpcodecs_config_vo2(sh, sh->disp_w, sh->disp_h, supported_fmts,
|
||||
ctx->best_csp))
|
||||
return -1;
|
||||
ctx->vo_initialized = 1;
|
||||
}
|
||||
|
@ -68,13 +68,23 @@ static const unsigned int outfmt_list[]={
|
||||
IMGFMT_444P,
|
||||
IMGFMT_444P16_LE,
|
||||
IMGFMT_444P16_BE,
|
||||
IMGFMT_444P10_LE,
|
||||
IMGFMT_444P10_BE,
|
||||
IMGFMT_444P9_LE,
|
||||
IMGFMT_444P9_BE,
|
||||
IMGFMT_422P,
|
||||
IMGFMT_422P16_LE,
|
||||
IMGFMT_422P16_BE,
|
||||
IMGFMT_422P10_LE,
|
||||
IMGFMT_422P10_BE,
|
||||
IMGFMT_YV12,
|
||||
IMGFMT_I420,
|
||||
IMGFMT_420P16_LE,
|
||||
IMGFMT_420P16_BE,
|
||||
IMGFMT_420P10_LE,
|
||||
IMGFMT_420P10_BE,
|
||||
IMGFMT_420P9_LE,
|
||||
IMGFMT_420P9_BE,
|
||||
IMGFMT_420A,
|
||||
IMGFMT_IYUV,
|
||||
IMGFMT_YVU9,
|
||||
|
@ -119,6 +119,7 @@ typedef struct sh_video {
|
||||
int i_bps; // == bitrate (compressed bytes/sec)
|
||||
int disp_w,disp_h; // display size (filled by fileformat parser)
|
||||
// output driver/filters: (set by libmpcodecs core)
|
||||
unsigned int outfmt;
|
||||
unsigned int outfmtidx;
|
||||
struct vf_instance *vfilter; // the video filter chain, used for this video stream
|
||||
int output_flags; // query_format() results for output filters+vo
|
||||
|
15
m_option.c
15
m_option.c
@ -1108,12 +1108,27 @@ static struct {
|
||||
} mp_imgfmt_list[] = {
|
||||
{"444p16le", IMGFMT_444P16_LE},
|
||||
{"444p16be", IMGFMT_444P16_BE},
|
||||
{"444p10le", IMGFMT_444P10_LE},
|
||||
{"444p10be", IMGFMT_444P10_BE},
|
||||
{"444p9le", IMGFMT_444P9_LE},
|
||||
{"444p9be", IMGFMT_444P9_BE},
|
||||
{"422p16le", IMGFMT_422P16_LE},
|
||||
{"422p16be", IMGFMT_422P16_BE},
|
||||
{"422p10le", IMGFMT_422P10_LE},
|
||||
{"422p10be", IMGFMT_422P10_BE},
|
||||
{"420p16le", IMGFMT_420P16_LE},
|
||||
{"420p16be", IMGFMT_420P16_BE},
|
||||
{"420p10le", IMGFMT_420P10_LE},
|
||||
{"420p10be", IMGFMT_420P10_BE},
|
||||
{"420p9le", IMGFMT_420P9_LE},
|
||||
{"420p9be", IMGFMT_420P9_BE},
|
||||
{"444p16", IMGFMT_444P16},
|
||||
{"444p10", IMGFMT_444P10},
|
||||
{"444p9", IMGFMT_444P9},
|
||||
{"422p16", IMGFMT_422P16},
|
||||
{"422p10", IMGFMT_422P10},
|
||||
{"420p10", IMGFMT_420P10},
|
||||
{"420p9", IMGFMT_420P9},
|
||||
{"420p16", IMGFMT_420P16},
|
||||
{"420a", IMGFMT_420A},
|
||||
{"444p", IMGFMT_444P},
|
||||
|
Loading…
Reference in New Issue
Block a user