;=============================================================================
;  Default codecs config file. It replaces the old codecs.c file!
;  Before editing this file, please read DOCS/tech/codecs.conf.txt !
;=============================================================================

release 20030724

;=============================================================================
;                   VIDEO CODECS
;=============================================================================

; mpeg 1/2 decoding:
; Note: mpegpes is preferred for hw decoders:

videocodec mpegpes
  info "Mpeg PES output (.mpg or Dxr3/DVB card)"
  comment "for hardware decoding"
  status working
  format 0x10000001  ; mpeg 1
  format 0x10000002  ; mpeg 2
  driver mpegpes
  out MPES

videocodec mpeg12
  info "MPEG 1 or 2 (libmpeg2)"
  comment "with postprocessing"
  status working
  format 0x10000001  ; mpeg 1
  format 0x10000002  ; mpeg 2
  driver libmpeg2
;  dll "libmpeg2"
  out YV12,I420,IYUV

videocodec ffmpeg1
  info "FFmpeg MPEG 1"
  status working
  format 0x10000001  ; mpeg 1
  fourcc mpg1
  fourcc PIM1        ; Pinnacle hardware-mpeg1
  fourcc VCR2
  driver ffmpeg
  dll "mpeg1video"
  out YV12,I420,IYUV

videocodec ffmpeg2
  info "FFmpeg MPEG 2"
  status working
  format 0x10000002  ; mpeg 2
  fourcc mpg2
  driver ffmpeg
  dll "mpeg2video"
  out YV12,I420,IYUV

videocodec ffmpeg12
  info "FFmpeg MPEG 1/2"
  status working
  format 0x10000001  ; mpeg 1
  format 0x10000002  ; mpeg 2
  fourcc mpg1,mpg2
  fourcc PIM1        ; Pinnacle hardware-mpeg1
  fourcc VCR2
  driver ffmpeg
  dll "mpegvideo"
  out YV12,I420,IYUV

videocodec ffmpeg12mc
  info "FFmpeg MPEG 1/2 (XvMC)"
  status buggy
  format 0x10000001  ; mpeg 1
  format 0x10000002  ; mpeg 2
  fourcc mpg1,mpg2
  fourcc PIM1        ; Pinnacle hardware-mpeg1
  driver ffmpeg
  dll "mpegvideo_xvmc"
  out IDCT_MPEG2
  out MOCO_MPEG2

; we have only native opensource codecs for these:

videocodec nuv
  info "NuppelVideo"
  status working
  fourcc NUV1 ; NUV1 is an internal MPlayer FOURCC
  driver nuv
  out I420,IYUV

videocodec mpng
  info "PNG images decoder"
  status working
  comment "Gray scaled PNG with Alpha channel not supported"
  fourcc mpng,MPNG
  dll "libpng"
  driver mpng
  out BGR32,BGR24

videocodec mtga
  info "TGA images decoder"
  status working
  comment "Only 24bpp and 32bpp RGB TGA files supported"
  fourcc mtga,MTGA
  driver mtga
  out BGR32,BGR24

videocodec sgi
  info "SGI images decoder"
  status working
  fourcc SGI1 ; SGI1 is an internal MPlayer FOURCC
  driver sgi
  out BGR24

videocodec ffindeo3
  info "FFmpeg Intel Indeo 3.1/3.2"
  status working
  fourcc IV31,iv31
  fourcc IV32,iv32
  driver ffmpeg
  dll indeo3
  out YVU9

videocodec fli
  info "Autodesk FLI/FLC Animation"
  status working
  fourcc FLIC ; FLIC is an internal MPlayer FOURCC
  driver fli
  out BGR32,BGR24

videocodec qtrle
  info "Quicktime Animation (RLE)"
  status working
  format 0x20656C72 ; "rle "
  driver qtrle
  out BGR32,BGR24,BGR15 query

videocodec qtrpza
 info "Quicktime Apple Video"
 status working
 fourcc rpza,azpr
 driver qtrpza
 out BGR32,BGR24,BGR15

videocodec qtsmc
  info "Apple Graphics (SMC) codec"
  status working
  format 0x20636d73 ; "smc "
  driver qtsmc
  out BGR32,BGR24

videocodec qt8bps
  info "Planar RGB (Photoshop)"
  status working
  fourcc 8BPS
  driver qt8bps
  out BGR32,BGR24,BGR8 query

videocodec cyuv
  info "Creative YUV (native codec)"
  status working
  fourcc cyuv,CYUV
  driver cyuv
  out 411P
  out YUY2,UYVY
  out 422P

videocodec msrle
  info "Microsoft RLE"
  status working
  format 0x1
  format 0x2
  driver msrle
  out BGR32,BGR24,BGR16,BGR15

videocodec roqvideo
  info "Id RoQ File Video Decoder"
  status buggy
  comment "buggy"
  fourcc RoQV ; RoQV is an internal MPlayer FOURCC
  driver roqvideo
  out YV12

videocodec lzo
  info "LZO compressed"
  status working
  fourcc LZO1
  driver lzo
  dll "liblzo"
  out YV12,I420
  out BGR24 flip

videocodec theora
  info "Theora (free, reworked VP3)"
  status working
  fourcc theo,Thra
  format 0xFFFC
  driver theora
  dll libtheora
  out YV12

; prefer native codecs over win32?
; the win32 codecs probably are (better) optimized and support direct
; rendering, so this may be not the best idea...

;WIN32:

videocodec cram
  info "Microsoft Video 1"
  comment "-vf palette required for 8bpp"
  status buggy
  fourcc cram,CRAM CRAM
  fourcc msvc,MSVC CRAM
  fourcc wham,WHAM CRAM
  driver vfw
  dll "msvidc32.dll"
  out BGR24,BGR15,BGR8 static,query

videocodec cvidvfw
  info "Cinepak Video"
  status working
  fourcc cvid
  driver vfw
  dll "iccvid.dll"
;  out YUY2
;  out UYVY
  out BGR24,BGR15 static

videocodec huffyuv
  info "HuffYUV"
  status buggy
  fourcc HFYU
  driver vfw
  dll "huffyuv.dll"
  out YUY2 flip,noflip,query
;  out UYVY flip
  out BGR32,BGR24 flip,query

;NATIVE:

videocodec video1
  info "Microsoft Video 1 (native codec)"
  status working
  fourcc cram,CRAM
  fourcc msvc,MSVC
  fourcc wham,WHAM
  driver msvidc
  out BGR32,BGR24

videocodec cvid
  info "Cinepak Video (native codec)"
  status working
  fourcc cvid,CVID
  driver cinepak
  out YV12,I420,IYUV
  out YUY2
  out BGR32,BGR24

videocodec mpmszh
  info "AVImszh (native codec)"
  status working
  fourcc MSZH
  driver lcl
  out BGR24

videocodec mpzlib
  info "AVIzlib (native codec)"
  status working
  fourcc ZLIB
  driver lcl
  out BGR24

;XAnim (slow):

videocodec cvidxa
  info "XAnim's Radius Cinepak Video"
  status buggy
  fourcc cvid
  driver xanim
  dll "vid_cvid.xa"
  out YV12,IYUV,I420 static

; time to decide what to do with the mpeg4/divx variants...
; ff* is fastest...

