;  Default codecs config file. It replaces the old codecs.c file!

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

; =============== Win32/libmpeg2/ProjectMayo MPEG CODECS =====================

videocodec u263
  info "UB Video H.263+ Decoder"
  comment "added by Juanjo"
  status working
  fourcc U263
  driver dshow
  dll "ubv263d+.ax"
  guid 0x00af1181, 0x6ebb, 0x11d4, 0x9d, 0x5a, 0x00, 0x50, 0x04, 0x79, 0x6c, 0xc0
;  out I420 flip
;  out YVYU flip,noflip
;  out YV12 flip
;  out UYVY flip,noflip
;  out YUY2 flip
  out BGR24 flip

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 YV12
  out YUY2
  out BGR32,BGR24,BGR16,BGR15

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

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

videocodec mpeg4ds
  info "Microsoft MPEG-4 v1/v2"
  status working
;  comment "with postprocessing"
  fourcc DIV2,div2 mp42
  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 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

  
videocodec odivx
  info "OpenDivX (MPEG-4 v2)"
  comment "with postprocessing"
  status working
  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
  format 0x4
  driver odivx
  dll "opendivx decore"
  out YV12

videocodec divx4
  info "DivX4Linux (MPEG-4 v2,v3)"
  comment "with postprocessing"
  status working
  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
  format 0x4
  driver divx4
  dll "libdivxdecore.0"
;  out YV12   ; works, but odivx driver is faster with YV12 (DEC_USER)
;  out I420
  out YUY2
  out UYVY
  out BGR32,BGR24,BGR16,BGR15

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

videocodec mjpeg
  info "Motion JPEG"
  status working
  fourcc MJPG
  driver vfw
  dll "mcmjpg32.dll"
;  dll "m3jpeg32.dll"
  out YUY2
  out UYVY
  out BGR32,BGR24,BGR15

; =============== FFMPEG MPEG CODECS =========================

videocodec ffmjpeg
  info "FFmpeg MJPEG decoder"
  status working
  fourcc MJPG,mjpg
  driver ffmpeg
  dll mjpeg
;  out YUY2
  out YV12

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

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

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
  driver ffmpeg
  dll msmpeg4
  out YV12

videocodec ffodivx
  info "FFmpeg OpenDivX"
  status working
;  comment "doesn't support >= 4.0alpha48 movies yet"
  fourcc DIVX,divx
  fourcc DIV1,div1 divx
  fourcc MP4S,mp4s	; ISO MPEG-4 Video V1
  format 0x4
  driver ffmpeg
  dll mpeg4 ;opendivx
  out YV12

videocodec ffmpeg12
  info "FFmpeg-1"
  status working
  format 0x10000001  ; mpeg 1
  format 0x10000002  ; mpeg 2
  driver ffmpeg
  dll "mpegvideo"
  out YV12


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

; ============== OTHER STUFF =======================


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

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,I420
  out YUY2
  out BGR32,BGR24,BGR16,BGR15

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

videocodec indeo4
  info "Intel Indeo 4.1"
  status working
;  comment "upside-down"
  fourcc IV41,iv41
  driver vfw
  dll "ir41_32.dll"
  out BGR24,BGR15

videocodec indeo3
  info "Intel Indeo 3.1/3.2"
  status buggy
  comment "upside-down with some vo drivers, (no yuv)"
  fourcc IV31,iv31
  fourcc IV32,iv32
  driver vfw
  dll "ir32_32.dll"
  out BGR24,BGR15 flip

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

videocodec cram
  info "Microsoft Video 1"
  status working
  fourcc cram,CRAM,MSVC
  driver vfw
  dll "msvidc32.dll"
  out BGR24,BGR15

videocodec vcr2
  info "ATI VCR-2"
  status crashing
  comment "segfault"
  fourcc VCR2
  driver vfw
  dll "ativcr2.dll"
  out YUY2
  out BGR32,BGR24,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 I420
  out YUY2
  out BGR32,BGR24,BGR16,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 YUY2
  out BGR32,BGR24,BGR16,BGR15

videocodec tm20
  info "TrueMotion 2.0"
  status crashing
  comment "segfault in the DLL"
  fourcc TM20
  driver dshow
  dll "tm20dec.ax"
  guid 0x4cb63e61, 0xc611, 0x11D0, 0x83, 0xaa, 0x00, 0x00, 0x92, 0x90, 0x01, 0x84
;  out UYVY
  out YUY2
  out BGR32,BGR24,BGR16,BGR15

