# HG changeset patch # User Darren Salt # Date 1231952728 0 # Node ID e3930320e136dd7a98db2693486ac2120386d024 # Parent 79cf42d444a0def7d638943b0c0efe212b92832f Additional ffmpeg codecs (Dirac). diff --git a/configure.ac b/configure.ac --- a/configure.ac +++ b/configure.ac @@ -378,7 +378,7 @@ echo "/* Automatically generated */" > $ echo "/* Automatically generated */" > $ffmpeg_config_h dnl uncommon ffmpeg codecs -ffmpeg_uncommon_codecs="AASC ASV1 ASV2 AVS CSCD CYUV DVVIDEO EIGHTBPS FLIC FLV FOURXM FRAPS HUFFYUV IDCIN INTERPLAY_VIDEO KMVC LOCO MMVIDEO NUV QDRAW QPEG ROQ RPZA SMACKER SMC SNOW TRUEMOTION1 TRUEMOTION2 TSCC ULTI VCR1 VMDVIDEO WNV1 XAN_WC3 XL ZMBV ALAC AMR_NB AMR_WB LIBGSM MACE3 MACE6 SHORTEN SMACKAUD TRUESPEECH TTA VMDAUDIO PCM_ALAW PCM_MULAW PCM_S8 PCM_S16BE PCM_S16LE PCM_S24BE PCM_S24DAUD PCM_S24LE PCM_S32BE PCM_S32LE PCM_U8 PCM_U16BE PCM_U16LE PCM_U24BE PCM_U24LE PCM_U32BE PCM_U32LE INTERPLAY_DPCM ROQ_DPCM SOL_DPCM VQA XAN_DPCM ADPCM_4XM ADPCM_CT ADPCM_EA ADPCM_IMA_DK3 ADPCM_IMA_DK4 ADPCM_IMA_QT ADPCM_IMA_SMJPEG ADPCM_IMA_WAV ADPCM_IMA_WS ADPCM_MS ADPCM_SBPRO_2 ADPCM_SBPRO_3 ADPCM_SBPRO_4 ADPCM_XA ADPCM_YAMAHA" +ffmpeg_uncommon_codecs="AASC ASV1 ASV2 AVS CSCD CYUV DIRAC DVVIDEO EIGHTBPS FLIC FLV FOURXM FRAPS HUFFYUV IDCIN INTERPLAY_VIDEO KMVC LOCO MMVIDEO NUV QDRAW QPEG ROQ RPZA SMACKER SMC SNOW TRUEMOTION1 TRUEMOTION2 TSCC ULTI VCR1 VMDVIDEO WNV1 XAN_WC3 XL ZMBV ALAC AMR_NB AMR_WB LIBGSM MACE3 MACE6 SHORTEN SMACKAUD TRUESPEECH TTA VMDAUDIO PCM_ALAW PCM_MULAW PCM_S8 PCM_S16BE PCM_S16LE PCM_S24BE PCM_S24DAUD PCM_S24LE PCM_S32BE PCM_S32LE PCM_U8 PCM_U16BE PCM_U16LE PCM_U24BE PCM_U24LE PCM_U32BE PCM_U32LE INTERPLAY_DPCM ROQ_DPCM SOL_DPCM VQA XAN_DPCM ADPCM_4XM ADPCM_CT ADPCM_EA ADPCM_IMA_DK3 ADPCM_IMA_DK4 ADPCM_IMA_QT ADPCM_IMA_SMJPEG ADPCM_IMA_WAV ADPCM_IMA_WS ADPCM_MS ADPCM_SBPRO_2 ADPCM_SBPRO_3 ADPCM_SBPRO_4 ADPCM_XA ADPCM_YAMAHA" for ucname in $ffmpeg_uncommon_codecs; do config_name="CONFIG_${ucname}_DECODER" enabled_name="ENABLE_${ucname}_DECODER" diff --git a/src/combined/ffmpeg/xine_video.list b/src/combined/ffmpeg/xine_video.list --- a/src/combined/ffmpeg/xine_video.list +++ b/src/combined/ffmpeg/xine_video.list @@ -83,6 +83,7 @@ VMNC VMNC VMware Screen Codec VMNC VMNC VMware Screen Codec THEORA_RAW THEORA Theora SNOW SNOW Snow +DIRAC DIRAC Dirac # disabled codecs (ref. configure.ac) ! BMP diff --git a/src/demuxers/demux_ts.c b/src/demuxers/demux_ts.c --- a/src/demuxers/demux_ts.c +++ b/src/demuxers/demux_ts.c @@ -1457,6 +1457,10 @@ printf("Program Number is %i, looking fo this->audio_tracks_count++; break; } + else if (format_identifier == 0x64726163 /* "drac" = Dirac */ && this->videoPid == INVALID_PID) { + xprintf (this->stream->xine, XINE_VERBOSITY_DEBUG, + "demux_ts: Dirac video stream?\n"); + } } } else { #ifdef TS_PMT_LOG diff --git a/src/xine-engine/buffer.h b/src/xine-engine/buffer.h --- a/src/xine-engine/buffer.h +++ b/src/xine-engine/buffer.h @@ -193,6 +193,7 @@ extern "C" { #define BUF_VIDEO_VC1 0x02650000 #define BUF_VIDEO_VMNC 0x02660000 #define BUF_VIDEO_SNOW 0x02670000 +#define BUF_VIDEO_DIRAC 0x02680000 /* audio buffer types: (please keep in sync with buffer_types.c) */ diff --git a/src/xine-engine/buffer_types.c b/src/xine-engine/buffer_types.c --- a/src/xine-engine/buffer_types.c +++ b/src/xine-engine/buffer_types.c @@ -789,6 +789,14 @@ static const video_db_t video_db[] = { BUF_VIDEO_SNOW, "Snow" }, +{ + { + ME_FOURCC('d','r','a','c'), + 0 + }, + BUF_VIDEO_DIRAC, + "Dirac" +}, { { 0 }, 0, "last entry" } };