videocodec ffhuffyuv
  info "FFmpeg HuffYUV"
  status working
  fourcc HFYU
  driver ffmpeg
  dll huffyuv
  out YUY2,422P,YV12
  out BGR32,BGR24

videocodec ffv1
  info "FFV1 (lossless codec)"
  status working
  fourcc FFV1
  driver ffmpeg
  dll ffv1
  out 411P,444P,422P,YV12,I420,IYUV,YVU9
  
videocodec ffasv1
  info "FFmpeg ASUS V1"
  status working
  fourcc ASV1
  driver ffmpeg
  dll asv1
  out YV12,I420,IYUV

videocodec ffasv2
  info "FFmpeg ASUS V2"
  status working
  fourcc ASV2
  driver ffmpeg
  dll asv2
  out YV12,I420,IYUV

videocodec ffvcr1
  info "FFmpeg ATI VCR1"
  status working
  fourcc VCR1
  driver ffmpeg
  dll vcr1
  out YVU9

videocodec ffcljr
  info "FFmpeg Cirrus Logic AccuPak (CLJR)"
  status working
  fourcc CLJR
  driver ffmpeg
  dll cljr
  out 411P

videocodec ffsvq1
  info "FFmpeg Sorenson Video v1 (SVQ1)"
  status working
  fourcc SVQ1
  driver ffmpeg
  dll svq1
  out YVU9

videocodec ffdivx
  info "FFmpeg DivX ;-) (MS MPEG-4 v3)"
  status working
  fourcc MPG3,mpg3 div3
  fourcc MP43,mp43 div3   ; M$ MPEG4 v3   (fourcc mapping to div3)
  fourcc DIV5,div5 div3   ; DivX 3.20 
  fourcc DIV6,div6 div4   ;   -||-
  fourcc DIV3,div3,DIV4,div4
  fourcc AP41 div3	  ; AngelPotion stuff
  fourcc COL1,col1,COL0,col0 ; Cool codec (based on mpg4ds32.ax)
  fourcc 3IVD,3ivd    ; divxdoctored files (3ivx.com) 
  driver ffmpeg
  dll msmpeg4
  out YV12,I420,IYUV
  
videocodec ffmp42
  info "FFmpeg M$ MPEG-4 v2"
  status working
  fourcc DIV2,div2 mp42
  fourcc MP42,mp42
  driver ffmpeg
  dll msmpeg4v2
  out YV12,I420,IYUV

videocodec ffmp41
  info "FFmpeg M$ MPEG-4 v1"
  status working
  fourcc DIV1,div1 mpg4
  fourcc MPG4,mpg4
  driver ffmpeg
  dll msmpeg4v1
  out YV12,I420,IYUV

videocodec ffwmv1
  info "FFmpeg M$ WMV1/WMV7"
  status working
  fourcc WMV1,wmv1
  driver ffmpeg
  dll wmv1
  out YV12,I420,IYUV

videocodec ffwmv2
  info "FFmpeg M$ WMV2/WMV8"
  status buggy
  fourcc WMV2,wmv2
  driver ffmpeg
  dll wmv2
  out YV12,I420,IYUV
  
videocodec ffh264
  info "FFmpeg H.264"
  status working
  fourcc H264,h264
  format 0x10000005
  driver ffmpeg
  dll h264
  out YV12,I420,IYUV

videocodec ffsvq3
  info "FFmpeg Sorenson Video v3 (SVQ3)"
  status working
  fourcc SVQ3
  driver ffmpeg
  dll svq3
  out YV12,I420,IYUV

videocodec ffodivx
  info "FFmpeg MPEG-4"
  status working
  fourcc DIVX,divx
  fourcc DIV1,div1 divx
  fourcc MP4S,mp4s	; ISO MPEG-4 Video V1
  fourcc M4S2,m4s2
  fourcc xvid,XVID,XviD,XVIX
  fourcc DX50,BLZ0 DX50
  fourcc mp4v
  format 0x4
  fourcc UMP4
  fourcc 3IV2,3iv2  ; 3ivx Delta 4   
  format 0x10000004  ; mpeg 4 es
  driver ffmpeg
  dll mpeg4 ;opendivx
  out YV12,I420,IYUV

videocodec xvid
  info "XviD (MPEG-4)"
  status working
  fourcc DIVX,divx
  fourcc xvid,XVID,XviD
  format 0x4
  driver xvid
  out YV12
  out I420
  out YUY2
  out UYVY
  out YVYU
  out BGR32,BGR24,BGR16,BGR15
  dll "libxvidcore.a"

; divx4 does direct render, and is native on linux

videocodec odivx
  info "OpenDivX API (ODIVX,DIVX4,DIVX5,XVID)"
  comment "with postprocessing"
  status working
  fourcc mp4v
  fourcc DIVX,divx
  fourcc DIV1,div1 divx
;  fourcc MP4S,mp4s	; ISO MPEG-4 Video V1
  fourcc MP43,mp43,DIV3,div3,DIV4,div4 DIV3  ; for DivX4Linux only!
  fourcc AP41 DIV3	  ; AngelPotion stuff
  fourcc xvid,XVID,XviD
  fourcc DX50,BLZ0 DX50
  format 0x4
  driver odivx
  dll "libdivxdecore.so"
  out YV12,I420,IYUV

videocodec divx4
  info "DivX4Linux API (DIVX4,DIVX5,XVID)"
  comment "with postprocessing"
  status working
  fourcc mp4v
  fourcc DIVX,divx
  fourcc DIV1,div1 divx
;  fourcc MP4S,mp4s	; ISO MPEG-4 Video V1
  fourcc MP43,mp43,DIV3,div3,DIV4,div4 DIV3  ; for DivX4Linux only!
  fourcc AP41 DIV3	  ; AngelPotion stuff
  fourcc xvid,XVID,XviD
  fourcc DX50,BLZ0 DX50
  format 0x4
  driver divx4
  dll "libdivxdecore.so"
;  out I420 ; planar direct rendering
  out YUY2
  out UYVY
  out BGR32,BGR24,BGR16,BGR15

; is divx4vfw stable enough, working everywhere and faster than divxds?

videocodec divx4vfw
  info "DivX4Windows-VFW"
  status buggy
  comment "sig11 with -framedrop"
  fourcc DIVX,divx        ; opendivx / divx4
  fourcc DIV1,div1 divx
;  fourcc MP4S,mp4s	  ; ISO MPEG-4 Video V1
  fourcc MP43,mp43,DIV3,div3,DIV4,div4 DIV3  ; for DivX4Linux only!
  fourcc AP41 DIV3	  ; AngelPotion stuff
  format 0x4
  driver vfw
  dll "divx.dll"
;  out YV12   ; buggy
  out YUY2
  out BGR32,BGR24,BGR15

; the original ones...  prefer DShow for postprocessing:

videocodec divxds
  info "DivX ;-) (MS MPEG-4 v3)"
  comment "with postprocessing"
  status working
  fourcc MP43,mp43 div3   ; fourcc mapping to div3
  fourcc DIV5,div5 div3
  fourcc DIV6,div6 div4
  fourcc DIV3,div3,DIV4,div4
  fourcc AP41 div3	  ; AngelPotion stuff
  driver dshow
  dll "divx_c32.ax"
  guid 0x82CCd3E0, 0xF71A, 0x11D0, 0x9f, 0xe5, 0x00, 0x60, 0x97, 0x78, 0xaa, 0xaa
  out YUY2,UYVY
  out BGR32,BGR24,BGR16,BGR15