videocodec dv
  info "Sony Digital Video (DV)"
  status working
  fourcc DVSD dvsd
  driver dshow
  dll "qdv.dll"
  guid 0xB1B77C00, 0xC3E4, 0x11CF, 0xAF, 0x79, 0x00, 0xAA, 0x00, 0xB6, 0x7A, 0x42
  out YUY2
  out UYVY
  out BGR32,BGR24,BGR16,BGR15

videocodec morgands
  info "Morgan MJPEG"
  status crashing
  fourcc MJPG mjpg
  driver dshow
  dll "M3JPEGdec.ax"
  guid 0x6988b440, 0x8352, 0x11d3, 0x9b, 0xda, 0xca, 0x86, 0x73, 0x7c, 0x71, 0x68
  out YUY2
  out BGR32,BGR24,BGR16,BGR15

videocodec huffyuv
  info "HuffYUV"
  status buggy
  comment "YUY2 _or_ 24/32bpp only (depending on file encoding)"
  fourcc HFYU
  driver vfw
  dll "huffyuv.dll"
  out YUY2 flip,noflip
;  out UYVY flip
  out BGR32,BGR24 flip

videocodec mszh
  info "AVImszh"
  status crashing
  comment "calls RegEnumValueA()"
  fourcc MSZH
  driver vfw
  dll "avimszh.dll"
  out YUY2
  out BGR32,BGR24,BGR15

videocodec zlib
  info "AVIzlib"
  status crashing
  comment "calls RegEnumValueA()"
  fourcc ZLIB
  driver vfw
  dll "avizlib.dll"
  out YUY2
  out BGR32,BGR24,BGR15

videocodec mwv1
  info "Motion Wavelets"
  status crashing
  comment "decompressquery failed"
  fourcc MWV1
  driver vfw
  dll "icmw_32.dll"
;  out YV12
  out YUY2
  out BGR32,BGR24,BGR15


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

videocodec asv2
  info "ASUS V2"
  status buggy
  comment "rgb upside down, yuv ok"
  fourcc ASV2
  driver vfw
  dll "asusasv2.dll"
;  out YVYU
  out UYVY
  out BGR32,BGR24,BGR15 flip

videocodec asv1
  info "ASUS V1"
  status buggy
  comment "rgb upside down, yuv ok"
  fourcc ASV1
  driver vfw
  dll "asusasvd.dll"
;  out YVYU
  out UYVY
  out BGR32,BGR24,BGR15 flip

videocodec msrle
  info "M$ RLE"
  status working
  format 0x1
  driver rle
  dll "xa_rle8"
  out BGR32,BGR24,BGR16,BGR15

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

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

audiocodec pcm
  info "Uncompressed PCM"
  status working
  format 0x1
;;;; these are for hardware support only:  (alaw,ulaw,ima-adpcm,mpeg,ac3)
;  format 0x6
;  format 0x7
;  format 0x11
;  format 0x50
;  format 0x2000
;;;;
  driver pcm
  dll "uncompressed"

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

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

; now mp3lib is stable enough!?
audiocodec mp3
  info "MPEG layer-2, layer-3"
  status working
  comment "Optimized to MMX/SSE/3Dnow!"
  format 0x50
  format 0x55
  driver mp3lib
  dll "mp3lib (mpglib)"
  flags seekable

audiocodec ffmp3
  info "FFmpeg layer-123 audio decoder - integer only"
  status working
  format 0x50
  format 0x55
  driver ffmpeg
  dll "mpegaudio"
  flags seekable

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

audiocodec imaadpcm
  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 msgsm
  info "MS GSM"
  status working
  format 0x31
  format 0x32
  driver msgsm
  dll "xa_gsm.c"

audiocodec alaw
  info "aLaw"
  status working
  format 0x6
  driver alaw
  dll "alaw"

audiocodec ulaw
  info "uLaw"
  status working
  format 0x7
  driver alaw
  dll "ulaw"

audiocodec dvdpcm
  info "Uncompressed DVD PCM"
  status working
  format 0x10001
  driver dvdpcm
  dll "uncompressed"

audiocodec ac3
  info "AC3"
  status working
  format 0x2000
  driver libac3
  dll "libac3"

audiocodec voxware
  info "VoxWare"
  status working	; audio is bubbling
  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 crashing
  comment "DS: cannot connect Output pin"
  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
  driver hwac3
  dll "ac3-iec958.c"

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

