switch( p_dec->fmt_in.i_codec )
{
case VLC_CODEC_A52:
- case VLC_FOURCC('a','5','2','b'):
i_codec = VLC_CODEC_A52;
break;
case VLC_CODEC_EAC3:
{
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('a','e','s','3') )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_302M )
return VLC_EGENERIC;
/* Allocate the memory needed to store the decoder's structure */
/* Set callback */
if( b_packetizer )
{
- p_dec->fmt_out.i_codec = VLC_FOURCC('a','e','s','3');
+ p_dec->fmt_out.i_codec = VLC_CODEC_302M;
p_dec->pf_decode_audio = NULL;
p_dec->pf_packetize = Packetize;
case VLC_FOURCC('s','o','w','t'):
case VLC_CODEC_ALAW:
- case VLC_FOURCC('u','l','a','w'):
case VLC_CODEC_MULAW:
case VLC_CODEC_FL64:
case VLC_CODEC_S16B:
case VLC_CODEC_S8:
case VLC_CODEC_U8:
- case VLC_FOURCC('i','n','2','4'): /* Quicktime in24, bigendian int24 */
- case VLC_FOURCC('4','2','n','i'): /* Quicktime in24, little-endian int24 */
- case VLC_FOURCC('i','n','3','2'): /* Quicktime in32, bigendian int32 */
break;
default:
p_dec->fmt_out.i_codec = p_dec->fmt_in.i_codec;
p_dec->fmt_in.audio.i_bitspersample = 32;
}
- else if( p_dec->fmt_in.i_codec == VLC_FOURCC( 'i', 'n', '3', '2' ) )
- {
- /* FIXME: mplayer uses bigendian for in24 .... but here it works
- * with little endian ... weird */
- p_dec->fmt_out.i_codec = VLC_CODEC_S32L;
- p_dec->fmt_in.audio.i_bitspersample = 32;
- }
else if( p_dec->fmt_in.i_codec == VLC_CODEC_S24L ||
p_dec->fmt_in.i_codec == VLC_CODEC_S24B )
{
p_dec->fmt_out.i_codec = p_dec->fmt_in.i_codec;
p_dec->fmt_in.audio.i_bitspersample = 24;
}
- else if( p_dec->fmt_in.i_codec == VLC_FOURCC( 'i', 'n', '2', '4' ) )
- {
- p_dec->fmt_out.i_codec = VLC_CODEC_S24B;
- p_dec->fmt_in.audio.i_bitspersample = 24;
- }
- else if( p_dec->fmt_in.i_codec == VLC_FOURCC( '4', '2', 'n', 'i' ) )
- {
- p_dec->fmt_out.i_codec = VLC_CODEC_S24L;
- p_dec->fmt_in.audio.i_bitspersample = 24;
- }
else if( p_dec->fmt_in.i_codec == VLC_CODEC_S16L ||
p_dec->fmt_in.i_codec == VLC_CODEC_S16B )
{
p_sys->p_logtos16 = alawtos16;
p_dec->fmt_in.audio.i_bitspersample = 8;
}
- else if( p_dec->fmt_in.i_codec == VLC_FOURCC( 'u', 'l', 'a', 'w' ) ||
- p_dec->fmt_in.i_codec == VLC_CODEC_MULAW )
+ else if( p_dec->fmt_in.i_codec == VLC_CODEC_MULAW )
{
p_dec->fmt_out.i_codec = AOUT_FMT_S16_NE;
p_sys->p_logtos16 = ulawtos16;
p_dec->fmt_in.audio.i_original_channels;
if( p_dec->fmt_in.i_codec == VLC_CODEC_ALAW ||
- p_dec->fmt_in.i_codec == VLC_FOURCC( 'u', 'l', 'a', 'w' ) ||
p_dec->fmt_in.i_codec == VLC_CODEC_MULAW )
{
p_dec->fmt_out.audio.i_bitspersample = 16;
if( p_enc->fmt_out.i_codec == VLC_CODEC_U8 ||
p_enc->fmt_out.i_codec == VLC_CODEC_S8 ||
p_enc->fmt_out.i_codec == VLC_CODEC_ALAW ||
- p_enc->fmt_out.i_codec == VLC_FOURCC('u','l','a','w') ||
p_enc->fmt_out.i_codec == VLC_CODEC_MULAW)
{
p_enc->fmt_out.audio.i_bitspersample = 8;
else if( p_enc->fmt_out.i_codec == VLC_CODEC_U24L ||
p_enc->fmt_out.i_codec == VLC_CODEC_U24B ||
p_enc->fmt_out.i_codec == VLC_CODEC_S24L ||
- p_enc->fmt_out.i_codec == VLC_CODEC_S24B ||
- p_enc->fmt_out.i_codec == VLC_FOURCC('i','n','2','4') )
+ p_enc->fmt_out.i_codec == VLC_CODEC_S24B )
{
p_enc->fmt_out.audio.i_bitspersample = 24;
}
p_enc->fmt_out.i_codec == VLC_CODEC_U32B ||
p_enc->fmt_out.i_codec == VLC_CODEC_S32L ||
p_enc->fmt_out.i_codec == VLC_CODEC_S32B ||
- p_enc->fmt_out.i_codec == VLC_FOURCC('i','n','3','2') ||
p_enc->fmt_out.i_codec == VLC_CODEC_FI32 ||
p_enc->fmt_out.i_codec == VLC_CODEC_FL32 )
{
p_enc->fmt_in.i_codec = AOUT_FMT_S16_NE;
p_sys->i_s16tolog = ALAW;
}
- else if( p_enc->fmt_out.i_codec == VLC_FOURCC( 'u', 'l', 'a', 'w' ) ||
- p_enc->fmt_out.i_codec == VLC_CODEC_MULAW )
+ else if( p_enc->fmt_out.i_codec == VLC_CODEC_MULAW )
{
p_enc->fmt_in.audio.i_bitspersample = 16;
p_enc->fmt_in.i_codec = AOUT_FMT_S16_NE;
p_sys->b_delayed_open = true;
/* ***** Fill p_context with init values ***** */
- p_sys->p_context->codec_tag = ffmpeg_CodecTag( p_dec->fmt_in.i_codec );
+ p_sys->p_context->codec_tag = ffmpeg_CodecTag( p_dec->fmt_in.i_original_fourcc ?: p_dec->fmt_in.i_codec );
/* ***** Get configuration of ffmpeg plugin ***** */
p_sys->p_context->workaround_bugs =
input_thread_t * p_input;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('c','m','m','l') )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_CMML )
return VLC_EGENERIC;
p_dec->pf_decode_sub = DecodeBlock;
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC( 'c','v','d',' ' ) )
- {
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_CVD )
return VLC_EGENERIC;
- }
p_dec->p_sys = p_sys = malloc( sizeof( decoder_sys_t ) );
if( !p_sys )
static const codec_dll decoders_table[] =
{
/* WVC1 */
- { VLC_FOURCC('W','V','C','1'), "wvc1dmod.dll", &guid_wvc1 },
- { VLC_FOURCC('w','v','c','1'), "wvc1dmod.dll", &guid_wvc1 },
+ { VLC_CODEC_VC1, "wvc1dmod.dll", &guid_wvc1 },
/* WMV3 */
- { VLC_CODEC_WMV3, "wmv9dmod.dll", &guid_wmv9 },
- { VLC_FOURCC('w','m','v','3'), "wmv9dmod.dll", &guid_wmv9 },
- { VLC_FOURCC('W','M','V','P'), "wmv9dmod.dll", &guid_wmv9 },
- { VLC_FOURCC('w','m','v','p'), "wmv9dmod.dll", &guid_wmv9 },
+ { VLC_CODEC_WMV3, "wmv9dmod.dll", &guid_wmv9 },
/* WMV2 */
- { VLC_CODEC_WMV2, "wmvdmod.dll", &guid_wmv },
- { VLC_FOURCC('w','m','v','2'), "wmvdmod.dll", &guid_wmv },
+ { VLC_CODEC_WMV2, "wmvdmod.dll", &guid_wmv },
/* WMV1 */
- { VLC_CODEC_WMV1, "wmvdmod.dll", &guid_wmv },
- { VLC_FOURCC('w','m','v','1'), "wmvdmod.dll", &guid_wmv },
+ { VLC_CODEC_WMV1, "wmvdmod.dll", &guid_wmv },
/* Screen codecs */
{ VLC_FOURCC('M','S','S','2'), "wmsdmod.dll", &guid_wms },
{ VLC_FOURCC('m','s','s','2'), "wmsdmod.dll", &guid_wms },
{ VLC_FOURCC('M','S','S','1'), "wmsdmod.dll", &guid_wms },
{ VLC_FOURCC('m','s','s','1'), "wmsdmod.dll", &guid_wms },
/* Windows Media Video Adv */
- { VLC_FOURCC('W','M','V','A'), "wmvadvd.dll", &guid_wmva },
- { VLC_FOURCC('w','m','v','a'), "wmvadvd.dll", &guid_wmva },
- { VLC_FOURCC('W','V','P','2'), "wmvadvd.dll", &guid_wmva },
- { VLC_FOURCC('w','v','p','2'), "wmvadvd.dll", &guid_wmva },
+ { VLC_CODEC_WMVA, "wmvadvd.dll", &guid_wmva },
/* WMA 3 */
- { VLC_FOURCC('W','M','A','3'), "wma9dmod.dll", &guid_wma9 },
- { VLC_FOURCC('w','m','a','3'), "wma9dmod.dll", &guid_wma9 },
- { VLC_CODEC_WMAP, "wma9dmod.dll", &guid_wma9 },
- { VLC_FOURCC('w','m','a','p'), "wma9dmod.dll", &guid_wma9 },
+ { VLC_CODEC_WMA3, "wma9dmod.dll", &guid_wma9 },
+ { VLC_CODEC_WMAP, "wma9dmod.dll", &guid_wma9 },
/* WMA 2 */
- { VLC_CODEC_WMA2, "wma9dmod.dll", &guid_wma9 },
- { VLC_FOURCC('w','m','a','2'), "wma9dmod.dll", &guid_wma9 },
+ { VLC_CODEC_WMA2, "wma9dmod.dll", &guid_wma9 },
/* WMA Speech */
- { VLC_CODEC_WMAS, "wmspdmod.dll", &guid_wma },
- { VLC_FOURCC('w','m','a','s'), "wmspdmod.dll", &guid_wma },
+ { VLC_CODEC_WMAS, "wmspdmod.dll", &guid_wma },
/* */
{ 0, NULL, NULL }
{
/* WMV3 */
{ VLC_CODEC_WMV3, "wmvdmoe2.dll", &guid_wmv_enc2 },
- { VLC_FOURCC('w','m','v','3'), "wmvdmoe2.dll", &guid_wmv_enc2 },
/* WMV2 */
{ VLC_CODEC_WMV2, "wmvdmoe2.dll", &guid_wmv_enc2 },
- { VLC_FOURCC('w','m','v','2'), "wmvdmoe2.dll", &guid_wmv_enc2 },
/* WMV1 */
{ VLC_CODEC_WMV1, "wmvdmoe2.dll", &guid_wmv_enc2 },
- { VLC_FOURCC('w','m','v','1'), "wmvdmoe2.dll", &guid_wmv_enc2 },
/* WMA 3 */
- { VLC_FOURCC('W','M','A','3'), "wmadmoe.dll", &guid_wma_enc },
- { VLC_FOURCC('w','m','a','3'), "wmadmoe.dll", &guid_wma_enc },
+ { VLC_CODEC_WMA3, "wmadmoe.dll", &guid_wma_enc },
/* WMA 2 */
{ VLC_CODEC_WMA2, "wmadmoe.dll", &guid_wma_enc },
- { VLC_FOURCC('w','m','a','2'), "wmadmoe.dll", &guid_wma_enc },
/* */
{ 0, NULL, NULL }
dmo_input_type.majortype = MEDIATYPE_Audio;
dmo_input_type.subtype = dmo_input_type.majortype;
- dmo_input_type.subtype.Data1 = p_dec->fmt_in.i_codec;
+ dmo_input_type.subtype.Data1 = p_dec->fmt_in.i_original_fourcc ?: p_dec->fmt_in.i_codec;
fourcc_to_wf_tag( p_dec->fmt_in.i_codec, &i_tag );
if( i_tag ) dmo_input_type.subtype.Data1 = i_tag;
memcpy( &p_vih[1], p_dec->fmt_in.p_extra, p_dec->fmt_in.i_extra );
p_bih = &p_vih->bmiHeader;
- p_bih->biCompression = p_dec->fmt_in.i_codec;
+ p_bih->biCompression = p_dec->fmt_in.i_original_fourcc ?: p_dec->fmt_in.i_codec;
p_bih->biWidth = p_dec->fmt_in.video.i_width;
p_bih->biHeight = p_dec->fmt_in.video.i_height;
p_bih->biBitCount = p_dec->fmt_in.video.i_bits_per_pixel;
dmo_input_type.majortype = MEDIATYPE_Video;
dmo_input_type.subtype = dmo_input_type.majortype;
- dmo_input_type.subtype.Data1 = p_dec->fmt_in.i_codec;
+ dmo_input_type.subtype.Data1 = p_dec->fmt_in.i_original_fourcc ?: p_dec->fmt_in.i_codec
dmo_input_type.formattype = FORMAT_VideoInfo;
dmo_input_type.bFixedSizeSamples = 0;
dmo_input_type.bTemporalCompression = 1;
uint16_t i_tag;
dmo_partial_type.type = MEDIATYPE_Audio;
dmo_partial_type.subtype = dmo_partial_type.type;
- dmo_partial_type.subtype.Data1 = p_fmt->i_codec;
+ dmo_partial_type.subtype.Data1 = p_fmt->i_original_fourcc ?: p_fmt->i_codec;
fourcc_to_wf_tag( p_fmt->i_codec, &i_tag );
if( i_tag ) dmo_partial_type.subtype.Data1 = i_tag;
}
{
dmo_partial_type.type = MEDIATYPE_Video;
dmo_partial_type.subtype = dmo_partial_type.type;
- dmo_partial_type.subtype.Data1 = p_fmt->i_codec;
+ dmo_partial_type.subtype.Data1 = p_fmt->i_original_fourcc ?: p_fmt->i_codec;
}
#ifndef LOADER
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_CODEC_DTS &&
- p_dec->fmt_in.i_codec != VLC_FOURCC('d','t','s','b') )
- {
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_DTS )
return VLC_EGENERIC;
- }
/* Allocate the memory needed to store the decoder's structure */
if( ( p_dec->p_sys = p_sys = malloc(sizeof(*p_sys)) ) == NULL )
continue;
}
- /* FIXME: don't create a subpicture region with VLC_FOURCC YUVP
+ /* FIXME: don't create a subpicture region with VLC CODEC YUVP
* when it actually is a TEXT region */
/* Create new SPU region */
decoder_sys_t *p_sys;
int i_ret;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('k','a','t','e') )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_KATE )
{
return VLC_EGENERIC;
}
if( i_ret == VLC_SUCCESS )
{
p_dec->p_sys->b_packetizer = true;
- p_dec->fmt_out.i_codec = VLC_FOURCC( 'k', 'a', 't', 'e' );
+ p_dec->fmt_out.i_codec = VLC_CODEC_KATE;
}
return i_ret;
decoder_sys_t *p_sys;
uint32_t i_accel = 0;
- if( p_dec->fmt_in.i_codec != VLC_CODEC_MPGV &&
- p_dec->fmt_in.i_codec != VLC_FOURCC('m','p','g','1') &&
- /* Pinnacle hardware-mpeg1 */
- p_dec->fmt_in.i_codec != VLC_FOURCC('P','I','M','1') &&
- p_dec->fmt_in.i_codec != VLC_CODEC_MP2V &&
- p_dec->fmt_in.i_codec != VLC_FOURCC('m','p','g','2') &&
- p_dec->fmt_in.i_codec != VLC_FOURCC('h','d','v','2') )
- {
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_MPGV )
return VLC_EGENERIC;
+ /* Select onl recognized original format (standard mpeg video) */
+ switch( p_dec->fmt_in.i_original_fourcc )
+ {
+ case VLC_FOURCC('m','p','g','1'):
+ case VLC_FOURCC('m','p','g','2'):
+ case VLC_FOURCC('m','p','g','v'):
+ case VLC_FOURCC('P','I','M','1'):
+ case VLC_FOURCC('h','d','v','2'):
+ break;
+ default:
+ if( p_dec->fmt_in.i_original_fourcc )
+ return VLC_EGENERIC;
+ break;
}
/* Allocate the memory needed to store the decoder's structure */
{
/* DVD LPCM */
case VLC_CODEC_DVD_LPCM:
- case VLC_FOURCC('l','p','c','b'):
b_dvd = true;
break;
/* BD LPCM */
{
/* Planar YUV */
case VLC_CODEC_H261:
- case VLC_FOURCC('H','2','6','1'):
break;
default:
switch( p_dec->fmt_in.i_codec )
{
- case VLC_CODEC_H264: /* H.264 */
- case VLC_FOURCC('c','v','i','d'): /* Cinepak */
+ case VLC_CODEC_H264:
+ case VLC_CODEC_CINEPAK:
case VLC_FOURCC('I','V','4','1'): /* Indeo Video IV */
case VLC_FOURCC('i','v','4','1'): /* dto. */
#ifdef __APPLE__
case VLC_FOURCC('p','x','l','t'): /* Pixlet */
#endif
- case VLC_FOURCC('d','v','1','n'): /* DVC Pro 100 NTSC */
- case VLC_FOURCC('d','v','1','p'): /* DVC Pro 100 PAL */
- case VLC_FOURCC('d','v','h','p'): /* DVC PRO HD 720p */
- case VLC_FOURCC('d','v','h','6'): /* DVC PRO HD 1080i 60 */
- case VLC_FOURCC('d','v','h','5'): /* DVC PRO HD 1080i 50 */
-
+ case VLC_CODEC_DV:
case VLC_CODEC_SVQ3: /* Sorenson v3 */
/* case VLC_CODEC_SVQ1: Sorenson v1
case VLC_FOURCC('Z','y','G','o'):
case VLC_FOURCC('V','P','3','1'):
case VLC_FOURCC('3','I','V','1'): */
- case VLC_CODEC_QTRLE: /* QuickTime animation (RLE) */
- case VLC_CODEC_RPZA: /* QuickTime Apple Video */
- case VLC_FOURCC('a','z','p','r'): /* QuickTime animation (RLE) */
+ case VLC_CODEC_QTRLE:
+ case VLC_CODEC_RPZA:
#ifdef LOADER
p_dec->p_sys = NULL;
p_dec->pf_decode_video = DecodeVideo;
p_dec->p_sys = p_sys;
p_dec->pf_decode_audio = DecodeAudio;
- memcpy( fcc, &p_dec->fmt_in.i_codec, 4 );
+ if( p_dec->fmt_in.i_original_fourcc )
+ memcpy( fcc, &p_dec->fmt_in.i_original_fourcc, 4 );
+ else
+ memcpy( fcc, &p_dec->fmt_in.i_codec, 4 );
#ifdef __APPLE__
EnterMovies();
return VLC_EGENERIC;
}
- memcpy( fcc, &p_dec->fmt_in.i_codec, 4 );
+ if( p_dec->fmt_in.i_original_fourcc )
+ memcpy( fcc, &p_dec->fmt_in.i_original_fourcc, 4 );
+ else
+ memcpy( fcc, &p_dec->fmt_in.i_codec, 4 );
+
msg_Dbg( p_dec, "quicktime_video %4.4s %dx%d",
fcc, p_dec->fmt_in.video.i_width, p_dec->fmt_in.video.i_height );
case VLC_CODEC_I422:
case VLC_CODEC_I420:
case VLC_CODEC_YV12:
- case VLC_FOURCC('I','Y','U','V'):
case VLC_CODEC_I411:
case VLC_CODEC_I410:
- case VLC_FOURCC('Y','V','U','9'):
- case VLC_FOURCC('Y','4','2','B'):
- case VLC_FOURCC('Y','4','1','B'):
+ case VLC_CODEC_GREY:
+ case VLC_CODEC_YUVP:
/* Packed YUV */
case VLC_CODEC_YUYV:
- case VLC_FOURCC('Y','8','0','0'):
+ case VLC_CODEC_YVYU:
case VLC_CODEC_UYVY:
- case VLC_FOURCC('H','D','Y','C'):
+ case VLC_CODEC_VYUY:
/* RGB */
case VLC_CODEC_RGB32:
case VLC_CODEC_RGB24:
case VLC_CODEC_RGB16:
case VLC_CODEC_RGB15:
- break;
- case VLC_FOURCC('2','V','u','y'):
- case VLC_FOURCC('2','v','u','y'):
- case VLC_FOURCC('A','V','U','I'):
- p_dec->fmt_in.i_codec = VLC_CODEC_UYVY;
- break;
- case VLC_FOURCC('y','v','1','2'):
- p_dec->fmt_in.i_codec = VLC_CODEC_YV12;
+ case VLC_CODEC_RGB8:
+ case VLC_CODEC_RGBP:
break;
default:
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys = p_dec->p_sys;
- if( p_dec->fmt_in.i_codec != VLC_CODEC_SPEEX
- && p_dec->fmt_in.i_codec != VLC_FOURCC('s', 'p', 'x', 'r') )
- {
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_SPEEX )
return VLC_EGENERIC;
- }
/* Allocate the memory needed to store the decoder's structure */
if( ( p_dec->p_sys = p_sys =
being invoked on a Speex stream arriving via RTP.
A special decoder callback is used.
*/
- if (p_dec->fmt_in.i_codec == VLC_FOURCC('s', 'p', 'x', 'r'))
+ if (p_dec->fmt_in.i_original_fourcc == VLC_FOURCC('s', 'p', 'x', 'r'))
{
msg_Dbg( p_dec, "Using RTP version of Speex decoder @ rate %d.",
p_dec->fmt_in.audio.i_rate );
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_CODEC_SPU &&
- p_dec->fmt_in.i_codec != VLC_FOURCC( 's','p','u','b' ) )
- {
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_SPU )
return VLC_EGENERIC;
- }
p_dec->p_sys = p_sys = malloc( sizeof( decoder_sys_t ) );
{
case VLC_CODEC_SUBT:
case VLC_CODEC_SSA:
- case VLC_FOURCC('t','1','4','0'):
+ case VLC_CODEC_ITU_T140:
break;
default:
return VLC_EGENERIC;
char *psz_charset = NULL;
/* First try demux-specified encoding */
- if( p_dec->fmt_in.i_codec == VLC_FOURCC('t','1','4','0') )
+ if( p_dec->fmt_in.i_codec == VLC_CODEC_ITU_T140 )
psz_charset = strdup( "UTF-8" ); /* IUT T.140 is always using UTF-8 */
else
if( p_dec->fmt_in.subs.psz_encoding && *p_dec->fmt_in.subs.psz_encoding )
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('u','s','f',' ') )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_USF )
return VLC_EGENERIC;
/* Allocate the memory needed to store the decoder's structure */
msg_Err( p_this, "Only UTF-8 encoding supported" );
return VLC_EGENERIC;
}
- case VLC_FOURCC('t','1','4','0'):
+ case VLC_CODEC_ITU_T140:
break;
default:
if( !p_enc->b_force )
return VLC_EGENERIC;
- p_enc->fmt_out.i_codec = VLC_FOURCC('t','1','4','0');
+ p_enc->fmt_out.i_codec = VLC_CODEC_ITU_T140;
}
p_enc->p_sys = NULL;
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC( 'o','g','t',' ' ) )
- {
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_OGT )
return VLC_EGENERIC;
- }
p_dec->p_sys = p_sys = calloc( 1, sizeof( decoder_sys_t ) );
if( p_sys == NULL )
p_sys->i_state = SUBTITLE_BLOCK_EMPTY;
p_sys->p_spu = NULL;
- es_format_Init( &p_dec->fmt_out, SPU_ES, VLC_FOURCC( 'o','g','t',' ' ) );
+ es_format_Init( &p_dec->fmt_out, SPU_ES, VLC_CODEC_OGT );
p_dec->pf_decode_sub = Decode;
p_dec->pf_packetize = Packetize;
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('w','m','a','1') &&
- p_dec->fmt_in.i_codec != VLC_CODEC_WMA1 &&
- p_dec->fmt_in.i_codec != VLC_FOURCC('w','m','a','2') &&
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_WMA1 &&
p_dec->fmt_in.i_codec != VLC_CODEC_WMA2 )
{
return VLC_EGENERIC;
wfx.rate, wfx.bitrate, wfx.channels, wfx.blockalign,
wfx.bitspersample );
- if( p_dec->fmt_in.i_codec == VLC_FOURCC('w','m','a','1')
- || p_dec->fmt_in.i_codec == VLC_CODEC_WMA1 )
+ if( p_dec->fmt_in.i_codec == VLC_CODEC_WMA1 )
wfx.codec_id = ASF_CODEC_ID_WMAV1;
- else if( p_dec->fmt_in.i_codec == VLC_CODEC_WMA2
- || p_dec->fmt_in.i_codec == VLC_FOURCC('w','m','a','2') )
+ else if( p_dec->fmt_in.i_codec == VLC_CODEC_WMA2 )
wfx.codec_id = ASF_CODEC_ID_WMAV2;
wfx.datalen = p_dec->fmt_in.i_extra;
#ifdef __GLIBC__
mtrace();
#endif
- if( p_dec->fmt_in.i_codec != VLC_CODEC_MPGV &&
- p_dec->fmt_in.i_codec != VLC_FOURCC('m','p','g','1') &&
- /* Pinnacle hardware-mpeg1 */
- p_dec->fmt_in.i_codec != VLC_FOURCC('P','I','M','1') &&
- /* VIA hardware-mpeg2 */
- p_dec->fmt_in.i_codec != VLC_FOURCC('X','x','M','C') &&
- /* ATI Video */
- p_dec->fmt_in.i_codec != VLC_FOURCC('V','C','R','2') &&
- p_dec->fmt_in.i_codec != VLC_FOURCC('m','p','g','2') )
- {
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_MPGV )
return VLC_EGENERIC;
+ /* Select onl recognized original format (standard mpeg video) */
+ switch( p_dec->fmt_in.i_original_fourcc )
+ {
+ case VLC_FOURCC('m','p','g','1'):
+ case VLC_FOURCC('m','p','g','2'):
+ case VLC_FOURCC('m','p','g','v'):
+ /* Pinnacle hardware-mpeg1 */
+ case VLC_FOURCC('P','I','M','1'):
+ /* VIA hardware-mpeg2 */
+ case VLC_FOURCC('X','x','M','C'):
+ /* ATI Video */
+ case VLC_FOURCC('V','C','R','2'):
+ case VLC_FOURCC('m','p','g','2'):
+ break;
+ default:
+ if( p_dec->fmt_in.i_original_fourcc )
+ return VLC_EGENERIC;
+ break;
}
msg_Dbg(p_dec, "OpenDecoder Entering");
/* This is a hack */
if( i_codec_id == CODEC_ID_MP2 )
i_codec_id = CODEC_ID_MP3;
- codec->codec_tag = p_input->p_fmt->i_codec;
+ codec->codec_tag = p_input->p_fmt->i_original_fourcc ?: p_input->p_fmt->i_codec;
#endif
codec->codec_id = i_codec_id;
tk->i_samplesize = tk->i_blocksize;
}
- if( tk->i_codec == VLC_FOURCC( 'v', 'o', 'r', 'b' ) )
+ if( tk->i_codec == VLC_CODEC_VORBIS )
{
tk->i_blocksize = 0; /* fix vorbis VBR decoding */
}
* - Size of the next packet, and so on ...
*/
- if( tk->i_codec == VLC_FOURCC( 'v', 'o', 'r', 'b' ) )
+ if( tk->i_codec == VLC_CODEC_VORBIS )
{
uint8_t *p_extra = fmt.p_extra;
size_t i_extra = fmt.i_extra;
switch( p_vids->p_bih->biBitCount )
{
case 32:
- tk->i_codec = VLC_FOURCC('R','V','3','2');
+ tk->i_codec = VLC_CODEC_RGB32;
break;
case 24:
- tk->i_codec = VLC_FOURCC('R','V','2','4');
+ tk->i_codec = VLC_CODEC_RGB24;
break;
case 16: /* Yes it is RV15 */
case 15:
- tk->i_codec = VLC_FOURCC('R','V','1','5');
+ tk->i_codec = VLC_CODEC_RGB15;
break;
case 9: /* <- TODO check that */
- tk->i_codec = VLC_FOURCC( 'Y', 'V', 'U', '9' );
+ tk->i_codec = VLC_CODEC_I410;
break;
case 8: /* <- TODO check that */
- tk->i_codec = VLC_FOURCC('Y','8','0','0');
+ tk->i_codec = VLC_CODEC_GREY;
break;
}
es_format_Init( &fmt, VIDEO_ES, tk->i_codec );
switch( tk->i_codec )
{
- case VLC_FOURCC('R','V','2','4'):
- case VLC_FOURCC('R','V','3','2'):
+ case VLC_CODEC_RGB24:
+ case VLC_CODEC_RGB32:
fmt.video.i_rmask = 0x00ff0000;
fmt.video.i_gmask = 0x0000ff00;
fmt.video.i_bmask = 0x000000ff;
break;
- case VLC_FOURCC('R','V','1','5'):
+ case VLC_CODEC_RGB15:
fmt.video.i_rmask = 0x7c00;
fmt.video.i_gmask = 0x03e0;
fmt.video.i_bmask = 0x001f;
if( tk->i_codec == VLC_CODEC_MP4V &&
!strncasecmp( (char*)&p_strh->i_handler, "XVID", 4 ) )
{
- fmt.i_codec = VLC_FOURCC( 'X', 'V', 'I', 'D' );
+ fmt.i_codec =
+ fmt.i_original_fourcc = VLC_FOURCC( 'X', 'V', 'I', 'D' );
}
}
tk->i_samplesize = 0;
case( AVIFOURCC_txts):
tk->i_cat = SPU_ES;
- tk->i_codec = VLC_FOURCC( 's', 'u', 'b', 't' );
+ tk->i_codec = VLC_CODEC_SUBT;
msg_Dbg( p_demux, "stream[%d] subtitles", i );
es_format_Init( &fmt, SPU_ES, tk->i_codec );
break;
return VLC_EGENERIC;
}
- p_sys->fmt.i_codec = VLC_FOURCC( psz_fourcc[0], psz_fourcc[1],
- psz_fourcc[2], psz_fourcc[3] );
+ p_sys->fmt.i_codec = vlc_fourcc_GetCodec( AUDIO_ES,
+ VLC_FOURCC( psz_fourcc[0], psz_fourcc[1],
+ psz_fourcc[2], psz_fourcc[3] ) );
free( psz_fourcc );
// get the bits per sample ratio based on codec
switch( p_sys->fmt.i_codec )
{
- case VLC_FOURCC( 'f', 'l', '6', '4' ):
+ case VLC_CODEC_FL64:
p_sys->fmt.audio.i_bitspersample = 64;
break;
- case VLC_FOURCC( 'f', 'l', '3', '2' ):
- case VLC_FOURCC( 's', '3', '2', 'l' ):
- case VLC_FOURCC( 's', '3', '2', 'b' ):
- case VLC_FOURCC( 'i', 'n', '3', '2' ):
+ case VLC_CODEC_FL32:
+ case VLC_CODEC_S32L:
+ case VLC_CODEC_S32B:
p_sys->fmt.audio.i_bitspersample = 32;
break;
- case VLC_FOURCC( 's', '2', '4', 'l' ):
- case VLC_FOURCC( 's', '2', '4', 'b' ):
- case VLC_FOURCC( 'i', 'n', '2', '4' ):
- case VLC_FOURCC( '4', '2', 'n', 'i' ):
+ case VLC_CODEC_S24L:
+ case VLC_CODEC_S24B:
p_sys->fmt.audio.i_bitspersample = 24;
break;
- case VLC_FOURCC( 's', '1', '6', 'l' ):
- case VLC_FOURCC( 's', '1', '6', 'b' ):
+ case VLC_CODEC_S16L:
+ case VLC_CODEC_S16B:
p_sys->fmt.audio.i_bitspersample = 16;
break;
- case VLC_FOURCC( 's', '8', ' ', ' ' ):
- case VLC_FOURCC( 'u', '8', ' ', ' ' ):
+ case VLC_CODEC_S8:
+ case VLC_CODEC_U8:
p_sys->fmt.audio.i_bitspersample = 8;
break;
{
p_fmt->i_cat = AUDIO_ES;
p_fmt->b_packetized = true;
- p_fmt->i_codec = VLC_FOURCC('a','e','s','3');
+ p_fmt->i_codec = VLC_CODEC_302M;
}
else
{
p_sys->f_fps = 0.0;
/* Load the packetizer */
- es_format_Init( &fmt, VIDEO_ES, VLC_FOURCC( 'W', 'V', 'C', '1' ) );
+ es_format_Init( &fmt, VIDEO_ES, VLC_CODEC_VC1 );
p_sys->p_packetizer = demux_PacketizerNew( p_demux, &fmt, "VC-1" );
if( !p_sys->p_packetizer )
{
p_dec->pf_decode_sub = NULL;
/* */
- es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC('I','4','2','0') );
+ es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_CODEC_I420 );
p_dec->fmt_out.video.i_width = 100;
p_dec->fmt_out.video.i_height = 100;
p_dec->fmt_out.video.i_aspect = VOUT_ASPECT_FACTOR;
switch( p_input->p_fmt->i_codec )
{
- case VLC_FOURCC( 'a', '5', '2', ' ' ):
+ case VLC_CODEC_A52:
tk->i_tag = WAVE_FORMAT_A52;
tk->psz_name = "A/52";
i_bitspersample = 0;
break;
- case VLC_FOURCC( 'm', 'p', '4', 'a' ):
+ case VLC_CODEC_MP4A:
tk->i_tag = WAVE_FORMAT_AAC;
tk->psz_name = "MPEG-4 Audio";
i_bitspersample = 0;
break;
- case VLC_FOURCC( 'm', 'p', 'g', 'a' ):
+ case VLC_CODEC_MPGA:
#if 1
tk->psz_name = "MPEG Audio Layer 3";
tk->i_tag = WAVE_FORMAT_MPEGLAYER3;
i_extra = 22;
break;
#endif
- case VLC_FOURCC( 'w', 'm', 'a', '1' ):
+ case VLC_CODEC_WMA1:
tk->psz_name = "Windows Media Audio v1";
tk->i_tag = WAVE_FORMAT_WMA1;
tk->b_audio_correction = true;
break;
- case VLC_FOURCC( 'w', 'm', 'a', ' ' ):
- case VLC_FOURCC( 'w', 'm', 'a', '2' ):
+ case VLC_CODEC_WMA2:
tk->psz_name= "Windows Media Audio (v2) 7, 8 and 9 Series";
tk->i_tag = WAVE_FORMAT_WMA2;
tk->b_audio_correction = true;
break;
- case VLC_FOURCC( 'w', 'm', 'a', 'p' ):
+ case VLC_CODEC_WMAP:
tk->psz_name = "Windows Media Audio 9 Professional";
tk->i_tag = WAVE_FORMAT_WMAP;
tk->b_audio_correction = true;
break;
- case VLC_FOURCC( 'w', 'm', 'a', 'l' ):
+ case VLC_CODEC_WMAL:
tk->psz_name = "Windows Media Audio 9 Lossless";
tk->i_tag = WAVE_FORMAT_WMAL;
tk->b_audio_correction = true;
break;
/* raw codec */
- case VLC_FOURCC( 'u', '8', ' ', ' ' ):
+ case VLC_CODEC_U8:
tk->psz_name = "Raw audio 8bits";
tk->i_tag = WAVE_FORMAT_PCM;
i_blockalign= p_input->p_fmt->audio.i_channels;
i_bitspersample = 8;
break;
- case VLC_FOURCC( 's', '1', '6', 'l' ):
+ case VLC_CODEC_S16L:
tk->psz_name = "Raw audio 16bits";
tk->i_tag = WAVE_FORMAT_PCM;
i_blockalign= 2 * p_input->p_fmt->audio.i_channels;
i_bitspersample = 16;
break;
- case VLC_FOURCC( 's', '2', '4', 'l' ):
+ case VLC_CODEC_S24L:
tk->psz_name = "Raw audio 24bits";
tk->i_tag = WAVE_FORMAT_PCM;
i_blockalign= 3 * p_input->p_fmt->audio.i_channels;
i_bitspersample = 24;
break;
- case VLC_FOURCC( 's', '3', '2', 'l' ):
+ case VLC_CODEC_S32L:
tk->psz_name = "Raw audio 32bits";
tk->i_tag = WAVE_FORMAT_PCM;
i_blockalign= 4 * p_input->p_fmt->audio.i_channels;
uint8_t *p_codec_extra = NULL;
int i_codec_extra = 0;
- if( p_input->p_fmt->i_codec == VLC_FOURCC('m','p','4','v') )
+ if( p_input->p_fmt->i_codec == VLC_CODEC_MP4V )
{
tk->psz_name = "MPEG-4 Video";
tk->i_fourcc = VLC_FOURCC( 'M', 'P', '4', 'S' );
}
- else if( p_input->p_fmt->i_codec == VLC_FOURCC('D','I','V','3') )
+ else if( p_input->p_fmt->i_codec == VLC_CODEC_DIV3 )
{
tk->psz_name = "MSMPEG-4 V3 Video";
tk->i_fourcc = VLC_FOURCC( 'M', 'P', '4', '3' );
}
- else if( p_input->p_fmt->i_codec == VLC_FOURCC('D','I','V','2') )
+ else if( p_input->p_fmt->i_codec == VLC_CODEC_DIV2 )
{
tk->psz_name = "MSMPEG-4 V2 Video";
tk->i_fourcc = VLC_FOURCC( 'M', 'P', '4', '2' );
}
- else if( p_input->p_fmt->i_codec == VLC_FOURCC('D','I','V','1') )
+ else if( p_input->p_fmt->i_codec == VLC_CODEC_DIV2 )
{
tk->psz_name = "MSMPEG-4 V1 Video";
tk->i_fourcc = VLC_FOURCC( 'M', 'P', 'G', '4' );
}
- else if( p_input->p_fmt->i_codec == VLC_FOURCC('W','M','V','1') )
+ else if( p_input->p_fmt->i_codec == VLC_CODEC_WMV1 )
{
tk->psz_name = "Windows Media Video 7";
tk->i_fourcc = VLC_FOURCC( 'W', 'M', 'V', '1' );
}
- else if( p_input->p_fmt->i_codec == VLC_FOURCC('W','M','V','2') )
+ else if( p_input->p_fmt->i_codec == VLC_CODEC_WMV2 )
{
tk->psz_name = "Windows Media Video 8";
tk->i_fourcc = VLC_FOURCC( 'W', 'M', 'V', '2' );
}
- else if( p_input->p_fmt->i_codec == VLC_FOURCC('W','M','V','3') )
+ else if( p_input->p_fmt->i_codec == VLC_CODEC_WMV3 )
{
tk->psz_name = "Windows Media Video 9";
tk->i_fourcc = VLC_FOURCC( 'W', 'M', 'V', '3' );
}
- else if( p_input->p_fmt->i_codec == VLC_FOURCC('W','V','C','1') )
+ else if( p_input->p_fmt->i_codec == VLC_CODEC_VC1 )
{
tk->psz_name = "Windows Media Video 9 Advanced Profile";
tk->i_fourcc = VLC_FOURCC( 'W', 'V', 'C', '1' );
}
}
}
- else if( p_input->p_fmt->i_codec == VLC_FOURCC('h','2','6','4') )
+ else if( p_input->p_fmt->i_codec == VLC_CODEC_H264 )
{
tk->psz_name = "H.264/MPEG-4 AVC";
tk->i_fourcc = VLC_FOURCC('h','2','6','4');
else
{
tk->psz_name = _("Unknown Video");
- tk->i_fourcc = p_input->p_fmt->i_codec;
+ tk->i_fourcc = p_input->p_fmt->i_original_fourcc ?: p_input->p_fmt->i_codec;
}
if( !i_codec_extra && p_fmt->i_extra > 0 )
{
switch( p_input->p_fmt->i_codec )
{
- case VLC_FOURCC( 'a', '5', '2', ' ' ):
+ case VLC_CODEC_A52:
p_wf->wFormatTag = WAVE_FORMAT_A52;
break;
- case VLC_FOURCC( 'm', 'p', 'g', 'a' ):
+ case VLC_CODEC_MPGA:
p_wf->wFormatTag = WAVE_FORMAT_MPEGLAYER3;
break;
- case VLC_FOURCC( 'w', 'm', 'a', '1' ):
+ case VLC_CODEC_WMA1:
p_wf->wFormatTag = WAVE_FORMAT_WMA1;
break;
- case VLC_FOURCC( 'w', 'm', 'a', ' ' ):
- case VLC_FOURCC( 'w', 'm', 'a', '2' ):
+ case VLC_CODEC_WMA2:
p_wf->wFormatTag = WAVE_FORMAT_WMA2;
break;
- case VLC_FOURCC( 'w', 'm', 'a', 'p' ):
+ case VLC_CODEC_WMAP:
p_wf->wFormatTag = WAVE_FORMAT_WMAP;
break;
- case VLC_FOURCC( 'w', 'm', 'a', 'l' ):
+ case VLC_CODEC_WMAL:
p_wf->wFormatTag = WAVE_FORMAT_WMAL;
break;
/* raw codec */
- case VLC_FOURCC( 'u', '8', ' ', ' ' ):
+ case VLC_CODEC_U8:
p_wf->wFormatTag = WAVE_FORMAT_PCM;
p_wf->nBlockAlign= p_wf->nChannels;
p_wf->wBitsPerSample = 8;
break;
- case VLC_FOURCC( 's', '1', '6', 'l' ):
+ case VLC_CODEC_S16L:
p_wf->wFormatTag = WAVE_FORMAT_PCM;
p_wf->nBlockAlign= 2 * p_wf->nChannels;
p_wf->wBitsPerSample = 16;
break;
- case VLC_FOURCC( 's', '2', '4', 'l' ):
+ case VLC_CODEC_S24L:
p_wf->wFormatTag = WAVE_FORMAT_PCM;
p_wf->nBlockAlign= 3 * p_wf->nChannels;
p_wf->wBitsPerSample = 24;
break;
- case VLC_FOURCC( 's', '3', '2', 'l' ):
+ case VLC_CODEC_S32L:
p_wf->wFormatTag = WAVE_FORMAT_PCM;
p_wf->nBlockAlign= 4 * p_wf->nChannels;
p_wf->wBitsPerSample = 32;
p_bih->biClrImportant = 0;
switch( p_input->p_fmt->i_codec )
{
- case VLC_FOURCC( 'm', 'p', '4', 'v' ):
+ case VLC_CODEC_MP4V:
p_bih->biCompression = VLC_FOURCC( 'X', 'V', 'I', 'D' );
break;
default:
- p_bih->biCompression = p_input->p_fmt->i_codec;
+ p_bih->biCompression = p_input->p_fmt->i_original_fourcc ?: p_input->p_fmt->i_codec;
break;
}
#undef p_bih
switch( p_input->p_fmt->i_codec )
{
- case VLC_FOURCC( 'm', 'p', '4', 'a' ):
- case VLC_FOURCC( 'm', 'p', '4', 'v' ):
- case VLC_FOURCC( 'm', 'p', 'g', 'a' ):
- case VLC_FOURCC( 'm', 'p', 'g', 'v' ):
- case VLC_FOURCC( 'M', 'J', 'P', 'G' ):
- case VLC_FOURCC( 'm', 'j', 'p', 'b' ):
- case VLC_FOURCC( 'S', 'V', 'Q', '1' ):
- case VLC_FOURCC( 'S', 'V', 'Q', '3' ):
- case VLC_FOURCC( 'H', '2', '6', '3' ):
- case VLC_FOURCC( 'h', '2', '6', '4' ):
- case VLC_FOURCC( 's', 'a', 'm', 'r' ):
- case VLC_FOURCC( 's', 'a', 'w', 'b' ):
- case VLC_FOURCC( 'Y', 'V', '1', '2' ):
- case VLC_FOURCC( 'Y', 'U', 'Y', '2' ):
+ case VLC_CODEC_MP4A:
+ case VLC_CODEC_MP4V:
+ case VLC_CODEC_MPGA:
+ case VLC_CODEC_MPGV:
+ case VLC_CODEC_MJPG:
+ case VLC_CODEC_MJPGB:
+ case VLC_CODEC_SVQ1:
+ case VLC_CODEC_SVQ3:
+ case VLC_CODEC_H263:
+ case VLC_CODEC_H264:
+ case VLC_CODEC_AMR_NB:
+ case VLC_CODEC_AMR_WB:
+ case VLC_CODEC_YV12:
+ case VLC_CODEC_YUYV:
break;
- case VLC_FOURCC( 's', 'u', 'b', 't' ):
+ case VLC_CODEC_SUBT:
msg_Warn( p_mux, "subtitle track added like in .mov (even when creating .mp4)" );
break;
default:
again:
p_data = block_FifoGet( p_input->p_fifo );
- if( p_stream->fmt.i_codec == VLC_FOURCC( 'h', '2', '6', '4' ) )
+ if( p_stream->fmt.i_codec == VLC_CODEC_H264 )
{
p_data = ConvertAVC1( p_data );
}
- else if( p_stream->fmt.i_codec == VLC_FOURCC( 's', 'u', 'b', 't' ) )
+ else if( p_stream->fmt.i_codec == VLC_CODEC_SUBT )
{
p_data = ConvertSUBT( p_data );
}
switch( p_stream->fmt.i_codec )
{
- case VLC_FOURCC( 'm', 'p', '4', 'v' ):
+ case VLC_CODEC_MP4V:
i_object_type_indication = 0x20;
break;
- case VLC_FOURCC( 'm', 'p', 'g', 'v' ):
+ case VLC_CODEC_MPGV:
/* FIXME MPEG-I=0x6b, MPEG-II = 0x60 -> 0x65 */
i_object_type_indication = 0x60;
break;
- case VLC_FOURCC( 'm', 'p', '4', 'a' ):
+ case VLC_CODEC_MP4A:
/* FIXME for mpeg2-aac == 0x66->0x68 */
i_object_type_indication = 0x40;
break;
- case VLC_FOURCC( 'm', 'p', 'g', 'a' ):
+ case VLC_CODEC_MPGA:
i_object_type_indication =
p_stream->fmt.audio.i_rate < 32000 ? 0x69 : 0x6b;
break;
bo_add_fourcc( damr, "REFC" );
bo_add_8( damr, 0 );
- if( p_stream->fmt.i_codec == VLC_FOURCC( 's', 'a', 'm', 'r' ) )
+ if( p_stream->fmt.i_codec == VLC_CODEC_AMR_NB )
bo_add_16be( damr, 0x81ff ); /* Mode set (all modes for AMR_NB) */
else
bo_add_16be( damr, 0x83ff ); /* Mode set (all modes for AMR_WB) */
{
mp4_stream_t *p_stream = p_sys->pp_streams[i_track];
- if( p_stream->fmt.i_codec == VLC_FOURCC('m','p','4','v') ||
- p_stream->fmt.i_codec == VLC_FOURCC('m','p','4','a') )
+ if( p_stream->fmt.i_codec == VLC_CODEC_MP4V ||
+ p_stream->fmt.i_codec == VLC_CODEC_MP4A )
{
bo_t *box = box_new( "\251req" );
/* String length */
switch( p_stream->fmt.i_codec )
{
- case VLC_FOURCC('m','p','4','a'):
+ case VLC_CODEC_MP4A:
memcpy( fcc, "mp4a", 4 );
b_descr = true;
break;
- case VLC_FOURCC('s','a','m','r'):
- case VLC_FOURCC('s','a','w','b'):
+ case VLC_CODEC_AMR_NB:
+ case VLC_CODEC_AMR_WB:
memcpy( fcc, (char*)&p_stream->fmt.i_codec, 4 );
b_descr = true;
break;
- case VLC_FOURCC('m','p','g','a'):
+ case VLC_CODEC_MPGA:
if( p_sys->b_mov )
memcpy( fcc, ".mp3", 4 );
else
/* SoundDescription */
if( p_sys->b_mov &&
- p_stream->fmt.i_codec == VLC_FOURCC('m','p','4','a') )
+ p_stream->fmt.i_codec == VLC_CODEC_MP4A )
{
bo_add_16be( soun, 1 ); // version 1;
}
/* Extended data for SoundDescription V1 */
if( p_sys->b_mov &&
- p_stream->fmt.i_codec == VLC_FOURCC('m','p','4','a') )
+ p_stream->fmt.i_codec == VLC_CODEC_MP4A )
{
/* samples per packet */
bo_add_32be( soun, p_stream->fmt.audio.i_frame_length );
bo_t *box;
if( p_sys->b_mov &&
- p_stream->fmt.i_codec == VLC_FOURCC('m','p','4','a') )
+ p_stream->fmt.i_codec == VLC_CODEC_MP4A )
{
box = GetWaveTag( p_stream );
}
- else if( p_stream->fmt.i_codec == VLC_FOURCC('s','a','m','r') )
+ else if( p_stream->fmt.i_codec == VLC_CODEC_AMR_NB )
{
box = GetDamrTag( p_stream );
}
switch( p_stream->fmt.i_codec )
{
- case VLC_FOURCC('m','p','4','v'):
- case VLC_FOURCC('m','p','g','v'):
+ case VLC_CODEC_MP4V:
+ case VLC_CODEC_MPGV:
memcpy( fcc, "mp4v", 4 );
break;
- case VLC_FOURCC('M','J','P','G'):
+ case VLC_CODEC_MJPG:
memcpy( fcc, "mjpa", 4 );
break;
- case VLC_FOURCC('S','V','Q','1'):
+ case VLC_CODEC_SVQ1:
memcpy( fcc, "SVQ1", 4 );
break;
- case VLC_FOURCC('S','V','Q','3'):
+ case VLC_CODEC_SVQ3:
memcpy( fcc, "SVQ3", 4 );
break;
- case VLC_FOURCC('H','2','6','3'):
+ case VLC_CODEC_H263:
memcpy( fcc, "s263", 4 );
break;
- case VLC_FOURCC('h','2','6','4'):
+ case VLC_CODEC_H264:
memcpy( fcc, "avc1", 4 );
break;
- case VLC_FOURCC('Y','V','1','2'):
+ case VLC_CODEC_YV12:
memcpy( fcc, "yv12", 4 );
break;
- case VLC_FOURCC('Y','U','Y','2'):
+ case VLC_CODEC_YUYV:
memcpy( fcc, "yuy2", 4 );
break;
/* add an ES Descriptor */
switch( p_stream->fmt.i_codec )
{
- case VLC_FOURCC('m','p','4','v'):
- case VLC_FOURCC('m','p','g','v'):
+ case VLC_CODEC_MP4V:
+ case VLC_CODEC_MPGV:
{
bo_t *esds = GetESDS( p_stream );
}
break;
- case VLC_FOURCC('H','2','6','3'):
+ case VLC_CODEC_H263:
{
bo_t *d263 = GetD263Tag();
}
break;
- case VLC_FOURCC('S','V','Q','3'):
+ case VLC_CODEC_SVQ3:
{
bo_t *esds = GetSVQ3Tag( p_stream );
}
break;
- case VLC_FOURCC('h','2','6','4'):
+ case VLC_CODEC_H264:
box_gather( vide, GetAvcCTag( p_stream ) );
break;
if( i_pts > 0 && i_dts > 0 &&
( i_pts != i_dts || ( p_fmt->i_cat == VIDEO_ES &&
- p_fmt->i_codec != VLC_FOURCC('m','p','g','v') ) ) )
+ p_fmt->i_codec != VLC_CODEC_MPGV ) ) )
{
i_pts_dts = 0x03;
if ( !i_header_size ) i_header_size = 0xa;
i_max_pes_size = PES_PAYLOAD_SIZE_MAX;
}
- if( p_fmt->i_codec == VLC_FOURCC( 'm', 'p','4', 'v' ) &&
+ if( p_fmt->i_codec == VLC_CODEC_MP4V &&
p_es->i_flags & BLOCK_FLAG_TYPE_I )
{
/* For MPEG4 video, add VOL before I-frames */
/* Init this new stream */
switch( p_input->p_fmt->i_codec )
{
- case VLC_FOURCC( 'm', 'p', '1', 'v' ):
+ case VLC_CODEC_MP1V:
p_stream->i_stream_id =
StreamIdGet( p_sys->stream_id_mpgv, 0xe0, 0xef );
p_stream->i_stream_type = 0x01; /* ISO/IEC 11172 Video */
break;
- case VLC_FOURCC( 'm', 'p', '2', 'v' ):
- case VLC_FOURCC( 'm', 'p', 'g', 'v' ):
+ case VLC_CODEC_MP2V:
+ case VLC_CODEC_MPGV:
p_stream->i_stream_id =
StreamIdGet( p_sys->stream_id_mpgv, 0xe0, 0xef );
p_stream->i_stream_type = 0x02; /* ISO/IEC 13818 Video */
break;
- case VLC_FOURCC( 'm', 'p', '4', 'v' ):
+ case VLC_CODEC_MP4V:
p_stream->i_stream_id =
StreamIdGet( p_sys->stream_id_mpgv, 0xe0, 0xef );
p_stream->i_stream_type = 0x10;
break;
- case VLC_FOURCC( 'h', '2', '6', '4' ):
+ case VLC_CODEC_H264:
p_stream->i_stream_id =
StreamIdGet( p_sys->stream_id_mpgv, 0xe0, 0xef );
p_stream->i_stream_type = 0x1b;
break;
- case VLC_FOURCC( 'l', 'p', 'c', 'm' ):
+ case VLC_CODEC_DVD_LPCM:
p_stream->i_stream_id =
0xbd00 | StreamIdGet( p_sys->stream_id_lpcm, 0xa0, 0xaf );
break;
- case VLC_FOURCC( 'd', 't', 's', ' ' ):
+ case VLC_CODEC_DTS:
p_stream->i_stream_id =
0xbd00 | StreamIdGet( p_sys->stream_id_dts, 0x88, 0x8f );
break;
- case VLC_FOURCC( 'a', '5', '2', ' ' ):
+ case VLC_CODEC_A52:
p_stream->i_stream_id =
0xbd00 | StreamIdGet( p_sys->stream_id_a52, 0x80, 0x87 );
break;
- case VLC_FOURCC( 'm', 'p', 'g', 'a' ):
+ case VLC_CODEC_MPGA:
p_stream->i_stream_id =
StreamIdGet( p_sys->stream_id_mpga, 0xc0, 0xcf );
p_stream->i_stream_type = 0x03; /* ISO/IEC 11172 Audio */
break;
- case VLC_FOURCC( 'm', 'p', '4', 'a' ):
+ case VLC_CODEC_MP4A:
p_stream->i_stream_id =
StreamIdGet( p_sys->stream_id_mpga, 0xc0, 0xcf );
p_stream->i_stream_type = 0x0f;
break;
- case VLC_FOURCC( 's', 'p', 'u', ' ' ):
+ case VLC_CODEC_SPU:
p_stream->i_stream_id =
0xbd00 | StreamIdGet( p_sys->stream_id_spu, 0x20, 0x3f );
break;
msg_Dbg( p_mux, "removing input" );
switch( p_input->p_fmt->i_codec )
{
- case VLC_FOURCC( 'm', 'p', 'g', 'v' ):
+ case VLC_CODEC_MPGV:
StreamIdRelease( p_sys->stream_id_mpgv, 0xe0,
p_stream->i_stream_id );
break;
- case VLC_FOURCC( 'l', 'p', 'c', 'm' ):
+ case VLC_CODEC_DVD_LPCM:
StreamIdRelease( p_sys->stream_id_lpcm, 0xa0,
p_stream->i_stream_id&0xff );
break;
- case VLC_FOURCC( 'd', 't', 's', ' ' ):
+ case VLC_CODEC_DTS:
StreamIdRelease( p_sys->stream_id_dts, 0x88,
p_stream->i_stream_id&0xff );
break;
- case VLC_FOURCC( 'a', '5', '2', ' ' ):
+ case VLC_CODEC_A52:
StreamIdRelease( p_sys->stream_id_a52, 0x80,
p_stream->i_stream_id&0xff );
break;
- case VLC_FOURCC( 'm', 'p', 'g', 'a' ):
+ case VLC_CODEC_MPGA:
StreamIdRelease( p_sys->stream_id_mpga, 0xc0,
p_stream->i_stream_id );
break;
- case VLC_FOURCC( 's', 'p', 'u', ' ' ):
+ case VLC_CODEC_SPU:
StreamIdRelease( p_sys->stream_id_spu, 0x20,
p_stream->i_stream_id&0xff );
break;
case VIDEO_ES:
switch( p_input->p_fmt->i_codec )
{
- case VLC_FOURCC( 'm', 'p','g', 'v' ):
+ case VLC_CODEC_MPGV:
/* TODO: do we need to check MPEG-I/II ? */
p_stream->i_stream_type = 0x02;
p_stream->i_stream_id = 0xe0;
break;
- case VLC_FOURCC( 'm', 'p','4', 'v' ):
+ case VLC_CODEC_MP4V:
p_stream->i_stream_type = 0x10;
p_stream->i_stream_id = 0xe0;
p_stream->i_es_id = p_stream->i_pid;
break;
- case VLC_FOURCC( 'h', '2','6', '4' ):
+ case VLC_CODEC_H264:
p_stream->i_stream_type = 0x1b;
p_stream->i_stream_id = 0xe0;
break;
/* XXX dirty dirty but somebody want that:
* using crapy MS-codec XXX */
/* I didn't want to do that :P */
- case VLC_FOURCC( 'H', '2', '6', '3' ):
- case VLC_FOURCC( 'I', '2', '6', '3' ):
- case VLC_FOURCC( 'W', 'M', 'V', '3' ):
- case VLC_FOURCC( 'W', 'M', 'V', '2' ):
- case VLC_FOURCC( 'W', 'M', 'V', '1' ):
- case VLC_FOURCC( 'D', 'I', 'V', '3' ):
- case VLC_FOURCC( 'D', 'I', 'V', '2' ):
- case VLC_FOURCC( 'D', 'I', 'V', '1' ):
- case VLC_FOURCC( 'M', 'J', 'P', 'G' ):
+ case VLC_CODEC_H263I:
+ case VLC_CODEC_H263:
+ case VLC_CODEC_WMV3:
+ case VLC_CODEC_WMV2:
+ case VLC_CODEC_WMV1:
+ case VLC_CODEC_DIV3:
+ case VLC_CODEC_DIV2:
+ case VLC_CODEC_DIV1:
+ case VLC_CODEC_MJPG:
p_stream->i_stream_type = 0xa0; /* private */
p_stream->i_stream_id = 0xa0; /* beurk */
p_stream->i_bih_codec = p_input->p_fmt->i_codec;
p_stream->i_bih_width = p_input->p_fmt->video.i_width;
p_stream->i_bih_height = p_input->p_fmt->video.i_height;
break;
- case VLC_FOURCC( 'd', 'r', 'a', 'c' ):
+ case VLC_CODEC_DIRAC:
/* stream_id makes use of stream_id_extension */
p_stream->i_stream_id = (PES_EXTENDED_STREAM_ID << 8) | 0x60;
p_stream->i_stream_type = 0xd1;
case AUDIO_ES:
switch( p_input->p_fmt->i_codec )
{
- case VLC_FOURCC( 'm', 'p','g', 'a' ):
+ case VLC_CODEC_MPGA:
case VLC_FOURCC( 'm', 'p', '3', ' ' ):
p_stream->i_stream_type =
p_input->p_fmt->audio.i_rate >= 32000 ? 0x03 : 0x04;
p_stream->i_stream_id = 0xc0;
break;
- case VLC_FOURCC( 'a', '5','2', ' ' ):
+ case VLC_CODEC_A52:
p_stream->i_stream_type = 0x81;
p_stream->i_stream_id = 0xbd;
break;
- case VLC_FOURCC( 'l', 'p','c', 'm' ):
+ case VLC_CODEC_DVD_LPCM:
p_stream->i_stream_type = 0x83;
p_stream->i_stream_id = 0xbd;
break;
- case VLC_FOURCC( 'd', 't','s', ' ' ):
+ case VLC_CODEC_DTS:
p_stream->i_stream_type = 0x06;
p_stream->i_stream_id = 0xbd;
break;
- case VLC_FOURCC( 'm', 'p','4', 'a' ):
+ case VLC_CODEC_MP4A:
/* XXX: make that configurable in some way when LOAS
* is implemented for AAC in TS */
//p_stream->i_stream_type = 0x11; /* LOAS/LATM */
case SPU_ES:
switch( p_input->p_fmt->i_codec )
{
- case VLC_FOURCC( 's', 'p','u', ' ' ):
+ case VLC_CODEC_SPU:
p_stream->i_stream_type = 0x82;
p_stream->i_stream_id = 0xbd;
break;
- case VLC_FOURCC( 's', 'u','b', 't' ):
+ case VLC_CODEC_SUBT:
p_stream->i_stream_type = 0x12;
p_stream->i_stream_id = 0xfa;
p_sys->i_mpeg4_streams++;
p_stream->i_es_id = p_stream->i_pid;
break;
- case VLC_FOURCC('d','v','b','s'):
+ case VLC_CODEC_DVBS:
p_stream->i_stream_type = 0x06;
p_stream->i_es_id = p_input->p_fmt->subs.dvb.i_id;
p_stream->i_stream_id = 0xbd;
break;
- case VLC_FOURCC('t','e','l','x'):
+ case VLC_CODEC_TELETEXT:
p_stream->i_stream_type = 0x06;
p_stream->i_stream_id = 0xbd; /* FIXME */
break;
}
/* Create decoder specific info for subt */
- if( p_stream->i_codec == VLC_FOURCC( 's', 'u','b', 't' ) )
+ if( p_stream->i_codec == VLC_CODEC_SUBT )
{
uint8_t *p;
if( p_stream == p_pcr_stream || p_sys->b_data_alignment
|| p_input->p_fmt->i_codec !=
- VLC_FOURCC('m', 'p', 'g', 'a') )
+ VLC_CODEC_MPGA )
{
p_data = block_FifoGet( p_input->p_fifo );
if( p_input->p_fmt->i_codec ==
- VLC_FOURCC('m', 'p', '4', 'a' ) )
+ VLC_CODEC_MP4A )
p_data = Add_ADTS( p_data, p_input->p_fmt );
}
else
p_data->i_length = p_next->i_dts - p_data->i_dts;
}
else if( p_input->p_fmt->i_codec !=
- VLC_FOURCC('s', 'u', 'b', 't' ) )
+ VLC_CODEC_SUBT )
p_data->i_length = 1000;
if( ( p_pcr_stream->i_pes_dts > 0 &&
if( p_input->p_fmt->i_cat == SPU_ES )
{
if( p_input->p_fmt->i_codec ==
- VLC_FOURCC('s','u','b','t') )
+ VLC_CODEC_SUBT )
{
/* Prepend header */
p_data = block_Realloc( p_data, 2,
}
}
else if( p_input->p_fmt->i_codec ==
- VLC_FOURCC('t','e','l','x') )
+ VLC_CODEC_TELETEXT )
{
/* EN 300 472 */
i_header_size = 0x24;
b_data_alignment = 1;
}
else if( p_input->p_fmt->i_codec ==
- VLC_FOURCC('d','v','b','s') )
+ VLC_CODEC_DVBS )
{
/* EN 300 743 */
b_data_alignment = 1;
}
if( p_input->p_fmt->i_codec ==
- VLC_FOURCC('d','r','a','c') )
+ VLC_CODEC_DIRAC )
{
b_data_alignment = 1;
/* dirac pes packets should be unbounded in
bits_write( &bits, 6, 0x05 ); /* AudioStream */
}
else if( p_stream->i_stream_type == 0x12 &&
- p_stream->i_codec == VLC_FOURCC('s','u','b','t') )
+ p_stream->i_codec == VLC_CODEC_SUBT )
{
bits_write( &bits, 8, 0x0B ); /* Text Stream */
bits_write( &bits, 6, 0x04 ); /* VisualStream */
/* "registration" descriptor : "AC-3" */
dvbpsi_PMTESAddDescriptor( p_es, 0x05, 4, format );
}
- else if( p_stream->i_codec == VLC_FOURCC('d','r','a','c') )
+ else if( p_stream->i_codec == VLC_CODEC_DIRAC )
{
/* Dirac registration descriptor */
uint8_t data[4] = { 'd', 'r', 'a', 'c' };
dvbpsi_PMTESAddDescriptor( p_es, 0x05, 4, data );
}
- else if( p_stream->i_codec == VLC_FOURCC('d','t','s',' ') )
+ else if( p_stream->i_codec == VLC_CODEC_DTS )
{
/* DTS registration descriptor (ETSI TS 101 154 Annex F) */
uint8_t data[4] = { 0x44, 0x54, 0x53, 0x32 };
dvbpsi_PMTESAddDescriptor( p_es, 0x05, 4, data );
}
- else if( p_stream->i_codec == VLC_FOURCC('t','e','l','x') )
+ else if( p_stream->i_codec == VLC_CODEC_TELETEXT )
{
if( p_stream->i_decoder_specific_info )
{
}
continue;
}
- else if( p_stream->i_codec == VLC_FOURCC('d','v','b','s') )
+ else if( p_stream->i_codec == VLC_CODEC_DVBS )
{
/* DVB subtitles */
if( p_stream->i_decoder_specific_info )
}
msg_Dbg( p_mux, "adding input" );
- if( p_input->p_fmt->i_codec != VLC_FOURCC('M','J','P','G') &&
- p_input->p_fmt->i_codec != VLC_FOURCC('m','j','p','g') &&
- p_input->p_fmt->i_codec != VLC_FOURCC('j','p','e','g') &&
- p_input->p_fmt->i_codec != VLC_FOURCC('J','P','E','G') &&
- p_input->p_fmt->i_codec != VLC_FOURCC('J','F','I','F') &&
- p_input->p_fmt->i_codec != VLC_FOURCC('J','P','G','L') &&
- p_input->p_fmt->i_codec != VLC_FOURCC('m','j','p','a') )
- {
+ if( p_input->p_fmt->i_codec != VLC_CODEC_MJPG )
return VLC_EGENERIC;
- }
return VLC_SUCCESS;
}
switch( p_stream->i_fourcc )
{
- case VLC_FOURCC( 'm', 'p', 'g', 'v' ):
- case VLC_FOURCC( 'm', 'p', '4', 'v' ):
- case VLC_FOURCC( 'D', 'I', 'V', '3' ):
- case VLC_FOURCC( 'M', 'J', 'P', 'G' ):
- case VLC_FOURCC( 'W', 'M', 'V', '1' ):
- case VLC_FOURCC( 'W', 'M', 'V', '2' ):
- case VLC_FOURCC( 'W', 'M', 'V', '3' ):
- case VLC_FOURCC( 'S', 'N', 'O', 'W' ):
+ case VLC_CODEC_MP4V:
+ case VLC_CODEC_MPGV:
+ case VLC_CODEC_DIV3:
+ case VLC_CODEC_MJPG:
+ case VLC_CODEC_WMV1:
+ case VLC_CODEC_WMV2:
+ case VLC_CODEC_WMV3:
+ case VLC_CODEC_SNOW:
p_stream->p_oggds_header = calloc( 1, sizeof(oggds_header_t) );
if( !p_stream->p_oggds_header )
{
p_stream->p_oggds_header->i_packet_type = PACKET_TYPE_HEADER;
memcpy( p_stream->p_oggds_header->stream_type, "video", 5 );
- if( p_stream->i_fourcc == VLC_FOURCC( 'm', 'p', '4', 'v' ) )
+ if( p_stream->i_fourcc == VLC_CODEC_MP4V )
{
memcpy( p_stream->p_oggds_header->sub_type, "XVID", 4 );
}
- else if( p_stream->i_fourcc == VLC_FOURCC( 'D', 'I', 'V', '3' ) )
+ else if( p_stream->i_fourcc == VLC_CODEC_DIV3 )
{
memcpy( p_stream->p_oggds_header->sub_type, "DIV3", 4 );
}
msg_Dbg( p_mux, "%4.4s stream", (char *)&p_stream->i_fourcc );
break;
- case VLC_FOURCC( 'd', 'r', 'a', 'c' ):
+ case VLC_CODEC_DIRAC:
msg_Dbg( p_mux, "dirac stream" );
break;
- case VLC_FOURCC( 't', 'h', 'e', 'o' ):
+ case VLC_CODEC_THEORA:
msg_Dbg( p_mux, "theora stream" );
break;
case AUDIO_ES:
switch( p_stream->i_fourcc )
{
- case VLC_FOURCC( 'v', 'o', 'r', 'b' ):
+ case VLC_CODEC_VORBIS:
msg_Dbg( p_mux, "vorbis stream" );
break;
- case VLC_FOURCC( 's', 'p', 'x', ' ' ):
+ case VLC_CODEC_SPEEX:
msg_Dbg( p_mux, "speex stream" );
break;
- case VLC_FOURCC( 'f', 'l', 'a', 'c' ):
+ case VLC_CODEC_FLAC:
msg_Dbg( p_mux, "flac stream" );
break;
case SPU_ES:
switch( p_stream->i_fourcc )
{
- case VLC_FOURCC( 's', 'u','b', 't' ):
+ case VLC_CODEC_SUBT:
p_stream->p_oggds_header = calloc( 1, sizeof(oggds_header_t) );
if( !p_stream->p_oggds_header )
{
ogg_stream_init( &p_stream->os, p_stream->i_serial_no );
p_stream->i_packet_no = 0;
- if( p_stream->i_fourcc == VLC_FOURCC( 'v', 'o', 'r', 'b' ) ||
- p_stream->i_fourcc == VLC_FOURCC( 's', 'p', 'x', ' ' ) ||
- p_stream->i_fourcc == VLC_FOURCC( 't', 'h', 'e', 'o' ) )
+ if( p_stream->i_fourcc == VLC_CODEC_VORBIS ||
+ p_stream->i_fourcc == VLC_CODEC_SPEEX ||
+ p_stream->i_fourcc == VLC_CODEC_THEORA )
{
/* First packet in order: vorbis/speex/theora info */
p_extra = p_input->p_fmt->p_extra;
p_og = OggStreamFlush( p_mux, &p_stream->os, 0 );
/* Get keyframe_granule_shift for theora granulepos calculation */
- if( p_stream->i_fourcc == VLC_FOURCC( 't', 'h', 'e', 'o' ) )
+ if( p_stream->i_fourcc == VLC_CODEC_THEORA )
{
int i_keyframe_frequency_force =
1 << ((op.packet[40] << 6 >> 3) | (op.packet[41] >> 5));
}
}
}
- else if( p_stream->i_fourcc == VLC_FOURCC( 'd', 'r', 'a', 'c' ) )
+ else if( p_stream->i_fourcc == VLC_CODEC_DIRAC )
{
op.packet = p_input->p_fmt->p_extra;
op.bytes = p_input->p_fmt->i_extra;
ogg_stream_packetin( &p_stream->os, &op );
p_og = OggStreamFlush( p_mux, &p_stream->os, 0 );
}
- else if( p_stream->i_fourcc == VLC_FOURCC( 'f', 'l', 'a', 'c' ) )
+ else if( p_stream->i_fourcc == VLC_CODEC_FLAC )
{
/* flac stream marker (yeah, only that in the 1st packet) */
op.packet = (unsigned char *)"fLaC";
sout_input_t *p_input = p_mux->pp_inputs[i];
ogg_stream_t *p_stream = (ogg_stream_t*)p_input->p_sys;
- if( p_stream->i_fourcc == VLC_FOURCC( 'v', 'o', 'r', 'b' ) ||
- p_stream->i_fourcc == VLC_FOURCC( 's', 'p', 'x', ' ' ) ||
- p_stream->i_fourcc == VLC_FOURCC( 't', 'h', 'e', 'o' ) )
+ if( p_stream->i_fourcc == VLC_CODEC_VORBIS ||
+ p_stream->i_fourcc == VLC_CODEC_SPEEX ||
+ p_stream->i_fourcc == VLC_CODEC_THEORA )
{
/* Special case, headers are already there in the incoming stream.
* We need to gather them an mark them as headers. */
int j = 2;
- if( p_stream->i_fourcc == VLC_FOURCC( 's', 'p', 'x', ' ' ) ) j = 1;
+ if( p_stream->i_fourcc == VLC_CODEC_SPEEX ) j = 1;
p_extra = p_input->p_fmt->p_extra;
i_extra = p_input->p_fmt->i_extra;
block_ChainAppend( &p_hdr, p_og );
}
}
- else if( p_stream->i_fourcc != VLC_FOURCC( 'f', 'l', 'a', 'c' ) &&
- p_stream->i_fourcc != VLC_FOURCC( 'd', 'r', 'a', 'c' ) )
+ else if( p_stream->i_fourcc != VLC_CODEC_FLAC &&
+ p_stream->i_fourcc != VLC_CODEC_DIRAC )
{
uint8_t com[128];
int i_com;
}
/* Special case for mp4v and flac */
- if( ( p_stream->i_fourcc == VLC_FOURCC( 'm', 'p', '4', 'v' ) ||
- p_stream->i_fourcc == VLC_FOURCC( 'f', 'l', 'a', 'c' ) ) &&
+ if( ( p_stream->i_fourcc == VLC_CODEC_MP4V ||
+ p_stream->i_fourcc == VLC_CODEC_FLAC ) &&
p_input->p_fmt->i_extra )
{
/* Send a packet with the VOL data for mp4v
msg_Dbg( p_mux, "writing extra data" );
op.bytes = p_input->p_fmt->i_extra;
op.packet = p_input->p_fmt->p_extra;
- if( p_stream->i_fourcc == VLC_FOURCC( 'f', 'l', 'a', 'c' ) )
+ if( p_stream->i_fourcc == VLC_CODEC_FLAC )
{
/* Skip the flac stream marker */
op.bytes -= 4;
block_t *p_og = NULL;
ogg_packet op;
- if( p_stream->i_fourcc != VLC_FOURCC( 'v', 'o', 'r', 'b' ) &&
- p_stream->i_fourcc != VLC_FOURCC( 'f', 'l', 'a', 'c' ) &&
- p_stream->i_fourcc != VLC_FOURCC( 's', 'p', 'x', ' ' ) &&
- p_stream->i_fourcc != VLC_FOURCC( 't', 'h', 'e', 'o' ) &&
- p_stream->i_fourcc != VLC_FOURCC( 'd', 'r', 'a', 'c' ) )
+ if( p_stream->i_fourcc != VLC_CODEC_VORBIS &&
+ p_stream->i_fourcc != VLC_CODEC_FLAC &&
+ p_stream->i_fourcc != VLC_CODEC_SPEEX &&
+ p_stream->i_fourcc != VLC_CODEC_THEORA &&
+ p_stream->i_fourcc != VLC_CODEC_DIRAC )
{
p_data = block_Realloc( p_data, 1, p_data->i_buffer );
p_data->p_buffer[0] = PACKET_IS_SYNCPOINT; // FIXME
if( p_stream->i_cat == AUDIO_ES )
{
- if( p_stream->i_fourcc == VLC_FOURCC( 'v', 'o', 'r', 'b' ) ||
- p_stream->i_fourcc == VLC_FOURCC( 'f', 'l', 'a', 'c' ) ||
- p_stream->i_fourcc == VLC_FOURCC( 's', 'p', 'x', ' ' ) )
+ if( p_stream->i_fourcc == VLC_CODEC_VORBIS ||
+ p_stream->i_fourcc == VLC_CODEC_FLAC ||
+ p_stream->i_fourcc == VLC_CODEC_SPEEX )
{
/* number of sample from begining + current packet */
op.granulepos =
}
else if( p_stream->i_cat == VIDEO_ES )
{
- if( p_stream->i_fourcc == VLC_FOURCC( 't', 'h', 'e', 'o' ) )
+ if( p_stream->i_fourcc == VLC_CODEC_THEORA )
{
/* FIXME, we assume only keyframes */
op.granulepos = ( ( p_data->i_dts - p_sys->i_start_dts ) *
p_input->p_fmt->video.i_frame_rate_base /
INT64_C(1000000) ) << p_stream->i_keyframe_granule_shift;
}
- else if( p_stream->i_fourcc == VLC_FOURCC( 'd', 'r', 'a', 'c' ) )
+ else if( p_stream->i_fourcc == VLC_CODEC_DIRAC )
{
mtime_t dt = (p_data->i_dts - p_sys->i_start_dts + 1)
* p_input->p_fmt->video.i_frame_rate *2
ogg_stream_packetin( &p_stream->os, &op );
if( p_stream->i_cat == SPU_ES ||
- p_stream->i_fourcc == VLC_FOURCC( 's', 'p', 'x', ' ' ) ||
- p_stream->i_fourcc == VLC_FOURCC( 'd', 'r', 'a', 'c' ) )
+ p_stream->i_fourcc == VLC_CODEC_SPEEX ||
+ p_stream->i_fourcc == VLC_CODEC_DIRAC )
{
/* Subtitles or Speex packets are quite small so they
* need to be flushed to be sent on time */
p_sys->i_channel_mask, (int)p_sys->b_chan_reorder );
}
- i_format = p_input->p_fmt->i_codec == VLC_FOURCC('f', 'l', '3', '2') ?
+ i_format = p_input->p_fmt->i_codec == VLC_CODEC_FL32 ?
WAVE_FORMAT_IEEE_FLOAT : WAVE_FORMAT_PCM;
b_ext = p_sys->b_ext = p_input->p_fmt->audio.i_channels > 2;
/* Fix the value of the fourcc */
switch( p_dec->fmt_in.i_codec )
{
- /* video */
- case VLC_FOURCC( 'm', '4', 's', '2'):
- case VLC_FOURCC( 'M', '4', 'S', '2'):
- case VLC_FOURCC( 'm', 'p', '4', 's'):
- case VLC_FOURCC( 'M', 'P', '4', 'S'):
- case VLC_FOURCC( 'D', 'I', 'V', 'X'):
- case VLC_FOURCC( 'd', 'i', 'v', 'x'):
- case VLC_FOURCC( 'X', 'V', 'I', 'D'):
- case VLC_FOURCC( 'X', 'v', 'i', 'D'):
- case VLC_FOURCC( 'x', 'v', 'i', 'd'):
- case VLC_FOURCC( 'D', 'X', '5', '0'):
- case VLC_FOURCC( 0x04, 0, 0, 0):
- case VLC_FOURCC( '3', 'I', 'V', '2'):
- p_dec->fmt_out.i_codec = VLC_CODEC_MP4V;
- break;
-
- case VLC_FOURCC( 'm', 'p', 'g', '1' ):
- case VLC_FOURCC( 'm', 'p', 'g', '2' ):
- case VLC_CODEC_MP1V:
- case VLC_CODEC_MP2V:
- p_dec->fmt_out.i_codec = VLC_CODEC_MPGV;
- break;
-
- case VLC_FOURCC( 'd', 'i', 'v', '1' ):
- case VLC_FOURCC( 'M', 'P', 'G', '4' ):
- case VLC_FOURCC( 'm', 'p', 'g', '4' ):
- p_dec->fmt_out.i_codec = VLC_CODEC_DIV1;
- break;
-
- case VLC_FOURCC( 'd', 'i', 'v', '2' ):
- case VLC_FOURCC( 'M', 'P', '4', '2' ):
- case VLC_FOURCC( 'm', 'p', '4', '2' ):
- p_dec->fmt_out.i_codec = VLC_CODEC_DIV2;
- break;
-
- case VLC_FOURCC( 'd', 'i', 'v', '3' ):
- case VLC_FOURCC( 'd', 'i', 'v', '4' ):
- case VLC_FOURCC( 'D', 'I', 'V', '4' ):
- case VLC_FOURCC( 'd', 'i', 'v', '5' ):
- case VLC_FOURCC( 'D', 'I', 'V', '5' ):
- case VLC_FOURCC( 'd', 'i', 'v', '6' ):
- case VLC_FOURCC( 'D', 'I', 'V', '6' ):
- case VLC_FOURCC( 'M', 'P', '4', '3' ):
- case VLC_FOURCC( 'm', 'p', '4', '3' ):
- case VLC_FOURCC( 'm', 'p', 'g', '3' ):
- case VLC_FOURCC( 'M', 'P', 'G', '3' ):
- case VLC_FOURCC( 'A', 'P', '4', '1' ):
- p_dec->fmt_out.i_codec = VLC_CODEC_DIV3;
- break;
-
- case VLC_CODEC_H263:
- case VLC_FOURCC( 'U', '2', '6', '3' ):
- case VLC_FOURCC( 'u', '2', '6', '3' ):
- p_dec->fmt_out.i_codec = VLC_FOURCC( 'H', '2', '6', '3' );
- break;
-
- case VLC_FOURCC( 'i', '2', '6', '3' ):
- p_dec->fmt_out.i_codec = VLC_CODEC_H263I;
- break;
-
- case VLC_FOURCC( 'm', 'j', 'p', 'g' ):
- case VLC_FOURCC( 'm', 'j', 'p', 'a' ):
- case VLC_CODEC_JPEG:
- case VLC_FOURCC( 'J', 'P', 'E', 'G' ):
- case VLC_FOURCC( 'J', 'F', 'I', 'F' ):
- p_dec->fmt_out.i_codec = VLC_CODEC_MJPG;
- break;
-
- case VLC_FOURCC( 'd', 'v', 's', 'd' ):
- case VLC_FOURCC( 'D', 'V', 'S', 'D' ):
- case VLC_FOURCC( 'd', 'v', 'h', 'd' ):
- p_dec->fmt_out.i_codec = VLC_FOURCC( 'd', 'v', 's', 'l' );
- break;
-
- /* audio */
case VLC_FOURCC( 'a', 'r', 'a', 'w' ):
switch( ( p_dec->fmt_in.audio.i_bitspersample + 7 ) / 8 )
{
break;
}
- p_dec->p_sys = p_sys = malloc( sizeof( block_t ) );
+ p_dec->p_sys = p_sys = malloc( sizeof(*p_sys) );
p_sys->p_block = NULL;
return VLC_SUCCESS;
decoder_sys_t *p_sys;
int i;
- if( p_dec->fmt_in.i_codec != VLC_CODEC_H264 &&
- p_dec->fmt_in.i_codec != VLC_FOURCC( 'H', '2', '6', '4') &&
- p_dec->fmt_in.i_codec != VLC_FOURCC( 'V', 'S', 'S', 'H') &&
- p_dec->fmt_in.i_codec != VLC_FOURCC( 'v', 's', 's', 'h') &&
- p_dec->fmt_in.i_codec != VLC_FOURCC( 'D', 'A', 'V', 'C') &&
- p_dec->fmt_in.i_codec != VLC_FOURCC( 'x', '2', '6', '4') &&
- p_dec->fmt_in.i_codec != VLC_FOURCC( 'X', '2', '6', '4') &&
- ( p_dec->fmt_in.i_codec != VLC_FOURCC( 'a', 'v', 'c', '1') ||
- p_dec->fmt_in.i_extra < 7 ) )
- {
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_H264 )
+ return VLC_EGENERIC;
+ if( p_dec->fmt_in.i_original_fourcc == VLC_FOURCC( 'a', 'v', 'c', '1') &&
+ p_dec->fmt_in.i_extra < 7 )
return VLC_EGENERIC;
- }
/* Allocate the memory needed to store the decoder's structure */
if( ( p_dec->p_sys = p_sys = malloc( sizeof(decoder_sys_t) ) ) == NULL )
es_format_Copy( &p_dec->fmt_out, &p_dec->fmt_in );
p_dec->fmt_out.i_codec = VLC_CODEC_H264;
- if( p_dec->fmt_in.i_codec == VLC_FOURCC( 'a', 'v', 'c', '1' ) )
+ if( p_dec->fmt_in.i_original_fourcc == VLC_FOURCC( 'a', 'v', 'c', '1' ) )
{
/* This type of stream is produced by mp4 and matroska
* when we want to store it in another streamformat, you need to convert
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- switch( p_dec->fmt_in.i_codec )
- {
- case VLC_FOURCC( 'm', '4', 's', '2'):
- case VLC_FOURCC( 'M', '4', 'S', '2'):
- case VLC_FOURCC( 'm', 'p', '4', 's'):
- case VLC_FOURCC( 'M', 'P', '4', 'S'):
- case VLC_CODEC_MP4V:
- case VLC_FOURCC( 'M', 'P', '4', 'V'):
- case VLC_FOURCC( 'D', 'I', 'V', 'X'):
- case VLC_FOURCC( 'd', 'i', 'v', 'x'):
- case VLC_FOURCC( 'X', 'V', 'I', 'D'):
- case VLC_FOURCC( 'X', 'v', 'i', 'D'):
- case VLC_FOURCC( 'x', 'v', 'i', 'd'):
- case VLC_FOURCC( 'D', 'X', '5', '0'):
- case VLC_FOURCC( 'd', 'x', '5', '0'):
- case VLC_FOURCC( 0x04, 0, 0, 0):
- case VLC_FOURCC( '3', 'I', 'V', '2'):
- case VLC_FOURCC( 'm', '4', 'c', 'c'):
- case VLC_FOURCC( 'M', '4', 'C', 'C'):
- break;
-
- default:
- return VLC_EGENERIC;
- }
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_MP4V )
+ return VLC_EGENERIC;
/* Allocate the memory needed to store the decoder's structure */
if( ( p_dec->p_sys = p_sys = malloc( sizeof(decoder_sys_t) ) ) == NULL )
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC( 'm', 'p', 'g', '1' ) &&
- p_dec->fmt_in.i_codec != VLC_FOURCC( 'm', 'p', 'g', '2' ) &&
- p_dec->fmt_in.i_codec != VLC_CODEC_MPGV )
- {
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_MPGV )
return VLC_EGENERIC;
- }
es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_CODEC_MPGV );
+ p_dec->fmt_out.i_original_fourcc = p_dec->fmt_in.i_original_fourcc;
+
p_dec->pf_packetize = Packetize;
p_dec->pf_get_cc = GetCc;
if( p_sys->i_chroma )
fmt_out.i_chroma = p_sys->i_chroma;
else
- fmt_out.i_chroma = VLC_FOURCC('I','4','2','0');
+ fmt_out.i_chroma = VLC_CODEC_I420;
if ( !p_sys->i_height )
{
switch ( id->fmt.i_cat )
{
case AUDIO_ES:
- if ( id->fmt.i_codec == VLC_FOURCC('a', 'l', 'a', 'c') )
+ if ( id->fmt.i_codec == VLC_CODEC_ALAC )
{
if ( p_sys->p_audio_stream )
{
* Do not do non native and non standard association !
* Muxer will be probe if no entry found */
static const muxer_properties_t p_muxers[] = {
- M( "raw", "mp3", 1, VLC_FOURCC('m','p','g','a') ),
- M( "raw", "a52", 1, VLC_FOURCC('a','5','2',' ') ),
- M( "raw", "dts", 1, VLC_FOURCC('d','t','s',' ') ),
- M( "raw", "mpc", 1, VLC_FOURCC('m','p','c',' ') ),
- M( "raw", "ape", 1, VLC_FOURCC('A','P','E',' ') ),
-
- M( "wav", "wav", 1, VLC_FOURCC('a','r','a','w'), VLC_FOURCC('u','8',' ',' '), VLC_FOURCC('s','1','6','l'),
- VLC_FOURCC('s','2','4','l'), VLC_FOURCC('s','3','2','l'), VLC_FOURCC('f','l','3','2') ),
-
- //M( "ffmpeg{mux=flac}", "flac", 1, VLC_FOURCC('f','l','a','c') ), BROKEN
-
- M( "ogg", "ogg", INT_MAX, VLC_FOURCC('v','o','r','b'), VLC_FOURCC('s','p','x',' '), VLC_FOURCC('f','l','a','c'),
- VLC_FOURCC('s','u','b','t'), VLC_FOURCC('t','h','e','o'), VLC_FOURCC('d','r','a','c') ),
-
- M( "asf", "asf", 127, VLC_FOURCC('w','m','a','1'), VLC_FOURCC('w','m','a','2'), VLC_FOURCC('w','m','a',' '),
- VLC_FOURCC('w','m','a','p'), VLC_FOURCC('w','m','a','l'),
- VLC_FOURCC('W','M','V','1'), VLC_FOURCC('W','M','V','2'), VLC_FOURCC('W','M','V','3'),
- VLC_FOURCC('W','V','C','1')),
-
- M( "mp4", "mp4", INT_MAX, VLC_FOURCC('m','p','4','a'), VLC_FOURCC('h','2','6','4'), VLC_FOURCC('m','p','4','v'),
- VLC_FOURCC('s','u','b','t') ),
-
- M( "ps", "mpg", 16/* FIXME*/,VLC_FOURCC('m','p','g','v'), VLC_FOURCC('m','p','1','v'), VLC_FOURCC('m','p','2','v'),
- VLC_FOURCC('m','p','g','a'), VLC_FOURCC('l','p','c','m'), VLC_FOURCC('a','5','2',' '),
- VLC_FOURCC('d','t','s',' '),
- VLC_FOURCC('s','p','u',' ') ),
-
- M( "ts", "ts", 8000, VLC_FOURCC('m','p','g','v'), VLC_FOURCC('m','p','1','v'), VLC_FOURCC('m','p','2','v'),
- VLC_FOURCC('h','2','6','4'),
- VLC_FOURCC('m','p','g','a'), VLC_FOURCC('l','p','c','m'), VLC_FOURCC('a','5','2',' '),
- VLC_FOURCC('d','t','s',' '), VLC_FOURCC('m','p','4','a'),
- VLC_FOURCC('d','v','b','s'), VLC_FOURCC('t','e','l','x') ),
+ M( "raw", "mp3", 1, VLC_CODEC_MPGA ),
+ M( "raw", "a52", 1, VLC_CODEC_A52 ),
+ M( "raw", "dts", 1, VLC_CODEC_DTS ),
+ M( "raw", "mpc", 1, VLC_CODEC_MUSEPACK7, VLC_CODEC_MUSEPACK8 ),
+ M( "raw", "ape", 1, VLC_CODEC_APE ),
+
+ M( "wav", "wav", 1, VLC_FOURCC('a','r','a','w'), VLC_CODEC_U8, VLC_CODEC_S16L,
+ VLC_CODEC_S24L, VLC_CODEC_S32L, VLC_CODEC_FL32 ),
+
+ //M( "ffmpeg{mux=flac}", "flac", 1, VLC_CODEC_FLAC ), BROKEN
+
+ M( "ogg", "ogg", INT_MAX, VLC_CODEC_VORBIS, VLC_CODEC_SPEEX, VLC_CODEC_FLAC,
+ VLC_CODEC_SUBT, VLC_CODEC_THEORA, VLC_CODEC_DIRAC ),
+
+ M( "asf", "asf", 127, VLC_CODEC_WMA1, VLC_CODEC_WMA2, VLC_CODEC_WMAP, VLC_CODEC_WMAL, VLC_CODEC_WMAS,
+ VLC_CODEC_WMV1, VLC_CODEC_WMV2, VLC_CODEC_WMV3, VLC_CODEC_VC1 ),
+
+ M( "mp4", "mp4", INT_MAX, VLC_CODEC_MP4A, VLC_CODEC_H264, VLC_CODEC_MP4V,
+ VLC_CODEC_SUBT ),
+
+ M( "ps", "mpg", 16/* FIXME*/,VLC_CODEC_MPGV, VLC_CODEC_MP1V, VLC_CODEC_MP2V,
+ VLC_CODEC_MPGA, VLC_CODEC_DVD_LPCM, VLC_CODEC_A52,
+ VLC_CODEC_DTS,
+ VLC_CODEC_SPU ),
+
+ M( "ts", "ts", 8000, VLC_CODEC_MPGV, VLC_CODEC_MP1V, VLC_CODEC_MP2V,
+ VLC_CODEC_H264,
+ VLC_CODEC_MPGA, VLC_CODEC_DVD_LPCM, VLC_CODEC_A52,
+ VLC_CODEC_DTS, VLC_CODEC_MP4A,
+ VLC_CODEC_DVBS, VLC_CODEC_TELETEXT ),
M( NULL, NULL, 0, 0 )
};
else
switch( p_fmt->i_codec )
{
- case VLC_FOURCC( 'u', 'l', 'a', 'w' ):
+ case VLC_CODEC_MULAW:
if( p_fmt->audio.i_channels == 1 && p_fmt->audio.i_rate == 8000 )
id->i_payload_type = 0;
id->psz_enc = "PCMU";
id->pf_packetize = rtp_packetize_split;
rtp_set_ptime (id, 20, 1);
break;
- case VLC_FOURCC( 'a', 'l', 'a', 'w' ):
+ case VLC_CODEC_ALAW:
if( p_fmt->audio.i_channels == 1 && p_fmt->audio.i_rate == 8000 )
id->i_payload_type = 8;
id->psz_enc = "PCMA";
id->pf_packetize = rtp_packetize_split;
rtp_set_ptime (id, 20, 1);
break;
- case VLC_FOURCC( 's', '1', '6', 'b' ):
+ case VLC_CODEC_S16B:
if( p_fmt->audio.i_channels == 1 && p_fmt->audio.i_rate == 44100 )
{
id->i_payload_type = 11;
id->pf_packetize = rtp_packetize_split;
rtp_set_ptime (id, 20, 2);
break;
- case VLC_FOURCC( 'u', '8', ' ', ' ' ):
+ case VLC_CODEC_U8:
id->psz_enc = "L8";
id->pf_packetize = rtp_packetize_split;
rtp_set_ptime (id, 20, 1);
break;
- case VLC_FOURCC( 'm', 'p', 'g', 'a' ):
+ case VLC_CODEC_MPGA:
case VLC_FOURCC( 'm', 'p', '3', ' ' ):
id->i_payload_type = 14;
id->psz_enc = "MPA";
id->i_clock_rate = 90000; /* not 44100 */
id->pf_packetize = rtp_packetize_mpa;
break;
- case VLC_FOURCC( 'm', 'p', 'g', 'v' ):
+ case VLC_CODEC_MPGV:
id->i_payload_type = 32;
id->psz_enc = "MPV";
id->pf_packetize = rtp_packetize_mpv;
break;
- case VLC_FOURCC( 'G', '7', '2', '6' ):
- case VLC_FOURCC( 'g', '7', '2', '6' ):
+ case VLC_CODEC_ADPCM_G726:
switch( p_fmt->i_bitrate / 1000 )
{
case 16:
break;
}
break;
- case VLC_FOURCC( 'a', '5', '2', ' ' ):
+ case VLC_CODEC_A52:
id->psz_enc = "ac3";
id->pf_packetize = rtp_packetize_ac3;
break;
- case VLC_FOURCC( 'H', '2', '6', '3' ):
+ case VLC_CODEC_H263:
id->psz_enc = "H263-1998";
id->pf_packetize = rtp_packetize_h263;
break;
- case VLC_FOURCC( 'h', '2', '6', '4' ):
+ case VLC_CODEC_H264:
id->psz_enc = "H264";
id->pf_packetize = rtp_packetize_h264;
id->psz_fmtp = NULL;
id->psz_fmtp = strdup( "packetization-mode=1" );
break;
- case VLC_FOURCC( 'm', 'p', '4', 'v' ):
+ case VLC_CODEC_MP4V:
{
char hexa[2*p_fmt->i_extra +1];
}
break;
}
- case VLC_FOURCC( 'm', 'p', '4', 'a' ):
+ case VLC_CODEC_MP4A:
{
if(!p_sys->b_latm)
{
}
break;
}
- case VLC_FOURCC( 's', 'a', 'm', 'r' ):
+ case VLC_CODEC_AMR_NB:
id->psz_enc = "AMR";
id->psz_fmtp = strdup( "octet-align=1" );
id->pf_packetize = rtp_packetize_amr;
break;
- case VLC_FOURCC( 's', 'a', 'w', 'b' ):
+ case VLC_CODEC_AMR_WB:
id->psz_enc = "AMR-WB";
id->psz_fmtp = strdup( "octet-align=1" );
id->pf_packetize = rtp_packetize_amr;
break;
- case VLC_FOURCC( 's', 'p', 'x', ' ' ):
+ case VLC_CODEC_SPEEX:
id->psz_enc = "SPEEX";
id->pf_packetize = rtp_packetize_spx;
break;
- case VLC_FOURCC( 't', '1', '4', '0' ):
+ case VLC_CODEC_ITU_T140:
id->psz_enc = "t140" ;
id->i_clock_rate = 1000;
id->pf_packetize = rtp_packetize_t140;
return NULL;
if( p_fmt->i_cat == VIDEO_ES &&
- ( p_fmt->i_codec == VLC_FOURCC('m', 'p', 'g', 'v') ||
+ ( p_fmt->i_codec == VLC_CODEC_MPGV ||
p_fmt->i_codec == VLC_FOURCC('f', 'a', 'k', 'e') ) )
{
id->b_switcher_video = true;
- p_fmt->i_codec = VLC_FOURCC('m', 'p', 'g', 'v');
+ p_fmt->i_codec = VLC_CODEC_MPGV;
msg_Dbg( p_stream, "creating video switcher for fcc=`%4.4s' cmd:%d",
(char*)&p_fmt->i_codec, p_sys->i_cmd );
}
else if ( p_fmt->i_cat == AUDIO_ES &&
- p_fmt->i_codec == VLC_FOURCC('m', 'p', 'g', 'a') &&
+ p_fmt->i_codec == VLC_CODEC_MPGA &&
p_sys->b_audio )
{
int i_ff_codec = CODEC_ID_MP2;
return -1;
}
- vout_InitPicture( VLC_OBJECT(p_stream), p_pic, VLC_FOURCC('I','4','2','0'),
+ vout_InitPicture( VLC_OBJECT(p_stream), p_pic, VLC_CODEC_I420,
i_width, i_height,
i_width * VOUT_ASPECT_FACTOR / i_height );
for ( i = 0; i < p_pic->i_planes; i++ )
if( p_sys->i_acodec )
{
- if( p_sys->i_acodec == VLC_FOURCC('m','p','3',0) &&
+ if( p_sys->i_acodec == VLC_FOURCC('m','p','3',' ') &&
p_sys->i_channels > 2 )
{
msg_Warn( p_stream, "%d channels invalid for mp3, forcing to 2",
&p_sys->p_osd_cfg, strdup( "dvbsub") );
free( psz_next );
- p_sys->i_osdcodec = VLC_FOURCC('Y','U','V','P' );
+ p_sys->i_osdcodec = VLC_CODEC_YUVP;
msg_Dbg( p_stream, "codec osd=%4.4s", (char *)&p_sys->i_osdcodec );
p_dst->audio.i_rate );
/* If any filter is needed, convert to fl32 */
- if( current.i_codec != VLC_FOURCC('f','l','3','2') )
+ if( current.i_codec != VLC_CODEC_FL32 )
{
/* First step, convert to fl32 */
current.i_codec =
- current.audio.i_format = VLC_FOURCC('f','l','3','2');
+ current.audio.i_format = VLC_CODEC_FL32;
if( !filter_chain_AppendFilter( p_chain, NULL, NULL, NULL, ¤t ) )
{
aout_BitsPerSample( id->p_decoder->fmt_out.i_codec );
fmt_last = id->p_decoder->fmt_out;
/* Fix AAC SBR changing number of channels and sampling rate */
- if( !(id->p_decoder->fmt_in.i_codec == VLC_FOURCC('m','p','4','a') &&
+ if( !(id->p_decoder->fmt_in.i_codec == VLC_CODEC_MP4A &&
fmt_last.audio.i_rate != id->p_encoder->fmt_in.audio.i_rate &&
fmt_last.audio.i_channels != id->p_encoder->fmt_in.audio.i_channels) )
fmt_last.audio.i_rate = id->p_decoder->fmt_in.audio.i_rate;
{
es_format_t fmt_fl32 = fmt_last;
fmt_fl32.i_codec =
- fmt_fl32.audio.i_format = VLC_FOURCC('f','l','3','2');
+ fmt_fl32.audio.i_format = VLC_CODEC_FL32;
if( transcode_audio_filter_chain_build( p_stream, id->p_uf_chain,
&fmt_fl32, &fmt_last ) )
{
}
fmt_last = id->p_encoder->fmt_in;
- /* FIXME: Hack for mp3 transcoding support */
- if( id->p_encoder->fmt_out.i_codec == VLC_FOURCC( 'm','p','3',' ' ) )
- id->p_encoder->fmt_out.i_codec = VLC_FOURCC( 'm','p','g','a' );
+ /* */
+ id->p_encoder->fmt_out.i_codec =
+ vlc_fourcc_GetCodec( AUDIO_ES, id->p_encoder->fmt_out.i_codec );
return VLC_SUCCESS;
}
id->p_encoder->fmt_in.video.i_chroma = id->p_encoder->fmt_in.i_codec;
- /* Hack for mp2v/mp1v transcoding support */
- if( id->p_encoder->fmt_out.i_codec == VLC_FOURCC('m','p','1','v') ||
- id->p_encoder->fmt_out.i_codec == VLC_FOURCC('m','p','2','v') )
- {
- id->p_encoder->fmt_out.i_codec = VLC_FOURCC('m','p','g','v');
- }
+ /* */
+ id->p_encoder->fmt_out.i_codec =
+ vlc_fourcc_GetCodec( VIDEO_ES, id->p_encoder->fmt_out.i_codec );
id->id = sout_StreamIdAdd( p_stream->p_sys->p_out,
&id->p_encoder->fmt_out );
/* Open encoder */
es_format_Init( &id->p_encoder->fmt_in, id->p_decoder->fmt_in.i_cat,
- VLC_FOURCC('Y','U','V','A') );
+ VLC_CODEC_YUVA );
id->p_encoder->fmt_in.psz_language = strdup( "osd" );
id->p_encoder->p_cfg = p_sys->p_osd_cfg;
id->id = NULL;
if( p_fmt->i_cat == VIDEO_ES
- && p_fmt->i_codec == VLC_FOURCC('m', 'p', 'g', 'v') )
+ && p_fmt->i_codec == VLC_CODEC_MPGV )
{
msg_Dbg( p_stream,
"creating video transrating for fcc=`%4.4s'",