videocodec divx
  info "DivX ;-) (MS MPEG-4 v3)"
  status working
  fourcc MP43,mp43 div3   ; M$ MPEG4 v3   (fourcc mapping to div3)
  fourcc DIV5,div5 div3   ; DivX 3.20 
  fourcc DIV6,div6 div4   ;   -||-
  fourcc DIV3,div3,DIV4,div4
  fourcc AP41 div3	  ; AngelPotion stuff
  driver vfw
  dll "divxc32.dll"
  out YUY2 yuvhack
  out BGR32,BGR24,BGR15
  
; hmm. we should check, maybe these are/will be playable with libavcodec:

videocodec mpeg4ds
  info "Microsoft MPEG-4 v1/v2"
  status working
  comment "with postprocessing"
  fourcc DIV2,div2 mp42
  fourcc MP4S,mp4s	; ISO MPEG-4 Video V1
  fourcc MPG4,mpg4
  fourcc MP42,mp42
  driver dshow
  dll "mpg4ds32.ax"
  guid 0x82CCD3E0, 0xF71A, 0x11D0, 0x9F, 0xE5, 0x00, 0x60, 0x97, 0x78, 0xEA, 0x66
  out YUY2
  out BGR32,BGR24,BGR16,BGR15

videocodec mpeg4
  info "Microsoft MPEG-4 v1/v2"
  status working
  fourcc MPG4,mpg4
  fourcc MP42,mp42
  fourcc DIV2 mp42
  driver vfw
  dll "mpg4c32.dll"
  out YUY2 yuvhack
  out BGR32,BGR24,BGR15

videocodec wmv8
  info "Windows Media Video 8"
  status working
  fourcc WMV2
  driver dshow
  dll "wmv8ds32.ax"
  guid 0x521fb373, 0x7654, 0x49f2, 0xbd, 0xb1, 0x0c, 0x6e, 0x66, 0x60, 0x71, 0x4f
  out YV12,I420,IYUV
  out YUY2,UYVY
  out BGR32,BGR24,BGR16,BGR15

videocodec wmv7
  info "Windows Media Video 7"
  status working
  fourcc WMV1
  driver dshow
  dll "wmvds32.ax"
  guid 0x4facbba1, 0xffd8, 0x4cd7, 0x82, 0x28, 0x61, 0xe2, 0xf6, 0x5c, 0xb1, 0xae
  out YUY2,UYVY
  out BGR32,BGR24,BGR16,BGR15

videocodec wmv9dmo
  info "Windows Media Video 9 DMO"
  status working
  fourcc WMV3
  driver dmo
  dll "wmv9dmod.dll"
  guid 0x724bb6a4, 0xe526, 0x450f, 0xaf, 0xfa, 0xab, 0x9b, 0x45, 0x12, 0x91, 0x11
  out YV12 ;,I420,IYUV
  out YUY2,UYVY
  out BGR32,BGR24,BGR16 ;,BGR15

videocodec wmvdmo
  info "Windows Media Video DMO"
  status working
  fourcc WMV1
  fourcc WMV2
  fourcc WMV3
  driver dmo
  dll "wmvdmod.dll"
  guid 0x82d353df, 0x90bd, 0x4382, 0x8b, 0xc2, 0x3f, 0x61, 0x92, 0xb7, 0x6e, 0x34
  out YV12 ;,I420,IYUV
  out YUY2,UYVY
  out BGR32,BGR24,BGR16 ;,BGR15

videocodec ubmp4
  info "UB Video MPEG 4"
  comment "black&white"
  status buggy
  fourcc mp4v UMP4 ; black&white, sometimes buggy too
  fourcc UMP4
  driver vfw
  dll "ubvmp4d.dll"
  out I420
  out UYVY


; mjpegs:
; Notes: m3jpeg+mjpeg are mmx optimized. avid is very stable but slow.
; ijpg only decodes jpeg images (no mjpg), and slow.
; Update: ffmjpeg is almost perfect (and optimized) now, prefer it to others.

videocodec ffmjpeg
  info "FFmpeg MJPEG decoder"
  status working
  fourcc MJPG,mjpg
  fourcc AVRn,AVDJ  ; AVID
  fourcc jpeg       ; MOV photo-jpeg
  fourcc mjpa       ; Apple MJPEG-A (Quicktime)
  fourcc JFIF       ; SMJPEG (Loki)
  fourcc ijpg,IJPG  ; -mf type=jpeg
  fourcc JPEG       ; SGI's AVI Photo-jpeg
  fourcc JPGL       ; lossless jpeg (pegasus codec)
  fourcc LJPG       ; lossless jpeg
  driver ffmpeg
  dll mjpeg
  out 444P
  out 422P
  out YUY2  ; queryed (conversion from yuv422p)
  out YV12,I420,IYUV
  out BGR32 ; lossless jpeg

videocodec ffmjpegb
  info "FFmpeg MJPEG-B decoder"
  status buggy
  fourcc mjpb       ; Apple MJPEG-B (Quicktime)
  driver ffmpeg
  dll mjpeg
  out 444P
  out 422P
  out YUY2  ; queryed (conversion from yuv422p)
  out YV12,I420,IYUV

; slow. usable only for standalone jpegs, like -mf, avid or photojpeg:
videocodec ijpg
  info "Independent JPEG Group's codec"
  status working
  fourcc ijpg,IJPG   ; -mf type=jpeg
  fourcc jpeg        ; MOV Photo Jpeg
  fourcc AVRn,AVDJ   ; AVID
  driver ijpg
  dll libjpeg
  out RGB24,BGR24,BGR32

; http://www.morgan-multimedia.com/dev/codec_spec.htm
videocodec m3jpeg
  info "Morgan Motion JPEG Codec"
  status working
  fourcc MJPG
  fourcc mjpa,mjpb,mjpg MJPG  ; MOV files
  fourcc dmb1 MJPG            ; MJPEG by Matrox Rainbow Runner
  driver vfw
  dll "m3jpeg32.dll"
;  out YV12,I420
  out YUY2,UYVY
  out BGR32,BGR24,BGR15

videocodec mjpeg
  info "MainConcept Motion JPEG"
  status working
  fourcc MJPG
  fourcc mjpa,mjpb,mjpg MJPG  ; MOV files
;  fourcc AVRn,AVDJ MJPG ; AVID (sometimes buggy)
  driver vfw
  dll "mcmjpg32.dll"
  out YUY2,UYVY
  out BGR32,BGR24,BGR15

videocodec avid
  info "AVID Motion JPEG"
  status working
  comment "slooooooooow but stable"
  fourcc AVRn
  fourcc AVDJ AVRn
  fourcc MJPG,mjpg AVRn
  driver vfw
  dll "AvidAVICodec.dll"
  out BGR24 flip

videocodec LEAD
  info "LEAD (M)Jpeg"
  status working
  comment "supports interlaced MJPEG"
  fourcc MJPG
  fourcc jpeg MJPG  ; MOV Photo Jpeg
  driver vfw
  dll "LCodcCMP.dll"
  out BGR24,BGR15

videocodec imagepower
  info "ImagePower MJPEG2000"
  status buggy
  fourcc IPJ2
  driver vfw
  dll "jp2avi.dll"
  out BGR32,BGR24,BGR15

videocodec m3jpeg2k
  info "Morgan MJPEG2000"
  status working
  fourcc MJ2C
  driver vfw
  dll "m3jp2k32.dll"
  out YV12,I420,IYUV
  out YUY2,UYVY
  out BGR32,BGR24,BGR15

; http://www.morgan-multimedia.com/dev/directshow_dec_spec.htm
videocodec m3jpegds
  info "Morgan MJPEG"
  status crashing
  fourcc MJPG mjpg
  fourcc mjpa,mjpb,mjpg mjpg  ; MOV files
  fourcc dmb1 mjpg            ; MJPEG by Matrox Rainbow Runner
  driver dshow
  dll "m3jpegdec.ax"
  guid 0x6988b440, 0x8352, 0x11d3, 0x9b, 0xda, 0xca, 0x86, 0x73, 0x7c, 0x71, 0x68
  out I420
  out YUY2,UYVY
  out BGR32,BGR24,BGR16,BGR15

videocodec pegasusm
  info "Pegasus Motion JPEG"
  status crashing
  fourcc MJPG
  driver vfw
;  dll "pvmjpg20.dll"	; v2.0
  dll "pvmjpg21.dll"	; v2.1
  out BGR24 flip

videocodec pegasusl
  info "Pegasus Lossless JPEG"
  status crashing
  fourcc JPGL
  fourcc MJPG JPGL
  driver vfw
  dll "pvljpg20.dll"
  out BGR24 flip

videocodec pegasusmwv
  info "Pegasus Motion Wavelet 2000"
  status crashing
  fourcc PVW2
  driver vfw
  dll "pvwv220.dll"
  out BGR24 flip

; h263: - I don't know. comments?

videocodec vivo
  info "Vivo H.263"
  status working
  fourcc VIVO,vivo vivo
  fourcc viv1,viv2 vivo
  driver vfw
  dll "ivvideo.dll"
  out BGR32,BGR24,BGR15 flip
  in BGR24

videocodec u263
  info "UB Video H.263/H.263+/H.263++ Decoder"
  status working
  fourcc U263
  fourcc vivo,VIVO U263
  fourcc viv1 U263
  driver dshow
  dll "ubv263d+.ax"
  guid 0x00af1181, 0x6ebb, 0x11d4, 0x9d, 0x5a, 0x00, 0x50, 0x04, 0x79, 0x6c, 0xc0
;  out UYVY
; BGR32,BGR16,BGR15 seems to work too
  out BGR24 flip

videocodec i263
  info "I263"
  status working
  fourcc I263,i263
;  fourcc I420,i420
  fourcc vivo,VIVO I263
  fourcc viv1 I263
  driver vfw
  dll "i263_32.drv"
  out I420
  out YUY2
  out BGR32,BGR24,BGR15

videocodec ffi263
  info "FFmpeg I263 decoder"
  status working
  fourcc I263,i263
  driver ffmpeg
  dll h263i
  out YV12,I420,IYUV

videocodec ffh263
  info "FFmpeg H263+ decoder"
  status working
  fourcc H263,U263,h263,X263
  fourcc viv1 h263
  driver ffmpeg
  dll h263
  out YV12,I420,IYUV

videocodec h263xa
  info "XAnim's CCITT H.263"
  status crashing
  fourcc H263,h263
  fourcc viv1 H263
  fourcc VIVO,vivo H263
  driver xanim
  dll "vid_h263.xa"
  out YV12,IYUV,I420

videocodec h261xa
  info "XAnim's CCITT H.261"
  status untested
  fourcc H261,h261
  driver xanim
  dll "vid_h261.xa"
  out YV12,IYUV,I420

videocodec m261
  info "M261"
  status untested
  fourcc m261,M261
  driver vfw
  dll "msh261.drv"
  out BGR32,BGR24,BGR15

; indeo:
; Note: indeo 3 is buggy, both xanim (bad decoding) and VfW (not work with DR)
; Prefer win32 ones, they are faster, and 4/5 can DR. for fallback, there are
; Xanim codecs, they provide YV12, useful for YUV display or encoding.

videocodec indeo5ds
  info "Intel Indeo 5"
  status working
  fourcc IV50,iv50
  driver dshow
  dll "ir50_32.dll"
  guid 0x30355649, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71
  out YV12,IYUV,I420
  out YUY2,UYVY
  out BGR32,BGR24,BGR16,BGR15

videocodec indeo5
  info "Intel Indeo 5"
  status working
  fourcc IV50,iv50
  driver vfwex
  dll "ir50_32.dll"
;  out YV12,I420   ; flickering
  out YUY2
  out BGR32,BGR24,BGR15

videocodec indeo4
  info "Intel Indeo 4.1"
  status working
  fourcc IV41,iv41
  driver vfw
  dll "ir41_32.dll"
  out IF09
  out BGR24,BGR15
  in YVU9

videocodec indeo3
  info "Intel Indeo 3.1/3.2"
  status working
  fourcc IV31,iv31
  fourcc IV32,iv32
  driver vfwex
  dll "ir32_32.dll"
  out IF09
  out BGR24,BGR15 flip,static
  in YVU9

videocodec indeo5xa
  info "XAnim's Intel Indeo 5"
  status working
  fourcc IV50,iv50
  driver xanim
  dll "vid_iv50.xa"
  out YVU9

videocodec indeo4xa
  info "XAnim's Intel Indeo 4.1"
  status working
  fourcc IV41,iv41
  driver xanim
  dll "vid_iv41.xa"
  out YVU9

videocodec indeo3xa
  info "XAnim's Intel Indeo 3.1/3.2"
  status working
  fourcc IV31,iv31
  fourcc IV32,iv32
  driver xanim
  dll "vid_iv32.xa"
  out YVU9

; DV:  qdv is more stable...  libdv is slow, mcdv is unstable

videocodec qdv
  info "Sony Digital Video (DV)"
  status working
  fourcc dvsl,dvsd,dvhd  ; ????
  fourcc DVSD dvsd   ; pal .avi
  fourcc "dvcp" dvsd ; pal .mov
  fourcc "dvc " dvsd ; ntsc .mov
  driver dshow
  dll "qdv.dll"
  guid 0xB1B77C00, 0xC3E4, 0x11CF, 0xAF, 0x79, 0x00, 0xAA, 0x00, 0xB6, 0x7A, 0x42
  out YUY2
  out UYVY
  out BGR24,BGR16,BGR15 ; BGR32 is buggy, at least with one sample

videocodec ffdv
  info "FFmpeg DV decoder"
  status working
  fourcc DVSD,dvsd   ; PAL
  fourcc DVCS,dvcs   ; NTSC ?
  fourcc "dvcp"      ; PAL DV in .mov
  fourcc "dvc "      ; NTSC DV in .mov
  driver ffmpeg
  dll dvvideo
  out 411P,YV12

videocodec libdv
  info "Raw DV decoder (libdv)"
  status working
  fourcc DVSD,dvsd   ; PAL
  fourcc DVCS,dvcs   ; NTSC ?
  fourcc "dvcp"      ; PAL DV in .mov
  fourcc "dvc "      ; NTSC DV in .mov
  driver libdv
  dll libdv.so.2
  out YUY2

; note: it crashes with pond.dv :(
videocodec mcdv
  info "MainConcept DV Codec"
  status working
  fourcc DVSD,dvsd   ; PAL
  fourcc DVCS,dvcs   ; NTSC ?
  fourcc CDVC,cdvc   ; ???
  fourcc "dvcp" dvsd ; PAL DV in .mov
  fourcc "dvc " dvcs ; NTSC DV in .mov
  driver vfw
  dll "mcdvd_32.dll"
  out YUY2
  out UYVY
  out BGR32,BGR24,BGR15

; 3ivx:

videocodec 3ivXxa
  info "XAnim's 3ivX Delta 3.5 plugin"
  status working
  fourcc 3IV1
  driver xanim
  dll "vid_3ivX.xa"
  out YV12,IYUV,I420

videocodec 3ivX
  info "3ivX Delta 3.5"
  status crashing
  fourcc 3IV1
  driver dshow
  dll "3ivxdmo.dll"
  guid 0x0E6772C0, 0xDD80, 0x11D4, 0xB5, 0x8f, 0xA8, 0x6B, 0x66, 0xd0, 0x61, 0x1c
  out YV12
  out YUY2
  out BGR32,BGR24,BGR16,BGR15

; experimental real video decoder using closed source codecs

videocodec rv40
  info "Linux RealPlayer 9 RV40 decoder"
  status working
  fourcc RV40,rv40
  driver realvid
  dll "drv4.so.6.0"
  out I420

videocodec rv40win
  info "Win32 RealPlayer 9 RV40 decoder"
  status working
  fourcc RV40,rv40
  driver realvid
  dll "drv43260.dll"
  out I420

videocodec rv30
  info "Linux RealPlayer 8 RV30 decoder"
  status working
  fourcc RV30,rv30
  driver realvid
  dll "drv3.so.6.0"
  out I420

videocodec rv30win
  info "Win32 RealPlayer 8 RV30 decoder"
  status working
  fourcc RV30,rv30
  driver realvid
  dll "drv33260.dll"
  out I420

videocodec rv20
  info "Linux RealPlayer 8 RV20 decoder"
  status working
  fourcc RV20,rv20
  driver realvid
  dll "drv2.so.6.0"
  out I420

videocodec rv20win
  info "Win32 RealPlayer 8 RV20 decoder"
  status working
  fourcc RV20,rv20
  driver realvid
  dll "drv23260.dll"
  out I420

; others:

videocodec ffrv10
  info "FFmpeg RV10 decoder"
  status working
  fourcc RV10,rv10
  fourcc RV13,rv13
  driver ffmpeg
  dll rv10
  out YV12,I420,IYUV

videocodec ffvp3
  info "FFmpeg's VP3-Codec"
  status untested
  fourcc VP30,vp30,VP31,vp31
  format 0x20335056 ; "VP3 " (used in .nsv files)
  driver ffmpeg
  dll "vp3"
  out YV12

videocodec vp3
  info "On2 OpenSource VP3-Codec"
  status working
  comment "For SSE-systems use fixed dll from ftp://mplayerhq.hu/MPlayer/samples/drivers32/"
  fourcc VP30,vp30,VP31,vp31
  flags align16
  driver vfwex
  dll "vp31vfw.dll"
  out YUY2
  out BGR32,BGR24,BGR15

videocodec vp4
  info "On2 VP4 Personal Codec"
  comment "Decodes also VP3"
  status working
  fourcc VP40
  fourcc VP31,VP30,vp31,vp30
  driver vfwex
  dll "vp4vfw.dll"
  out YUY2
  out BGR32,BGR24

videocodec mwv1
  info "Motion Wavelets"
  status working
  fourcc MWV1
  driver vfw
  dll "icmw_32.dll"
  out BGR24,BGR15 flip

videocodec asv2
  info "ASUS V2"
  status working
  fourcc ASV2
  driver vfw
  dll "asusasv2.dll"
  out UYVY
  out BGR32,BGR24,BGR15 flip

videocodec asv1
  info "ASUS V1"
  status working
  fourcc ASV1
  driver vfw
  dll "asusasvd.dll"
  out UYVY
  out BGR32,BGR24,BGR15 flip

videocodec ultimotion
  info "IBM Ultimotion"
  status working
  fourcc ULTI
  driver vfw
  dll "ultimo.dll"
  out YUY2,UYVY
  out BGR32,BGR24,BGR15 flip

videocodec mss1
  info "Windows Screen Video"
  status working
  fourcc MSS1
  driver dshow
  dll "msscds32.ax"
  guid 0x3301a7c4, 0x0a8d, 0x11d4, 0x91, 0x4d, 0x00, 0xc0, 0x4f, 0x61, 0x0d, 0x24
  out BGR32,BGR24,BGR16,BGR15

; CLRVIDDC.DLL needed too, with uppercase
videocodec ucod
  info "UCOD-ClearVideo"
  status working
  fourcc UCOD
  driver vfw
  dll "clrviddd.dll"
  out BGR32,BGR24,BGR15 flip

videocodec vcr2
  info "ATI VCR-2"
  status working
  fourcc VCR2
  driver vfw
  dll "ativcr2.dll"
  out YV12
  out BGR24

videocodec CJPG
  info "CJPG"
  status untested
  comment "need sample files (this dll is decompression only!)"
  fourcc CJPG
  driver vfw
  dll "CtWbJpg.DLL"
  out YUY2
  out UYVY
  out BGR24,BGR15

; our BGR15->BGR32 is bad or the DLL?
videocodec tm20
  info "TrueMotion 2.0"
  status working
  comment "YUV faulting"
  fourcc TM20
  driver dshow
  dll "tm20dec.ax"
  guid 0x4cb63e61, 0xc611, 0x11D0, 0x83, 0xaa, 0x00, 0x00, 0x92, 0x90, 0x01, 0x84
  out BGR32,BGR24,BGR16

videocodec ffsp5x
  info "SP5x codec - used by Aiptek MegaCam"
  status working
  fourcc SP53,SP54,SP55,SP56,SP57,SP58
  driver ffmpeg
  dll "sp5x"
  out YV12

videocodec sp5x
  info "SP5x codec - used by Aiptek MegaCam"
  status working
  fourcc SP53,SP54,SP55,SP56,SP57,SP58
  driver vfw
  dll "sp5x_32.dll"
  out BGR24,BGR15 flip

videocodec vivd2
  info "SoftMedia ViVD V2 codec Vfw"
  status working
  fourcc GXVE,gxve
  driver vfw
  dll "ViVD2.dll"
  out YUY2,YV12,I420,YVU9
  out BGR32,BGR24,BGR15

; quicktime codecs:

videocodec qt3ivx
  info "win32/quicktime 3IV1 (3ivx) decoder"
  status working
  fourcc 3IV1
  driver qtvideo
  dll "3ivx Delta 3.5.qtx"
  out YUY2

videocodec qth263
  info "win32/quicktime H.263 decoder"
  status crashing
  fourcc h263
  driver qtvideo
  dll "QuickTime.qts"
  out YUY2

videocodec qtrlerpza
  info "win32/quicktime RLE/RPZA decoder"
  comment "no colorspace accepted"
  status crashing
  fourcc rpza
  format 0x20656C72 ; "rle "
  driver qtvideo
  dll "QuickTime.qts"
  out BGR32,BGR24,BGR15

videocodec qtvp3
  info "win32/quicktime VP3 decoder"
  status crashing
  fourcc VP31
  driver qtvideo
  dll "On2_VP3.qtx"
  out YUY2

videocodec qtzygo
  info "win32/quicktime ZyGo decoder"
  status buggy
  comment "wrong colors"
  fourcc ZyGo,zygo,lsvx
  driver qtvideo
  dll "ZyGoVideo.qtx"
  out BGR32,RGB32

videocodec qtbhiv
  info "win32/quicktime BeHereiVideo decoder"
  comment "sample file wanted!"
  status untested
  fourcc bhiv
  driver qtvideo
  dll "BeHereiVideo.qtx"
  out YUY2

videocodec qtcvid
  info "win32/quicktime Cinepak decoder"
  status working
  fourcc cvid
  driver qtvideo
  dll "QuickTime.qts"
  out YUY2

videocodec qtindeo
  info "win32/quicktime Indeo decoder"
  status crashing
  fourcc IV31,iv31
  fourcc IV32,iv32
  fourcc IV41
  driver qtvideo
  dll "QuickTime.qts"
  out YUY2

videocodec qtmjpeg
  info "win32/quicktime MJPEG decoder"
  status crashing
  fourcc dmb1
  fourcc mjpa
  fourcc mjpb
  driver qtvideo
  dll "QuickTime.qts"
  out YUY2

videocodec qtmpeg4
  info "win32/quicktime MPEG-4 decoder"
  status crashing
  fourcc mp4v
  driver qtvideo
  dll "QuickTime.qts"
  out YUY2

videocodec qtsvq3
  info "win32/quicktime SVQ3 decoder"
  status working
  fourcc SVQ3
  driver qtvideo
  dll "QuickTimeEssentials.qtx"
  out YUY2

videocodec qtsvq1
  info "win32/quicktime SVQ1 decoder"
  status buggy
  fourcc SVQ1
  driver qtvideo
  dll "QuickTime.qts"
  out YVU9

; VSS codecs (http://vsofts.com/solutions.html):

videocodec vsslight
  info "VSS Codec Light"
  status working
  fourcc VSSV
  driver vfw
  dll "vsslight.dll"
  out BGR24 flip

videocodec vssh264
  info "VSS H.264"
  status working
  fourcc VSSH
  driver vfw
  dll "vssh264.dll"
  out BGR24 flip

videocodec vsswlt
  info "VSS Wavelet Video Codec"
  status working
  fourcc VSSW
  driver vfw
  dll "vsswlt.dll"
  out BGR24 flip

; buggy codecs:  (any volunteers for native rewrite?)

videocodec zlib
  info "AVIzlib"
  status working
  comment "24bpp only"
  fourcc ZLIB
  driver vfw
  dll "avizlib.dll"
  out BGR24 flip

videocodec mszh
  info "AVImszh"
  status working
  comment "24bpp only"
  fourcc MSZH
  driver vfw
  dll "avimszh.dll"
;  out YUY2
;  out BGR32,BGR24,BGR15
  out BGR24

videocodec alaris
  info "Alaris VideoGramPiX"
; http://www.alaris.com/movies/toocool.vgm
; Martin Schuster <schuster@ap.univie.ac.at>
  status crashing
  comment "only produces strange patterns"
  fourcc VGPX,VTLP VGPX
  driver vfwex
  dll "vgpix32d.dll"
  out UYVY
  out BGR24


; non-working codecs:

videocodec vcr1
  info "ATI VCR-1"
  status crashing
  fourcc VCR1
  driver vfw
  dll "ativcr1.dll"
  out RGB24 flip

videocodec pim1
  info "Pinnacle Hardware MPEG1"
  status crashing
  comment "no picture. use ffmpeg12!"
  fourcc PIM1
  driver vfw
  dll "pclepim1.dll"
  out BGR24 flip
;  out I420
;  out YUY2
;  out BGR32,BGR24,BGR16,BGR15

videocodec qpeg
  info "Q-Team's QPEG (www.q-team.de)"
  status working
  comment "BGR8 only!"
  fourcc Q1.0,QPEG
  fourcc Q1.1,qpeq
  driver vfw
  dll "qpeg32.dll"
  out BGR8 flip

videocodec rricm
  info "rricm"
  status crashing
  fourcc dmb1
  driver vfw
  dll "rricm.dll"
  out YUY2
  out BGR24 flip

; sample videos: http://www.techsmith.com/products/camtasia/examplevideos.asp
videocodec camtasia
  info "TechSmith Camtasia Screen Codec"
  status working
  fourcc TSCC,tscc
  driver vfw
  dll "tsccvid.dll"
  out BGR15 flip

; raw formats:  (now RGB formats are autodetected)

; these raw codecs are used mostly by tv input
; 0x20776172 is used by Quicktime ('raw ')
; 0x0 is used by AVI
; YV12,RGB|32,RGB|24.. is created by MPlayer

videocodec rawrgb32
  info "RAW RGB32"
  status working
  driver raw
  format 0x0
  format 0x20776172
  format 0x52474220
  out RGB32

videocodec rawrgb24
  info "RAW RGB24"
  status working
  driver raw
  format 0x0
  format 0x20776172
  format 0x52474218
  out RGB24

videocodec rawrgb16
  info "RAW RGB16"
  status working
  driver raw
  format 0x0
  format 0x20776172
  format 0x52474210
  out RGB16

videocodec rawbgr32flip
  info "RAW BGR32"
  status working
  driver raw
  format 0x0
  out BGR32 flip

videocodec rawbgr32
  info "RAW BGR32"
  status working
  driver raw
  format 0x0
  format 0x42475220
  out BGR32

videocodec rawbgr24flip
  info "RAW BGR24"
  status working
  driver raw
  format 0x0
  out BGR24 flip

videocodec rawbgr24
  info "RAW BGR24"
  status working
  driver raw
  format 0x0
  format 0x20776172
  format 0x42475218
  out BGR24

videocodec rawbgr16flip
  info "RAW BGR15"
  status working
  driver raw
  format 0x0
  out BGR16 flip

videocodec rawbgr16
  info "RAW BGR15"
  status working
  driver raw
  format 0x0
  format 0x20776172
  format 0x42475210
  out BGR16

videocodec rawbgr15flip
  info "RAW BGR15"
  status working
  driver raw
  format 0x0
  out BGR15 flip

videocodec rawbgr15
  info "RAW BGR15"
  status working
  driver raw
  format 0x0
  format 0x20776172
  format 0x4247520F
  out BGR15

videocodec rawbgr8flip
  info "RAW BGR8"
  status working
  driver raw
  format 0x0
  out BGR8 flip

videocodec rawbgr8
  info "RAW BGR8"
  status working
  driver raw
  format 0x0
  format 0x20776172
  format 0x42475208
  out BGR8

videocodec rawbgr1
  info "RAW BGR1"
  status working
  driver raw
  format 0x0
  format 0x20776172
  format 0x42475201
  out BGR1 flip

videocodec rawyuy2
  info "RAW YUY2"
  status working
  driver raw
  format 0x0 0x32595559
  format 0x20776172
  fourcc yuy2,YUY2
  out YUY2

videocodec rawuyvy
  info "RAW UYVY"
  status working
  driver raw
  format 0x0 0x59565955
  format 0x20776172
  fourcc uyvy,UYVY
  out UYVY

videocodec rawyv12
  info "RAW YV12"
  status working
  driver raw
  format 0x0 0x32315659
  format 0x20776172
  fourcc yv12,YV12
  out YV12

videocodec rawnv21
  info "RAW NV21"
  status working
  driver hmblck
  format 0x0 0x3132564E
  format 0x20776172
  fourcc nv21,NV21
  out YV12

videocodec rawnv12
  info "RAW NV12"
  status working
  driver hmblck
  format 0x0 0x3231564E
  format 0x20776172
  fourcc nv12,NV12
  out YV12

videocodec rawhm12
  info "RAW HM12"
  status working
  driver hmblck
  format 0x0 0x32314D48
  format 0x20776172
  fourcc hm12,HM12
  out YV12

videocodec rawi420
  info "RAW I420"
  status working
  driver raw
  format 0x0 0x30323449
  format 0x20776172
  fourcc i420,I420
  fourcc IYUV,iyuv
  out I420,IYUV

videocodec rawyvu9
  info "RAW YVU9"
  status working
  driver raw
  format 0x0 0x39555659
  format 0x20776172
  fourcc yvu9,YVU9
  out YVU9

; NULL codec - for testing.

videocodec null
  info "NULL codec (no decoding!)"
  status crashing
  comment "for unknown/unsupported codecs or testing"
  driver null
  out YV12
  out I420
  out YUY2
  out UYVY
  out YVU9
  out BGR32,BGR24,BGR16,BGR15

;=============================================================================
;                   AUDIO CODECS
;=============================================================================

audiocodec wma9dmo
  info "Windows Media Audio 9 DMO"
  status working
  format 0x162
  format 0x163
  driver dmo
  dll "wma9dmod.dll"
  guid 0x27ca0808, 0x01f5, 0x4e7a, 0x8b, 0x05, 0x87, 0xf8, 0x07, 0xa2, 0x33, 0xd1

audiocodec wmadmo
  info "Windows Media Audio DMO"
  status working
  format 0x160
  format 0x161
  format 0x162
  format 0x163
  driver dmo
  dll "wmadmod.dll"
  guid 0x2eeb4adf, 0x4578, 0x4d10, 0xbc, 0xa7, 0xbb, 0x95, 0x5f, 0x56, 0x32, 0x0a

audiocodec qdmc
  info "Quicktime QDMC/QDM2 audio decoders"
  status working
  format 0x324D4451 ; "QDM2"
  format 0x434D4451 ; "QDMC"
  driver qtaudio
  dll "QuickTime.qts"

audiocodec qclp
  info "Quicktime QCLP audio decoder"
  status working
  format 0x706C6351 ; "QCLP"
  driver qtaudio
  dll "QuickTime.qts"

audiocodec qtmace3
  info "Quicktime MACE3 audio decoder"
  status working
  format 0x3343414D ; "MAC3"
  driver qtaudio
  dll "QuickTime.qts"

audiocodec qtmace6
  info "Quicktime MACE6 audio decoder"
  status working
  format 0x3643414D ; "MAC6"
  driver qtaudio
  dll "QuickTime.qts"

audiocodec ra144
  info "RealAudio 1.0"
  status working
  format 0x345F3431 ; "14_4"
  driver realaud
  dll "14_4.so.6.0"

audiocodec ra144win
  info "Win32 RealAudio 1.0"
  status working
  format 0x345F3431 ; "14_4"
  driver realaud
  dll "14_43260.dll"

audiocodec ra288
  info "RealAudio 2.0"
  status working
  format 0x385F3832 ; "28_8"
  driver realaud
  dll "28_8.so.6.0"

audiocodec ra288win
  info "Win32 RealAudio 2.0"
  status working
  format 0x385F3832 ; "28_8"
  driver realaud
  dll "28_83260.dll"

audiocodec mpra1428
  info "RealAudio 1.0 and 2.0 native decoder"
  status working
  format 0x345F3431 ; "14_4"
  format 0x385F3832 ; "28_8"
  driver ra1428

audiocodec racook
  info "RealAudio COOK"
  status working
  format 0x6B6F6F63 ; "cook"
  driver realaud
  dll "cook.so.6.0"

audiocodec racookwin
  info "Win32 RealAudio COOK"
  status working
  format 0x6B6F6F63 ; "cook"
  driver realaud
  dll "cook3260.dll"

audiocodec rasipr
  info "RealAudio Sipro"
  status working
  format 0x72706973 ; "sipr"
  driver realaud
  dll "sipr.so.6.0"

audiocodec rasiprwin
  info "Win32 RealAudio Sipro"
  status working
  format 0x72706973 ; "sipr"
  driver realaud
  dll "sipr3260.dll"

audiocodec raatrc
  info "RealAudio ATRAC3"
  status working
  format 0x63727461 ; "atrc"
  driver realaud
  dll "atrc.so.6.0"

audiocodec raatrcwin
  info "Win32 RealAudio ATRAC3"
  status working
  format 0x63727461 ; "atrc"
  driver realaud
  dll "atrc3260.dll"

audiocodec imaadpcm
  info "IMA ADPCM"
  status working
  format 0x11
  format 0x34616d69  ; "ima4" (MOV files)
  format 0x1100736d ; "ms\x00\x11" (MOV files)
  driver imaadpcm

audiocodec msadpcm
  info "MS ADPCM"
  status working
  format 0x2
  format 0x0200736d  ; "ms\x00\x02" (MOV files)
  driver msadpcm

audiocodec dk4adpcm
  info "Duck DK4 ADPCM (rogue format number)"
  status working
  format 0x61 ; This format number was used by Duck Corp. but not officially
              ; registered with Microsoft
  driver imaadpcm

audiocodec dk3adpcm
  info "Duck DK3 ADPCM (rogue format number)"
  status working
  format 0x62 ; This format number was used by Duck Corp. but not officially
              ; registered with Microsoft
  driver dk3adpcm

audiocodec roqaudio
  info "Id RoQ File Audio Decoder"
  status working
  fourcc RoQA ; RoQA is an internal MPlayer FOURCC
  driver roqaudio

audiocodec libdv
  info "raw DV audio decoder (libdv)"
  status working
  fourcc RADV
  driver libdv
  dll libdv.so.2

audiocodec ffdv
  info "FFmpeg DV audio decoder"
  status working
  fourcc RADV
  driver ffmpeg
  dll "dvaudio"

audiocodec faad
  info "FAAD AAC (MPEG2/MPEG4 Audio) decoder"
  status working
  fourcc mp4a,MP4A
  driver faad
  dll libfaad2

audiocodec pcm
  info "Uncompressed PCM"
  status working
  format 0x1
  format 0x20776172  ; "raw " (MOV files)
  format 0x736f7774  ; "twos" (MOV files)
  format 0x74776f73  ; "sowt" (MOV files)
;;;; these are for hardware support only:  (alaw,ulaw,ima-adpcm,mpeg,ac3)
;  format 0x6
;  format 0x7
;  format 0x11
;  format 0x50
;  format 0x2000
;;;;
  driver pcm

audiocodec divx
  info "DivX audio (WMA)"
  status working
  format 0x160
  format 0x161
  driver acm
  dll "divxa32.acm"

audiocodec msadpcmacm
  info "MS ADPCM"
  status working
  format 0x2
  driver acm
  dll "msadp32.acm"

audiocodec mp3
  info "mp3lib MPEG layer-2, layer-3"
  status working
  comment "Optimized to MMX/SSE/3Dnow!"
  format 0x50        ; layer-1 && layer-2
  format 0x55        ; layer-3
  format 0x33706d2e  ; ".mp3" CBR/VBR MP3 (MOV files)
  format 0x5500736d  ; "ms\0\x55" older mp3 fcc (MOV files)
  format 0x2033504D  ; "MP3 " (used in .nsv files)
  driver mp3lib

audiocodec ffwmav1
  info "DivX audio v1 (ffmpeg)"
  status untested
  format 0x160
  driver ffmpeg
  dll "wmav1"

audiocodec ffwmav2
  info "DivX audio v2 (ffmpeg)"
  status untested
  format 0x161
  driver ffmpeg
  dll "wmav2"

audiocodec ffmac3
  info "Macintosh Audio Compression and Expansion 3:1"
  status untested
  fourcc "MAC3"
  driver ffmpeg
  dll "mace3"

audiocodec ffmac6
  info "Macintosh Audio Compression and Expansion 6:1"
  status untested
  fourcc "MAC6"
  driver ffmpeg
  dll "mace6"

audiocodec ffra144
  info "FFmpeg RealAudio 1.0"
  status untested
  format 0x345F3431 ; "14_4"
  driver ffmpeg
  dll "real_144"

audiocodec ffra288
  info "FFmpeg RealAudio 2.0"
  status untested
  format 0x385F3832 ; "28_8"
  driver ffmpeg
  dll "real_288"

audiocodec ffmp3
  info "FFmpeg MPEG layer-3 audio decoder"
  comment "integer only"
  status working
  format 0x55
  format 0x33706d2e  ; ".mp3" CBR/VBR MP3 (MOV files)
  format 0x5500736d  ; "ms\0\x55" older mp3 fcc (MOV files)
  driver ffmpeg
  dll "mp3"

audiocodec ffmp2
  info "FFmpeg MPEG layer-1 and layer-2 audio decoder"
  comment "integer only"
  status working
  format 0x50
  driver ffmpeg
  dll "mp2"

audiocodec mad
  info "libMAD MPEG layer 1-2-3"
  status working
  format 0x50
  format 0x55
  format 0x33706d2e  ; ".mp3" CBR/VBR MP3 (MOV files)
  format 0x5500736d  ; "ms\0\x55" older mp3 fcc (MOV files)
  driver libmad
  dll "libmad"

audiocodec mp3acm
  info "MPEG layer-3"
  status working
  comment "conflicts with security kernel patches"
  format 0x55
  driver acm
  dll "l3codeca.acm"

audiocodec imaadpcmacm
  info "IMA ADPCM"
  status working
  format 0x11
  driver acm
  dll "imaadp32.acm"
  
audiocodec msgsmacm
  info "MS GSM"
  status working
  format 0x31
;  format 0x32
  driver acm
  dll "msgsm32.acm"

audiocodec msnaudio
  info "MSN AUDIO"
  status working
;  format 0x31
  format 0x32
  driver acm
  dll "msnaudio.acm"

audiocodec msgsm
  info "MS GSM"
  status working
  format 0x31
  format 0x32
  fourcc agsm
  driver msgsm

audiocodec alaw
  info "aLaw"
  status working
  format 0x6
  format 0x77616C61 ; 'alaw', .mov files
  driver alaw

audiocodec ulaw
  info "uLaw"
  status working
  format 0x7
  format 0x77616c75  ; "ulaw" (MOV files)
  driver alaw

audiocodec dvdpcm
  info "Uncompressed DVD/VOB LPCM"
  status working
  format 0x10001
  driver dvdpcm

audiocodec a52
  info "AC3-liba52"
  status working
  format 0x2000
  fourcc dnet
  driver liba52
  dll "liba52"

audiocodec ac3
  info "AC3-libac3"
  comment "removed from mplayer, use liba52"
  status working
  format 0x2000
  fourcc dnet
  driver libac3
  dll "libac3"

audiocodec voxware
  info "VoxWare"
  status working
  format 0x75
  driver dshow
  dll "voxmsdec.ax"
  guid 0x73f7a062, 0x8829, 0x11d1, 0xb5, 0x50, 0x00, 0x60, 0x97, 0x24, 0x2d, 0x8d

audiocodec acelp
  info "ACELP.net Sipro Lab Audio Decoder"
  status working
  format 0x130
  driver dshow
  dll "acelpdec.ax"
  guid 0x4009f700, 0xaeba, 0x11d1, 0x83, 0x44, 0x00, 0xc0, 0x4f, 0xb9, 0x2e, 0xb7

audiocodec imc
  info "Intel Music Coder"
  status working
  comment "driver at http://codeczone.virtualave.net/FXIMCAUD.zip"
  format 0x401
  driver acm
  dll "imc32.acm"

audiocodec hwac3
  info "AC3 through SPDIF"
  status working
  format 0x2000
  fourcc dnet
  driver hwac3

audiocodec vorbis
  info "OggVorbis Audio Decoder"
  status working
  comment "OggVorbis driver using libvorbis"
  format 0xFFFE
  driver libvorbis
  dll "libvorbis"
; acm codec doesn't work, haven't tried zorannt dshow codec
;  driver acm
;  dll "vorbis.acm"

audiocodec vivoaudio
  info "Vivo G.723/Siren Audio Codec"
  status working
  format 0x111       ; vivo g.723
  format 0x112       ; siren
  driver acm
  dll "vivog723.acm"

audiocodec g72x
  info "G.711/G.721/G.723"
  status crashing
  comment "does not work yet - just noise :("
  format 0x111	    ; vivo g.723
  format 0x112	    ; vivo siren
  driver g72x
  dll "g72x.c"

audiocodec atrac3
  info "Sony ATRAC3"
  status buggy
  comment "format not accepted"
  format 0x270
  driver acm
  dll "atrac3.acm"

audiocodec ALF2
; http://www.nctsoft.com/products/NCTALFCD/
; jdp@mail.sonofon.dk
  info "ALF2"
  status working
  format 0x1FC4     ; ALF2
  driver acm
  dll "alf2cd.acm"

audiocodec truespeech
  info "DSP Group TrueSpeech(TM)"
  status working
  format 0x22
  driver acm
  dll "tssoft32.acm"

; rt32dcmp.dll needed too
audiocodec voxwarert24
  info "VoxWare RT24 speech codec"
  status working
  format 0x181c
  driver acm
  dll "nsrt2432.acm"

audiocodec lhacm
  info "Lernout & Hauspie CELP and SBC codecs"
  status working
  format 0x1101 ; CELP
  format 0x1102 ; SBC
  format 0x1103 ; SBC
  format 0x1104 ; SBC
  driver acm
  dll "lhacm.acm"

audiocodec flac
  info "Free Lossless Audio Codec"
  status untested
  flags seekable
  comment "using libmpflac or libFLAC. Internal format No"
  format 0x43614C66 ; fLaC with mmioFOURCC
  driver flac
  dll "libmpflac"

