#ifndef VLC_CODECS_H
#define VLC_CODECS_H 1
+#include <vlc_fourcc.h>
/**
* \file
* This file defines codec related structures needed by the demuxers and decoders
{ WAVE_FORMAT_PCM, VLC_FOURCC( 'a', 'r', 'a', 'w' ), "Raw audio" },
{ WAVE_FORMAT_ADPCM, VLC_FOURCC( 'm', 's', 0x00,0x02), "ADPCM" },
{ WAVE_FORMAT_IEEE_FLOAT, VLC_FOURCC( 'a', 'f', 'l', 't' ), "IEEE Float audio" },
- { WAVE_FORMAT_ALAW, VLC_FOURCC( 'a', 'l', 'a', 'w' ), "A-Law" },
- { WAVE_FORMAT_MULAW, VLC_FOURCC( 'm', 'l', 'a', 'w' ), "Mu-Law" },
+ { WAVE_FORMAT_ALAW, VLC_CODEC_ALAW, "A-Law" },
+ { WAVE_FORMAT_MULAW, VLC_CODEC_MULAW, "Mu-Law" },
{ WAVE_FORMAT_IMA_ADPCM, VLC_FOURCC( 'm', 's', 0x00,0x11), "Ima-ADPCM" },
- { WAVE_FORMAT_GSM610, VLC_FOURCC( 'a', 'g', 's', 'm' ), "Microsoft WAV GSM" },
- { WAVE_FORMAT_G726, VLC_FOURCC( 'g', '7', '2', '6' ), "G.726 ADPCM" },
- { WAVE_FORMAT_MPEGLAYER3, VLC_FOURCC( 'm', 'p', 'g', 'a' ), "Mpeg Audio" },
- { WAVE_FORMAT_MPEG, VLC_FOURCC( 'm', 'p', 'g', 'a' ), "Mpeg Audio" },
- { WAVE_FORMAT_A52, VLC_FOURCC( 'a', '5', '2', ' ' ), "A/52" },
- { WAVE_FORMAT_WMA1, VLC_FOURCC( 'w', 'm', 'a', '1' ), "Window Media Audio v1" },
- { WAVE_FORMAT_WMA2, VLC_FOURCC( 'w', 'm', 'a', '2' ), "Window Media Audio v2" },
- { WAVE_FORMAT_WMA2, VLC_FOURCC( 'w', 'm', 'a', ' ' ), "Window Media Audio v2" },
- { WAVE_FORMAT_WMAP, VLC_FOURCC( 'w', 'm', 'a', 'p' ), "Window Media Audio 9 Professional" },
- { WAVE_FORMAT_WMAL, VLC_FOURCC( 'w', 'm', 'a', 'l' ), "Window Media Audio 9 Lossless" },
- { WAVE_FORMAT_WMAS, VLC_FOURCC( 'w', 'm', 'a', 's' ), "Window Media Audio 9 Speech" },
+ { WAVE_FORMAT_GSM610, VLC_CODEC_GSM_MS, "Microsoft WAV GSM" },
+ { WAVE_FORMAT_G726, VLC_CODEC_ADPCM_G726, "G.726 ADPCM" },
+ { WAVE_FORMAT_MPEGLAYER3, VLC_CODEC_MPGA, "Mpeg Audio" },
+ { WAVE_FORMAT_MPEG, VLC_CODEC_MPGA, "Mpeg Audio" },
+ { WAVE_FORMAT_A52, VLC_CODEC_A52, "A/52" },
+ { WAVE_FORMAT_WMA1, VLC_CODEC_WMA1, "Window Media Audio v1" },
+ { WAVE_FORMAT_WMA2, VLC_CODEC_WMA2, "Window Media Audio v2" },
+ { WAVE_FORMAT_WMAP, VLC_CODEC_WMAP, "Window Media Audio 9 Professional" },
+ { WAVE_FORMAT_WMAL, VLC_CODEC_WMAL, "Window Media Audio 9 Lossless" },
+ { WAVE_FORMAT_WMAS, VLC_CODEC_WMAS, "Window Media Audio 9 Speech" },
{ WAVE_FORMAT_DK3, VLC_FOURCC( 'm', 's', 0x00,0x61), "Duck DK3" },
{ WAVE_FORMAT_DK4, VLC_FOURCC( 'm', 's', 0x00,0x62), "Duck DK4" },
- { WAVE_FORMAT_DTS, VLC_FOURCC( 'd', 't', 's', ' ' ), "DTS Coherent Acoustics" },
- { WAVE_FORMAT_DTS_MS, VLC_FOURCC( 'd', 't', 's', ' ' ), "DTS Coherent Acoustics" },
- { WAVE_FORMAT_DIVIO_AAC, VLC_FOURCC( 'm', 'p', '4', 'a' ), "MPEG-4 Audio (Divio)" },
- { WAVE_FORMAT_AAC, VLC_FOURCC( 'm', 'p', '4', 'a' ), "MPEG-4 Audio" },
- { WAVE_FORMAT_FFMPEG_AAC, VLC_FOURCC( 'm', 'p', '4', 'a' ), "MPEG-4 Audio" },
- { WAVE_FORMAT_VORBIS, VLC_FOURCC( 'v', 'o', 'r', 'b' ), "Vorbis Audio" },
+ { WAVE_FORMAT_DTS, VLC_CODEC_DTS, "DTS Coherent Acoustics" },
+ { WAVE_FORMAT_DTS_MS, VLC_CODEC_DTS, "DTS Coherent Acoustics" },
+ { WAVE_FORMAT_DIVIO_AAC, VLC_CODEC_MP4A, "MPEG-4 Audio (Divio)" },
+ { WAVE_FORMAT_AAC, VLC_CODEC_MP4A, "MPEG-4 Audio" },
+ { WAVE_FORMAT_FFMPEG_AAC, VLC_CODEC_MP4A, "MPEG-4 Audio" },
+ { WAVE_FORMAT_VORBIS, VLC_CODEC_VORBIS, "Vorbis Audio" },
{ WAVE_FORMAT_VORB_1, VLC_FOURCC( 'v', 'o', 'r', '1' ), "Vorbis 1 Audio" },
{ WAVE_FORMAT_VORB_1PLUS, VLC_FOURCC( 'v', 'o', '1', '+' ), "Vorbis 1+ Audio" },
{ WAVE_FORMAT_VORB_2, VLC_FOURCC( 'v', 'o', 'r', '2' ), "Vorbis 2 Audio" },
{ WAVE_FORMAT_VORB_2PLUS, VLC_FOURCC( 'v', 'o', '2', '+' ), "Vorbis 2+ Audio" },
{ WAVE_FORMAT_VORB_3, VLC_FOURCC( 'v', 'o', 'r', '3' ), "Vorbis 3 Audio" },
{ WAVE_FORMAT_VORB_3PLUS, VLC_FOURCC( 'v', 'o', '3', '+' ), "Vorbis 3+ Audio" },
- { WAVE_FORMAT_SPEEX, VLC_FOURCC( 's', 'p', 'x', ' ' ), "Speex Audio" },
+ { WAVE_FORMAT_SPEEX, VLC_CODEC_SPEEX, "Speex Audio" },
{ WAVE_FORMAT_UNKNOWN, VLC_FOURCC( 'u', 'n', 'd', 'f' ), "Unknown" }
};
uint8_t i_flavor;
};
-#ifdef WORDS_BIGENDIAN
-# define AUDIO_FMT_S16_NE VLC_FOURCC('s','1','6','b')
-# define AUDIO_FMT_U16_NE VLC_FOURCC('u','1','6','b')
-#else
-# define AUDIO_FMT_S16_NE VLC_FOURCC('s','1','6','l')
-# define AUDIO_FMT_U16_NE VLC_FOURCC('u','1','6','l')
-#endif
+#define AUDIO_FMT_S16_NE VLC_CODEC_S16N
+#define AUDIO_FMT_U16_NE VLC_CODEC_U16N
/**
* video format description
#define VLC_CODEC_GREY VLC_FOURCC('G','R','E','Y')
/* Packed YUV 4:2:2, U:Y:V:Y */
#define VLC_CODEC_UYVY VLC_FOURCC('U','Y','V','Y')
+/* Packed YUV 4:2:2, V:Y:U:Y */
+#define VLC_CODEC_VYUY VLC_FOURCC('V','Y','U','Y')
/* Packed YUV 4:2:2, Y:U:Y:V */
#define VLC_CODEC_YUYV VLC_FOURCC('Y','U','Y','2')
/* Packed YUV 4:2:2, Y:V:Y:U */
i_height = p_sys->camera.frame_height;
i_aspect = vout_InitPicture( VLC_OBJECT(p_demux), &p_sys->pic,
- VLC_FOURCC('U', 'Y', 'V', 'Y'),
+ VLC_CODEC_UYVY,
i_width, i_height,
i_width * VOUT_ASPECT_FACTOR / i_height );
- es_format_Init( &fmt, VIDEO_ES, VLC_FOURCC('U', 'Y', 'V', 'Y') );
+ es_format_Init( &fmt, VIDEO_ES, VLC_CODEC_UYVY );
fmt.video.i_width = i_width;
fmt.video.i_height = i_height;
if( p_sys->fd_audio >= 0 )
{
es_format_t fmt;
- es_format_Init( &fmt, AUDIO_ES, VLC_FOURCC('a','r','a','w') );
+ es_format_Init( &fmt, AUDIO_ES, VLC_CODEC_S16L ); /* FIXME: hmm, ?? */
fmt.audio.i_channels = p_sys->channels ? p_sys->channels : 1;
fmt.audio.i_rate = p_sys->i_sample_rate;
- fmt.audio.i_bitspersample = 16; /* FIXME: hmm, ?? */
+ fmt.audio.i_bitspersample = 16;
fmt.audio.i_blockalign = fmt.audio.i_channels *
fmt.audio.i_bitspersample / 8;
fmt.i_bitrate = fmt.audio.i_channels * fmt.audio.i_rate *
var_Get( p_this, "dshow-chroma", &val );
if( val.psz_string && strlen( val.psz_string ) >= 4 )
{
- i_chroma = VLC_FOURCC( val.psz_string[0], val.psz_string[1],
- val.psz_string[2], val.psz_string[3] );
+ i_chroma = vlc_fourcc_GetCodec( UNKNOWN_ES,
+ VLC_FOURCC( val.psz_string[0], val.psz_string[1],
+ val.psz_string[2], val.psz_string[3] ) );
p_sys->b_chroma = true;
}
free( val.psz_string );
if( p_stream->mt.majortype == MEDIATYPE_Video )
{
if( /* Raw DV stream */
- p_stream->i_fourcc == VLC_FOURCC('d','v','s','l') ||
- p_stream->i_fourcc == VLC_FOURCC('d','v','s','d') ||
- p_stream->i_fourcc == VLC_FOURCC('d','v','h','d') ||
+ p_stream->i_fourcc == VLC_CODEC_DV ||
/* Raw MPEG video stream */
- p_stream->i_fourcc == VLC_FOURCC('m','p','2','v') )
+ p_stream->i_fourcc == VLC_CODEC_MP2V )
{
b_use_audio = false;
}
/* Setup rgb mask for RGB formats */
- if( p_stream->i_fourcc == VLC_FOURCC('R','V','2','4') )
+ if( p_stream->i_fourcc == VLC_CODEC_RGB24 )
{
/* This is in BGR format */
fmt.video.i_bmask = 0x00ff0000;
/* Check if we need to force demuxers */
if( !p_access->psz_demux || !*p_access->psz_demux )
{
- if( p_stream->i_fourcc == VLC_FOURCC('d','v','s','l') ||
- p_stream->i_fourcc == VLC_FOURCC('d','v','s','d') ||
- p_stream->i_fourcc == VLC_FOURCC('d','v','h','d') )
+ if( p_stream->i_fourcc == VLC_CODEC_DV )
{
free( p_access->psz_demux );
p_access->psz_demux = strdup( "rawdv" );
}
- else if( p_stream->i_fourcc == VLC_FOURCC('m','p','2','v') )
+ else if( p_stream->i_fourcc == VLC_CODEC_MP2V )
{
free( p_access->psz_demux );
p_access->psz_demux = strdup( "mpgv" );
{
switch( i_fourcc )
{
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('f','l','3','2'):
+ case VLC_CODEC_I420:
+ case VLC_CODEC_FL32:
return 9;
- case VLC_FOURCC('Y','V','1','2'):
+ case VLC_CODEC_YV12:
case VLC_FOURCC('a','r','a','w'):
return 8;
- case VLC_FOURCC('R','V','2','4'):
+ case VLC_CODEC_RGB24:
return 7;
- case VLC_FOURCC('Y','U','Y','2'):
- case VLC_FOURCC('R','V','3','2'):
- case VLC_FOURCC('R','G','B','A'):
+ case VLC_CODEC_YUYV:
+ case VLC_CODEC_RGB32:
+ case VLC_CODEC_RGBA:
return 6;
}
val = i_bitspersample;
if( ! val )
{
- if( VLC_FOURCC('f', 'l', '3', '2') == i_current_fourcc )
+ if( VLC_CODEC_FL32 == i_current_fourcc )
val = 32;
else
val = 16;
{
// output format for 'Hauppauge WinTV PVR PCI II Capture'
// try I420 as an input format
- i_current_fourcc = VLC_FOURCC('I','4','2','0');
+ i_current_fourcc = VLC_CODEC_I420;
if( !i_fourcc || i_fourcc == i_current_fourcc )
{
// return alternative media type
((VIDEOINFOHEADER *)p_mt->pbFormat)->bmiHeader.biHeight;
vh.bmiHeader.biPlanes = 3;
vh.bmiHeader.biBitCount = 12;
- vh.bmiHeader.biCompression = VLC_FOURCC('I','4','2','0');
+ vh.bmiHeader.biCompression = VLC_CODEC_I420;
vh.bmiHeader.biSizeImage = vh.bmiHeader.biWidth * 12 *
vh.bmiHeader.biHeight / 8;
mtr.lSampleSize = vh.bmiHeader.biSizeImage;
else if( media_type.subtype == MEDIASUBTYPE_RGB8 )
i_fourcc = VLC_FOURCC( 'R', 'G', 'B', '8' );
else if( media_type.subtype == MEDIASUBTYPE_RGB555 )
- i_fourcc = VLC_FOURCC( 'R', 'V', '1', '5' );
+ i_fourcc = VLC_CODEC_RGB15;
else if( media_type.subtype == MEDIASUBTYPE_RGB565 )
- i_fourcc = VLC_FOURCC( 'R', 'V', '1', '6' );
+ i_fourcc = VLC_CODEC_RGB16;
else if( media_type.subtype == MEDIASUBTYPE_RGB24 )
- i_fourcc = VLC_FOURCC( 'R', 'V', '2', '4' );
+ i_fourcc = VLC_CODEC_RGB24;
else if( media_type.subtype == MEDIASUBTYPE_RGB32 )
- i_fourcc = VLC_FOURCC( 'R', 'V', '3', '2' );
+ i_fourcc = VLC_CODEC_RGB32;
else if( media_type.subtype == MEDIASUBTYPE_ARGB32 )
- i_fourcc = VLC_FOURCC( 'R', 'G', 'B', 'A' );
+ i_fourcc = VLC_CODEC_RGBA;
/* Planar YUV formats */
else if( media_type.subtype == MEDIASUBTYPE_I420 )
- i_fourcc = VLC_FOURCC( 'I', '4', '2', '0' );
+ i_fourcc = VLC_CODEC_I420;
else if( media_type.subtype == MEDIASUBTYPE_Y41P )
- i_fourcc = VLC_FOURCC( 'I', '4', '1', '1' );
+ i_fourcc = VLC_CODEC_I411;
else if( media_type.subtype == MEDIASUBTYPE_YV12 )
- i_fourcc = VLC_FOURCC( 'Y', 'V', '1', '2' );
+ i_fourcc = VLC_CODEC_YV12;
else if( media_type.subtype == MEDIASUBTYPE_IYUV )
- i_fourcc = VLC_FOURCC( 'Y', 'V', '1', '2' );
+ i_fourcc = VLC_CODEC_YV12;
else if( media_type.subtype == MEDIASUBTYPE_YVU9 )
- i_fourcc = VLC_FOURCC( 'Y', 'V', 'U', '9' );
+ i_fourcc = VLC_CODEC_I410;
/* Packed YUV formats */
else if( media_type.subtype == MEDIASUBTYPE_YVYU )
- i_fourcc = VLC_FOURCC( 'Y', 'V', 'Y', 'U' );
+ i_fourcc = VLC_CODEC_YVYU;
else if( media_type.subtype == MEDIASUBTYPE_YUYV )
- i_fourcc = VLC_FOURCC( 'Y', 'U', 'Y', '2' );
+ i_fourcc = VLC_CODEC_YUYV;
else if( media_type.subtype == MEDIASUBTYPE_Y411 )
i_fourcc = VLC_FOURCC( 'I', '4', '1', 'N' );
else if( media_type.subtype == MEDIASUBTYPE_Y211 )
- i_fourcc = VLC_FOURCC( 'Y', '2', '1', '1' );
+ i_fourcc = VLC_CODEC_Y211;
else if( media_type.subtype == MEDIASUBTYPE_YUY2 )
- i_fourcc = VLC_FOURCC( 'Y', 'U', 'Y', '2' );
+ i_fourcc = VLC_CODEC_YUYV;
else if( media_type.subtype == MEDIASUBTYPE_UYVY )
- i_fourcc = VLC_FOURCC( 'U', 'Y', 'V', 'Y' );
+ i_fourcc = VLC_CODEC_UYVY;
/* HDYC uses UYVY sample positions but Rec709 colourimetry */
/* FIXME: When VLC understands colourspace, something will need
* to be added / changed here. Until then, just make it behave
* like UYVY */
else if( media_type.subtype == MEDIASUBTYPE_HDYC )
- i_fourcc = VLC_FOURCC( 'U', 'Y', 'V', 'Y');
+ i_fourcc = VLC_CODEC_UYVY;
/* MPEG2 video elementary stream */
else if( media_type.subtype == MEDIASUBTYPE_MPEG2_VIDEO )
- i_fourcc = VLC_FOURCC( 'm', 'p', '2', 'v' );
+ i_fourcc = VLC_CODEC_MP2V;
- /* DivX video */
+ /* DivX video */
else if( media_type.subtype == MEDIASUBTYPE_DIVX )
- i_fourcc = VLC_FOURCC( 'D', 'I', 'V', 'X' );
+ i_fourcc = VLC_CODEC_MP4V;
/* DV formats */
else if( media_type.subtype == MEDIASUBTYPE_dvsl )
- i_fourcc = VLC_FOURCC( 'd', 'v', 's', 'l' );
+ i_fourcc = VLC_CODEC_DV;
else if( media_type.subtype == MEDIASUBTYPE_dvsd )
- i_fourcc = VLC_FOURCC( 'd', 'v', 's', 'd' );
+ i_fourcc = VLC_CODEC_DV;
else if( media_type.subtype == MEDIASUBTYPE_dvhd )
- i_fourcc = VLC_FOURCC( 'd', 'v', 'h', 'd' );
+ i_fourcc = VLC_CODEC_DV;
/* MJPEG format */
else if( media_type.subtype == MEDIASUBTYPE_MJPG )
- i_fourcc = VLC_FOURCC( 'M', 'J', 'P', 'G' );
+ i_fourcc = VLC_CODEC_MJPG;
}
}
if( media_type.subtype == MEDIASUBTYPE_PCM )
i_fourcc = VLC_FOURCC( 'a', 'r', 'a', 'w' );
else if( media_type.subtype == MEDIASUBTYPE_IEEE_FLOAT )
- i_fourcc = VLC_FOURCC( 'f', 'l', '3', '2' );
+ i_fourcc = VLC_CODEC_FL32;
}
}
else if( media_type.majortype == MEDIATYPE_Stream )
p_sys->jack_sample_size = sizeof( jack_default_audio_sample_t );
/* Define output format */
- es_format_Init( &fmt, AUDIO_ES, VLC_FOURCC( 'f','l','3','2' ) );
+ es_format_Init( &fmt, AUDIO_ES, VLC_CODEC_FL32 );
fmt.audio.i_channels = p_sys->i_channels;
fmt.audio.i_rate = p_sys->jack_sample_rate;
fmt.audio.i_bitspersample = p_sys->jack_sample_size * 8;
p_sys->i_sample_rate );
es_format_t fmt;
- es_format_Init( &fmt, AUDIO_ES, VLC_FOURCC('a','r','a','w') );
+ es_format_Init( &fmt, AUDIO_ES, VLC_CODEC_S16L );
fmt.audio.i_channels = p_sys->b_stereo ? 2 : 1;
fmt.audio.i_rate = p_sys->i_sample_rate;
} qtchroma_to_fourcc[] =
{
/* Raw data types */
- { k422YpCbCr8CodecType, VLC_FOURCC('U','Y','V','Y') },
- { kComponentVideoCodecType,VLC_FOURCC('Y','U','Y','2') },
+ { k422YpCbCr8CodecType, VLC_CODEC_UYVY },
+ { kComponentVideoCodecType,VLC_CODEC_YUYV },
{ 0, 0 }
};
int i;
{
es_format_t fmt;
- es_format_Init (&fmt, AUDIO_ES, VLC_FOURCC ('u', 'l', 'a', 'w'));
+ es_format_Init (&fmt, AUDIO_ES, VLC_CODEC_MULAW);
fmt.audio.i_rate = 8000;
fmt.audio.i_channels = 1;
return codec_init (demux, &fmt);
{
es_format_t fmt;
- es_format_Init (&fmt, AUDIO_ES, VLC_FOURCC ('g', 's', 'm', ' '));
+ es_format_Init (&fmt, AUDIO_ES, VLC_CODEC_GSM);
fmt.audio.i_rate = 8000;
fmt.audio.i_channels = 1;
return codec_init (demux, &fmt);
{
es_format_t fmt;
- es_format_Init (&fmt, AUDIO_ES, VLC_FOURCC ('a', 'l', 'a', 'w'));
+ es_format_Init (&fmt, AUDIO_ES, VLC_CODEC_ALAW);
fmt.audio.i_rate = 8000;
fmt.audio.i_channels = 1;
return codec_init (demux, &fmt);
{
es_format_t fmt;
- es_format_Init (&fmt, AUDIO_ES, VLC_FOURCC ('s', '1', '6', 'b'));
+ es_format_Init (&fmt, AUDIO_ES, VLC_CODEC_S16B);
fmt.audio.i_rate = 44100;
fmt.audio.i_channels = 2;
return codec_init (demux, &fmt);
{
es_format_t fmt;
- es_format_Init (&fmt, AUDIO_ES, VLC_FOURCC ('s', '1', '6', 'b'));
+ es_format_Init (&fmt, AUDIO_ES, VLC_CODEC_S16B);
fmt.audio.i_rate = 44100;
fmt.audio.i_channels = 1;
return codec_init (demux, &fmt);
{
es_format_t fmt;
- es_format_Init (&fmt, AUDIO_ES, VLC_FOURCC ('Q', 'c', 'l', 'p'));
+ es_format_Init (&fmt, AUDIO_ES, VLC_CODEC_QCELP);
fmt.audio.i_rate = 8000;
fmt.audio.i_channels = 1;
return codec_init (demux, &fmt);
{
es_format_t fmt;
- es_format_Init (&fmt, AUDIO_ES, VLC_FOURCC ('m', 'p', 'g', 'a'));
+ es_format_Init (&fmt, AUDIO_ES, VLC_CODEC_MPGA);
fmt.audio.i_channels = 2;
fmt.b_packetized = false;
return codec_init (demux, &fmt);
{
es_format_t fmt;
- es_format_Init (&fmt, VIDEO_ES, VLC_FOURCC ('m', 'p', 'g', 'v'));
+ es_format_Init (&fmt, VIDEO_ES, VLC_CODEC_MPGV);
fmt.b_packetized = false;
return codec_init (demux, &fmt);
}
break;
es_format_t fmt;
- es_format_Init (&fmt, AUDIO_ES, VLC_FOURCC ('v','o','r','b'));
+ es_format_Init (&fmt, AUDIO_ES, VLC_CODEC_VORBIS);
fmt.p_extra = extv;
fmt.i_extra = extc;
codec_destroy (demux, self->id);
switch( p_data->p_screen->ColorSpace() )
{
case B_RGB32:
- i_chroma = VLC_FOURCC('R','V','3','2');
+ i_chroma = VLC_CODEC_RGB32;
i_bits_per_pixel = 32;
break;
case B_RGB16:
- i_chroma = VLC_FOURCC('R','V','1','6');
+ i_chroma = VLC_CODEC_RGB16;
i_bits_per_pixel = 16;
break;
default:
CGLSetOffScreen( p_data->scaled, p_data->dest_width, p_data->dest_height,
p_data->dest_width * 4, p_data->scaled_image );
- es_format_Init( &p_sys->fmt, VIDEO_ES, VLC_FOURCC( 'R','V','3','2' ) );
+ es_format_Init( &p_sys->fmt, VIDEO_ES, VLC_CODEC_RGB32 );
/* p_sys->fmt.video.i_* must set to screen size, not subscreen size */
p_sys->fmt.video.i_width = p_data->screen_width;
msg_Dbg( p_demux, "Using %s for the mouse pointer image", psz_mouse );
memset( &fmt_in, 0, sizeof( fmt_in ) );
memset( &fmt_out, 0, sizeof( fmt_out ) );
- fmt_out.i_chroma = VLC_FOURCC('R','G','B','A');
+ fmt_out.i_chroma = VLC_CODEC_RGBA;
p_image = image_HandlerCreate( p_demux );
if( p_image )
{
if( p_sys->p_blend )
{
es_format_Init( &p_sys->p_blend->fmt_in, VIDEO_ES,
- VLC_FOURCC('R','G','B','A') );
+ VLC_CODEC_RGBA );
p_sys->p_blend->fmt_in.video = p_sys->p_mouse->format;
p_sys->p_blend->fmt_out = p_sys->fmt;
p_sys->p_blend->p_module =
switch( i_bits_per_pixel )
{
case 8: /* FIXME: set the palette */
- i_chroma = VLC_FOURCC('R','G','B','2'); break;
+ i_chroma = VLC_CODEC_RGB8; break;
case 15:
case 16: /* Yes it is really 15 bits (when using BI_RGB) */
- i_chroma = VLC_FOURCC('R','V','1','5'); break;
+ i_chroma = VLC_CODEC_RGB15; break;
case 24:
- i_chroma = VLC_FOURCC('R','V','2','4'); break;
+ i_chroma = VLC_CODEC_RGB24; break;
case 32:
- i_chroma = VLC_FOURCC('R','V','3','2'); break;
+ i_chroma = VLC_CODEC_RGB32; break;
default:
msg_Err( p_demux, "unknown screen depth %i",
p_sys->fmt.video.i_bits_per_pixel );
switch( i_chroma )
{
- case VLC_FOURCC('R','V','1','5'):
+ case VLC_CODEC_RGB15:
p_sys->fmt.video.i_rmask = 0x7c00;
p_sys->fmt.video.i_gmask = 0x03e0;
p_sys->fmt.video.i_bmask = 0x001f;
break;
- case VLC_FOURCC('R','V','2','4'):
+ case VLC_CODEC_RGB24:
p_sys->fmt.video.i_rmask = 0x00ff0000;
p_sys->fmt.video.i_gmask = 0x0000ff00;
p_sys->fmt.video.i_bmask = 0x000000ff;
break;
- case VLC_FOURCC('R','V','3','2'):
+ case VLC_CODEC_RGB32:
p_sys->fmt.video.i_rmask = 0x00ff0000;
p_sys->fmt.video.i_gmask = 0x0000ff00;
p_sys->fmt.video.i_bmask = 0x000000ff;
switch( win_info.depth )
{
case 8: /* FIXME: set the palette */
- i_chroma = VLC_FOURCC('R','G','B','2'); break;
+ i_chroma = VLC_CODEC_RGB8; break;
case 15:
- i_chroma = VLC_FOURCC('R','V','1','5'); break;
+ i_chroma = VLC_CODEC_RGB15; break;
case 16:
- i_chroma = VLC_FOURCC('R','V','1','6'); break;
+ i_chroma = VLC_CODEC_RGB16; break;
case 24:
case 32:
- i_chroma = VLC_FOURCC('R','V','3','2');
+ i_chroma = VLC_CODEC_RGB32;
win_info.depth = 32;
break;
default:
} v4lchroma_to_fourcc[] =
{
- { VIDEO_PALETTE_GREY, VLC_FOURCC( 'G', 'R', 'E', 'Y' ) },
+ { VIDEO_PALETTE_GREY, VLC_CODEC_GREY },
{ VIDEO_PALETTE_HI240, VLC_FOURCC( 'I', '2', '4', '0' ) },
- { VIDEO_PALETTE_RGB565, VLC_FOURCC( 'R', 'V', '1', '6' ) },
- { VIDEO_PALETTE_RGB555, VLC_FOURCC( 'R', 'V', '1', '5' ) },
- { VIDEO_PALETTE_RGB24, VLC_FOURCC( 'R', 'V', '2', '4' ) },
- { VIDEO_PALETTE_RGB32, VLC_FOURCC( 'R', 'V', '3', '2' ) },
- { VIDEO_PALETTE_YUV422, VLC_FOURCC( 'Y', 'U', 'Y', '2' ) },
- { VIDEO_PALETTE_YUV422, VLC_FOURCC( 'Y', 'U', 'Y', 'V' ) },
- { VIDEO_PALETTE_YUYV, VLC_FOURCC( 'Y', 'U', 'Y', '2' ) },
- { VIDEO_PALETTE_YUYV, VLC_FOURCC( 'Y', 'U', 'Y', 'V' ) },
- { VIDEO_PALETTE_UYVY, VLC_FOURCC( 'U', 'Y', 'V', 'Y' ) },
+ { VIDEO_PALETTE_RGB565, VLC_CODEC_RGB16 },
+ { VIDEO_PALETTE_RGB555, VLC_CODEC_RGB15 },
+ { VIDEO_PALETTE_RGB24, VLC_CODEC_RGB24 },
+ { VIDEO_PALETTE_RGB32, VLC_CODEC_RGB32 },
+ { VIDEO_PALETTE_YUV422, VLC_CODEC_YUYV },
+ { VIDEO_PALETTE_YUYV, VLC_CODEC_YUYV },
+ { VIDEO_PALETTE_UYVY, VLC_CODEC_UYVY },
{ VIDEO_PALETTE_YUV420, VLC_FOURCC( 'I', '4', '2', 'N' ) },
{ VIDEO_PALETTE_YUV411, VLC_FOURCC( 'I', '4', '1', 'N' ) },
{ VIDEO_PALETTE_RAW, VLC_FOURCC( 'G', 'R', 'A', 'W' ) },
- { VIDEO_PALETTE_YUV422P, VLC_FOURCC( 'I', '4', '2', '2' ) },
- { VIDEO_PALETTE_YUV420P, VLC_FOURCC( 'I', '4', '2', '0' ) },
- { VIDEO_PALETTE_YUV411P, VLC_FOURCC( 'I', '4', '1', '1' ) },
+ { VIDEO_PALETTE_YUV422P, VLC_CODEC_I422 },
+ { VIDEO_PALETTE_YUV420P, VLC_CODEC_I420 },
+ { VIDEO_PALETTE_YUV411P, VLC_CODEC_I411 },
{ 0, 0 }
};
/* Setup rgb mask for RGB formats */
switch( p_sys->i_fourcc )
{
- case VLC_FOURCC('R','V','1','5'):
+ case VLC_CODEC_RGB15:
fmt.video.i_rmask = 0x001f;
fmt.video.i_gmask = 0x03e0;
fmt.video.i_bmask = 0x7c00;
break;
- case VLC_FOURCC('R','V','1','6'):
+ case VLC_CODEC_RGB16:
fmt.video.i_rmask = 0x001f;
fmt.video.i_gmask = 0x07e0;
fmt.video.i_bmask = 0xf800;
break;
- 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;
if( strlen( psz ) >= 4 )
{
vid_picture.palette = 0;
- int i_chroma = VLC_FOURCC( psz[0], psz[1], psz[2], psz[3] );
+ int i_chroma = vlc_fourcc_GetCodec( VIDEO_ES,
+ VLC_FOURCC( psz[0], psz[1], psz[2], psz[3] ) );
/* Find out v4l chroma code */
for( i = 0; v4lchroma_to_fourcc[i].i_v4l != 0; i++ )
goto vdev_failed;
}
- p_sys->i_fourcc = VLC_FOURCC( 'm','j','p','g' );
+ p_sys->i_fourcc = VLC_CODEC_MJPG;
p_sys->i_frame_pos = -1;
/* queue up all the frames */
} v4l2chroma_to_fourcc[] =
{
/* Raw data types */
- { V4L2_PIX_FMT_GREY, VLC_FOURCC('G','R','E','Y'), 0, 0, 0 },
+ { V4L2_PIX_FMT_GREY, VLC_CODEC_GREY, 0, 0, 0 },
{ V4L2_PIX_FMT_HI240, VLC_FOURCC('I','2','4','0'), 0, 0, 0 },
- { V4L2_PIX_FMT_RGB555, VLC_FOURCC('R','V','1','5'), 0x001f,0x03e0,0x7c00 },
- { V4L2_PIX_FMT_RGB565, VLC_FOURCC('R','V','1','6'), 0x001f,0x07e0,0xf800 },
+ { V4L2_PIX_FMT_RGB555, VLC_CODEC_RGB15, 0x001f,0x03e0,0x7c00 },
+ { V4L2_PIX_FMT_RGB565, VLC_CODEC_RGB16, 0x001f,0x07e0,0xf800 },
/* Won't work since we don't know how to handle such gmask values
* correctly
- { V4L2_PIX_FMT_RGB555X, VLC_FOURCC('R','V','1','5'), 0x007c,0xe003,0x1f00 },
- { V4L2_PIX_FMT_RGB565X, VLC_FOURCC('R','V','1','6'), 0x00f8,0xe007,0x1f00 },
+ { V4L2_PIX_FMT_RGB555X, VLC_CODEC_RGB15, 0x007c,0xe003,0x1f00 },
+ { V4L2_PIX_FMT_RGB565X, VLC_CODEC_RGB16, 0x00f8,0xe007,0x1f00 },
*/
- { V4L2_PIX_FMT_BGR24, VLC_FOURCC('R','V','2','4'), 0xff0000,0xff00,0xff },
- { V4L2_PIX_FMT_RGB24, VLC_FOURCC('R','V','2','4'), 0xff,0xff00,0xff0000 },
- { V4L2_PIX_FMT_BGR32, VLC_FOURCC('R','V','3','2'), 0xff0000,0xff00,0xff },
- { V4L2_PIX_FMT_RGB32, VLC_FOURCC('R','V','3','2'), 0xff,0xff00,0xff0000 },
- { V4L2_PIX_FMT_YUYV, VLC_FOURCC('Y','U','Y','2'), 0, 0, 0 },
- { V4L2_PIX_FMT_YUYV, VLC_FOURCC('Y','U','Y','V'), 0, 0, 0 },
- { V4L2_PIX_FMT_UYVY, VLC_FOURCC('U','Y','V','Y'), 0, 0, 0 },
+ { V4L2_PIX_FMT_BGR24, VLC_CODEC_RGB24, 0xff0000,0xff00,0xff },
+ { V4L2_PIX_FMT_RGB24, VLC_CODEC_RGB24, 0xff,0xff00,0xff0000 },
+ { V4L2_PIX_FMT_BGR32, VLC_CODEC_RGB32, 0xff0000,0xff00,0xff },
+ { V4L2_PIX_FMT_RGB32, VLC_CODEC_RGB32, 0xff,0xff00,0xff0000 },
+ { V4L2_PIX_FMT_YUYV, VLC_CODEC_YUYV, 0, 0, 0 },
+ { V4L2_PIX_FMT_UYVY, VLC_CODEC_UYVY, 0, 0, 0 },
{ V4L2_PIX_FMT_Y41P, VLC_FOURCC('I','4','1','N'), 0, 0, 0 },
- { V4L2_PIX_FMT_YUV422P, VLC_FOURCC('I','4','2','2'), 0, 0, 0 },
- { V4L2_PIX_FMT_YVU420, VLC_FOURCC('Y','V','1','2'), 0, 0, 0 },
- { V4L2_PIX_FMT_YUV411P, VLC_FOURCC('I','4','1','1'), 0, 0, 0 },
- { V4L2_PIX_FMT_YUV410, VLC_FOURCC('I','4','1','0'), 0, 0, 0 },
+ { V4L2_PIX_FMT_YUV422P, VLC_CODEC_I422, 0, 0, 0 },
+ { V4L2_PIX_FMT_YVU420, VLC_CODEC_YV12, 0, 0, 0 },
+ { V4L2_PIX_FMT_YUV411P, VLC_CODEC_I411, 0, 0, 0 },
+ { V4L2_PIX_FMT_YUV410, VLC_CODEC_I410, 0, 0, 0 },
/* Raw data types, not in V4L2 spec but still in videodev2.h and supported
* by VLC */
- { V4L2_PIX_FMT_YUV420, VLC_FOURCC('I','4','2','0'), 0, 0, 0 },
- /* FIXME { V4L2_PIX_FMT_RGB444, VLC_FOURCC('R','V','3','2') }, */
+ { V4L2_PIX_FMT_YUV420, VLC_CODEC_I420, 0, 0, 0 },
+ /* FIXME { V4L2_PIX_FMT_RGB444, VLC_CODEC_RGB32 }, */
/* Compressed data types */
- { V4L2_PIX_FMT_MJPEG, VLC_FOURCC('M','J','P','G'), 0, 0, 0 },
+ { V4L2_PIX_FMT_MJPEG, VLC_CODEC_MJPG, 0, 0, 0 },
#if 0
{ V4L2_PIX_FMT_JPEG, VLC_FOURCC('J','P','E','G') },
{ V4L2_PIX_FMT_DV, VLC_FOURCC('?','?','?','?') },
/* User specified chroma */
if( strlen( p_sys->psz_requested_chroma ) >= 4 )
{
- int i_requested_fourcc = VLC_FOURCC(
+ int i_requested_fourcc = vlc_fourcc_GetCodec( VIDEO_ES,
+ VLC_FOURCC(
p_sys->psz_requested_chroma[0], p_sys->psz_requested_chroma[1],
- p_sys->psz_requested_chroma[2], p_sys->psz_requested_chroma[3] );
+ p_sys->psz_requested_chroma[2], p_sys->psz_requested_chroma[3] ) );
for( int i = 0; v4l2chroma_to_fourcc[i].i_v4l2 != 0; i++ )
{
if( v4l2chroma_to_fourcc[i].i_fourcc == i_requested_fourcc )
return VLC_EGENERIC;
}
- if ( p_filter->input.i_format != VLC_FOURCC('f','l','3','2')
- || p_filter->output.i_format != VLC_FOURCC('f','l','3','2') )
+ if ( p_filter->input.i_format != VLC_CODEC_FL32
+ || p_filter->output.i_format != VLC_CODEC_FL32 )
{
return VLC_EGENERIC;
}
p_filter->input.i_original_channels =
p_filter->output.i_original_channels;
}
- if( p_filter->input.i_format != VLC_FOURCC('f','l','3','2')
- || p_filter->output.i_format != VLC_FOURCC('f','l','3','2') )
+ if( p_filter->input.i_format != VLC_CODEC_FL32
+ || p_filter->output.i_format != VLC_CODEC_FL32 )
{
b_fit = false;
- p_filter->input.i_format = VLC_FOURCC('f','l','3','2');
- p_filter->output.i_format = VLC_FOURCC('f','l','3','2');
+ p_filter->input.i_format = VLC_CODEC_FL32;
+ p_filter->output.i_format = VLC_CODEC_FL32;
}
if( p_filter->input.i_rate != p_filter->output.i_rate )
{
p_filter->fmt_in.audio.i_original_channels =
p_filter->fmt_out.audio.i_original_channels;
}
- if( p_filter->fmt_in.audio.i_format != VLC_FOURCC('f','l','3','2')
- || p_filter->fmt_out.audio.i_format != VLC_FOURCC('f','l','3','2') )
+ if( p_filter->fmt_in.audio.i_format != VLC_CODEC_FL32
+ || p_filter->fmt_out.audio.i_format != VLC_CODEC_FL32 )
{
b_fit = false;
- p_filter->fmt_in.audio.i_format = VLC_FOURCC('f','l','3','2');
- p_filter->fmt_out.audio.i_format = VLC_FOURCC('f','l','3','2');
+ p_filter->fmt_in.audio.i_format = VLC_CODEC_FL32;
+ p_filter->fmt_out.audio.i_format = VLC_CODEC_FL32;
}
if( p_filter->fmt_in.audio.i_rate != p_filter->fmt_out.audio.i_rate )
{
*****************************************************************************/
static bool IsSupported( const audio_format_t *p_input, const audio_format_t *p_output )
{
- if( p_input->i_format != VLC_FOURCC('f','l','3','2') ||
+ if( p_input->i_format != VLC_CODEC_FL32 ||
p_input->i_format != p_output->i_format ||
p_input->i_rate != p_output->i_rate )
return false;
== p_filter->output.i_original_channels)
|| p_filter->input.i_format != p_filter->output.i_format
|| p_filter->input.i_rate != p_filter->output.i_rate
- || (p_filter->input.i_format != VLC_FOURCC('f','l','3','2')
- && p_filter->input.i_format != VLC_FOURCC('f','i','3','2')) )
+ || (p_filter->input.i_format != VLC_CODEC_FL32
+ && p_filter->input.i_format != VLC_CODEC_FI32) )
{
return -1;
}
filter_sys_t *p_sys = (filter_sys_t *)p_filter->p_sys;
int i_ret;
- if ( p_filter->input.i_format != VLC_FOURCC('a','5','2',' ')
+ if ( p_filter->input.i_format != VLC_CODEC_A52
#ifdef LIBA52_FIXED
- || p_filter->output.i_format != VLC_FOURCC('f','i','3','2') )
+ || p_filter->output.i_format != VLC_CODEC_FI32 )
#else
- || p_filter->output.i_format != VLC_FOURCC('f','l','3','2') )
+ || p_filter->output.i_format != VLC_CODEC_FL32 )
#endif
{
return -1;
filter_sys_t *p_sys;
int i_ret;
- if( p_filter->fmt_in.i_codec != VLC_FOURCC('a','5','2',' ') )
+ if( p_filter->fmt_in.i_codec != VLC_CODEC_A52 )
{
return VLC_EGENERIC;
}
p_filter->fmt_out.audio.i_format =
#ifdef LIBA52_FIXED
- p_filter->fmt_out.i_codec = VLC_FOURCC('f','i','3','2');
+ p_filter->fmt_out.i_codec = VLC_CODEC_FI32;
#else
- p_filter->fmt_out.i_codec = VLC_FOURCC('f','l','3','2');
+ p_filter->fmt_out.i_codec = VLC_CODEC_FL32;
#endif
p_filter->fmt_out.audio.i_bitspersample =
aout_BitsPerSample( p_filter->fmt_out.i_codec );
{
aout_filter_t * p_filter = (aout_filter_t *)p_this;
- if ( p_filter->input.i_format != VLC_FOURCC('a','5','2',' ') ||
- ( p_filter->output.i_format != VLC_FOURCC('s','p','d','b') &&
- p_filter->output.i_format != VLC_FOURCC('s','p','d','i') ) )
+ if ( p_filter->input.i_format != VLC_CODEC_A52 ||
+ ( p_filter->output.i_format != VLC_CODEC_SPDIFB &&
+ p_filter->output.i_format != VLC_CODEC_SPDIFL ) )
{
return -1;
}
uint8_t * p_out = p_out_buf->p_buffer;
/* Copy the S/PDIF headers. */
- if( p_filter->output.i_format == VLC_FOURCC('s','p','d','b') )
+ if( p_filter->output.i_format == VLC_CODEC_SPDIFB )
{
vlc_memcpy( p_out, p_sync_be, 6 );
p_out[4] = p_in[5] & 0x7; /* bsmod */
filter_sys_t *p_sys;
int i_ret;
- if ( p_filter->input.i_format != VLC_FOURCC('d','t','s',' ')
- || p_filter->output.i_format != VLC_FOURCC('f','l','3','2') )
+ if ( p_filter->input.i_format != VLC_CODEC_DTS
+ || p_filter->output.i_format != VLC_CODEC_FL32 )
{
return -1;
}
filter_sys_t *p_sys;
int i_ret;
- if( p_filter->fmt_in.i_codec != VLC_FOURCC('d','t','s',' ') )
+ if( p_filter->fmt_in.i_codec != VLC_CODEC_DTS )
{
return VLC_EGENERIC;
}
p_filter->fmt_out.audio.i_format =
- p_filter->fmt_out.i_codec = VLC_FOURCC('f','l','3','2');
+ p_filter->fmt_out.i_codec = VLC_CODEC_FL32;
p_filter->fmt_out.audio.i_bitspersample =
aout_BitsPerSample( p_filter->fmt_out.i_codec );
{
aout_filter_t * p_filter = (aout_filter_t *)p_this;
- if( p_filter->input.i_format != VLC_FOURCC('d','t','s',' ') ||
- ( p_filter->output.i_format != VLC_FOURCC('s','p','d','i') &&
- p_filter->output.i_format != VLC_FOURCC('s','p','d','b') ) )
+ if( p_filter->input.i_format != VLC_CODEC_DTS ||
+ ( p_filter->output.i_format != VLC_CODEC_SPDIFL &&
+ p_filter->output.i_format != VLC_CODEC_SPDIFB ) )
{
return -1;
}
}
/* Copy the S/PDIF headers. */
- if( p_filter->output.i_format == VLC_FOURCC('s','p','d','b') )
+ if( p_filter->output.i_format == VLC_CODEC_SPDIFB )
{
vlc_memcpy( p_out, p_sync_be, 6 );
p_out[5] = i_ac5_spdif_type;
p_out[7] = (( i_length ) >> 5 ) & 0xFF;
}
- if( ( (p_in[0] == 0x1F || p_in[0] == 0x7F) && p_filter->output.i_format == VLC_FOURCC('s','p','d','i') ) ||
- ( (p_in[0] == 0xFF || p_in[0] == 0xFE) && p_filter->output.i_format == VLC_FOURCC('s','p','d','b') ) )
+ if( ( (p_in[0] == 0x1F || p_in[0] == 0x7F) && p_filter->output.i_format == VLC_CODEC_SPDIFL ) ||
+ ( (p_in[0] == 0xFF || p_in[0] == 0xFE) && p_filter->output.i_format == VLC_CODEC_SPDIFB ) )
{
/* We are dealing with a big endian bitstream and a little endian output
* or a little endian bitstream and a big endian output.
{
aout_filter_t * p_filter = (aout_filter_t *)p_this;
- if ( p_filter->input.i_format != VLC_FOURCC('f','i','3','2')
+ if ( p_filter->input.i_format != VLC_CODEC_FI32
|| p_filter->output.i_format != AOUT_FMT_S16_NE )
{
return -1;
{
aout_filter_t * p_filter = (aout_filter_t *)p_this;
- if ( p_filter->output.i_format != VLC_FOURCC('f','i','3','2')
+ if ( p_filter->output.i_format != VLC_CODEC_FI32
|| p_filter->input.i_format != AOUT_FMT_S16_NE )
{
return -1;
{
aout_filter_t * p_filter = (aout_filter_t *)p_this;
- if ( p_filter->input.i_format != VLC_FOURCC('u','8',' ',' ')
- || p_filter->output.i_format != VLC_FOURCC('f','i','3','2') )
+ if ( p_filter->input.i_format != VLC_CODEC_U8
+ || p_filter->output.i_format != VLC_CODEC_FI32 )
{
return -1;
}
{
aout_filter_t * p_filter = (aout_filter_t *)p_this;
- if( ( p_filter->input.i_format != VLC_FOURCC('f','i','3','2')
- || p_filter->output.i_format != VLC_FOURCC('f','l','3','2') )
- && ( p_filter->input.i_format != VLC_FOURCC('f','l','3','2')
- || p_filter->output.i_format != VLC_FOURCC('f','i','3','2') ) )
+ if( ( p_filter->input.i_format != VLC_CODEC_FI32
+ || p_filter->output.i_format != VLC_CODEC_FL32 )
+ && ( p_filter->input.i_format != VLC_CODEC_FL32
+ || p_filter->output.i_format != VLC_CODEC_FI32 ) )
{
return -1;
}
return -1;
}
- if( p_filter->input.i_format == VLC_FOURCC('f','i','3','2') )
+ if( p_filter->input.i_format == VLC_CODEC_FI32 )
{
p_filter->pf_do_work = Do_F32ToFL32;
}
{
aout_filter_t * p_filter = (aout_filter_t *)p_this;
- if ( p_filter->input.i_format != VLC_FOURCC('f','l','3','2')
+ if ( p_filter->input.i_format != VLC_CODEC_FL32
|| p_filter->output.i_format != AOUT_FMT_S16_NE )
{
return -1;
{
aout_filter_t * p_filter = (aout_filter_t *)p_this;
- if ( p_filter->input.i_format != VLC_FOURCC('f','l','3','2')
- || p_filter->output.i_format != VLC_FOURCC('s','8',' ',' ') )
+ if ( p_filter->input.i_format != VLC_CODEC_FL32
+ || p_filter->output.i_format != VLC_CODEC_S8 )
{
return -1;
}
{
aout_filter_t * p_filter = (aout_filter_t *)p_this;
- if ( p_filter->input.i_format != VLC_FOURCC('f','l','3','2')
+ if ( p_filter->input.i_format != VLC_CODEC_FL32
|| p_filter->output.i_format != AOUT_FMT_U16_NE )
{
return -1;
{
aout_filter_t * p_filter = (aout_filter_t *)p_this;
- if ( p_filter->input.i_format != VLC_FOURCC('f','l','3','2')
- || p_filter->output.i_format != VLC_FOURCC('u','8',' ',' ') )
+ if ( p_filter->input.i_format != VLC_CODEC_FL32
+ || p_filter->output.i_format != VLC_CODEC_U8 )
{
return -1;
}
if ( ( p_filter->input.i_format != AOUT_FMT_S16_NE &&
p_filter->input.i_format != AOUT_FMT_S24_NE &&
p_filter->input.i_format != AOUT_FMT_S32_NE )
- || p_filter->output.i_format != VLC_FOURCC('f','l','3','2') )
+ || p_filter->output.i_format != VLC_CODEC_FL32 )
{
return -1;
}
return -1;
}
- if ( (p_filter->input.i_format == VLC_FOURCC('s','1','6','l') ||
- p_filter->input.i_format == VLC_FOURCC('s','1','6','b'))
- && p_filter->output.i_format == VLC_FOURCC('f','l','3','2')
+ if ( (p_filter->input.i_format == VLC_CODEC_S16L ||
+ p_filter->input.i_format == VLC_CODEC_S16B)
+ && p_filter->output.i_format == VLC_CODEC_FL32
&& p_filter->input.i_format != AOUT_FMT_S16_NE )
{
p_filter->pf_do_work = Do_S16ToFL32_SW;
return 0;
}
- if ( (p_filter->input.i_format == VLC_FOURCC('s','2','4','l') ||
- p_filter->input.i_format == VLC_FOURCC('s','2','4','b'))
- && p_filter->output.i_format == VLC_FOURCC('f','l','3','2')
+ if ( (p_filter->input.i_format == VLC_CODEC_S24L ||
+ p_filter->input.i_format == VLC_CODEC_S24B)
+ && p_filter->output.i_format == VLC_CODEC_FL32
&& p_filter->input.i_format != AOUT_FMT_S24_NE )
{
p_filter->pf_do_work = Do_S24ToFL32_SW;
return 0;
}
- if ( (p_filter->input.i_format == VLC_FOURCC('s','3','2','l') ||
- p_filter->input.i_format == VLC_FOURCC('s','3','2','b'))
- && p_filter->output.i_format == VLC_FOURCC('f','l','3','2')
+ if ( (p_filter->input.i_format == VLC_CODEC_S32L ||
+ p_filter->input.i_format == VLC_CODEC_S32B)
+ && p_filter->output.i_format == VLC_CODEC_FL32
&& p_filter->input.i_format != AOUT_FMT_S32_NE )
{
p_filter->pf_do_work = Do_S32ToFL32_SW;
{
aout_filter_t * p_filter = (aout_filter_t *)p_this;
- if ( p_filter->input.i_format != VLC_FOURCC('s','8',' ',' ')
- || p_filter->output.i_format != VLC_FOURCC('f','l','3','2') )
+ if ( p_filter->input.i_format != VLC_CODEC_S8
+ || p_filter->output.i_format != VLC_CODEC_FL32 )
{
return -1;
}
{
aout_filter_t * p_filter = (aout_filter_t *)p_this;
- if ( p_filter->input.i_format != VLC_FOURCC('u','8',' ',' ')
- || p_filter->output.i_format != VLC_FOURCC('f','l','3','2') )
+ if ( p_filter->input.i_format != VLC_CODEC_U8
+ || p_filter->output.i_format != VLC_CODEC_FL32 )
{
return -1;
}
aout_filter_t *p_filter = (aout_filter_t *)p_this;
struct filter_sys_t *p_sys;
- if ( (p_filter->input.i_format != VLC_FOURCC('m','p','g','a')
+ if ( (p_filter->input.i_format != VLC_CODEC_MPGA
&& p_filter->input.i_format != VLC_FOURCC('m','p','g','3'))
- || (p_filter->output.i_format != VLC_FOURCC('f','l','3','2')
- && p_filter->output.i_format != VLC_FOURCC('f','i','3','2')) )
+ || (p_filter->output.i_format != VLC_CODEC_FL32
+ && p_filter->output.i_format != VLC_CODEC_FI32) )
{
return -1;
}
if( p_sys->i_reject_count > 0 )
{
- if( p_filter->output.i_format == VLC_FOURCC('f','l','3','2') )
+ if( p_filter->output.i_format == VLC_CODEC_FL32 )
{
int i;
int i_size = p_out_buf->i_nb_bytes / sizeof(float);
mad_synth_frame( &p_sys->mad_synth, &p_sys->mad_frame );
- if ( p_filter->output.i_format == VLC_FOURCC('f','i','3','2') )
+ if ( p_filter->output.i_format == VLC_CODEC_FI32 )
{
/* Interleave and keep buffers in mad_fixed_t format */
mad_fixed_t * p_samples = (mad_fixed_t *)p_out_buf->p_buffer;
filter_t *p_filter = (filter_t *)p_this;
filter_sys_t *p_sys;
- if( p_filter->fmt_in.i_codec != VLC_FOURCC('m','p','g','a') &&
+ if( p_filter->fmt_in.i_codec != VLC_CODEC_MPGA &&
p_filter->fmt_in.i_codec != VLC_FOURCC('m','p','g','3') )
{
return VLC_EGENERIC;
mad_stream_options( &p_sys->mad_stream, MAD_OPTION_IGNORECRC );
if( vlc_CPU() & CPU_CAPABILITY_FPU )
- p_filter->fmt_out.i_codec = VLC_FOURCC('f','l','3','2');
+ p_filter->fmt_out.i_codec = VLC_CODEC_FL32;
else
- p_filter->fmt_out.i_codec = VLC_FOURCC('f','i','3','2');
+ p_filter->fmt_out.i_codec = VLC_CODEC_FI32;
p_filter->fmt_out.audio.i_format = p_filter->fmt_out.i_codec;
p_filter->fmt_out.audio.i_bitspersample =
aout_BitsPerSample( p_filter->fmt_out.i_codec );
aout_filter_sys_t *p_sys;
bool b_fit = true;
- if( p_filter->input.i_format != VLC_FOURCC('f','l','3','2' ) ||
- p_filter->output.i_format != VLC_FOURCC('f','l','3','2') )
+ if( p_filter->input.i_format != VLC_CODEC_FL32 ||
+ p_filter->output.i_format != VLC_CODEC_FL32 )
{
b_fit = false;
- p_filter->input.i_format = VLC_FOURCC('f','l','3','2');
- p_filter->output.i_format = VLC_FOURCC('f','l','3','2');
+ p_filter->input.i_format = VLC_CODEC_FL32;
+ p_filter->output.i_format = VLC_CODEC_FL32;
msg_Warn( p_filter, "bad input or output format" );
}
if ( !AOUT_FMTS_SIMILAR( &p_filter->input, &p_filter->output ) )
#include "vlc_filter.h"
#ifdef WORDS_BIGENDIAN
-# define AOUT_FMT_S24_IE VLC_FOURCC('s','2','4','l')
-# define AOUT_FMT_S16_IE VLC_FOURCC('s','1','6','l')
-# define AOUT_FMT_U16_IE VLC_FOURCC('u','1','6','l')
+# define AOUT_FMT_S24_IE VLC_CODEC_S24L
+# define AOUT_FMT_S16_IE VLC_CODEC_S16L
+# define AOUT_FMT_U16_IE VLC_CODEC_U16L
#else
-# define AOUT_FMT_S24_IE VLC_FOURCC('s','2','4','b')
-# define AOUT_FMT_S16_IE VLC_FOURCC('s','1','6','b')
-# define AOUT_FMT_U16_IE VLC_FOURCC('u','1','6','b')
+# define AOUT_FMT_S24_IE VLC_CODEC_S24B
+# define AOUT_FMT_S16_IE VLC_CODEC_S16B
+# define AOUT_FMT_U16_IE VLC_CODEC_U16B
#endif
} ConvertTable[] =
{
/* From fl32 */
- { VLC_FOURCC('f','l','3','2'), AOUT_FMT_S24_NE, Float32toS24 },
- { VLC_FOURCC('f','l','3','2'), AOUT_FMT_S16_NE, Float32toS16 },
- { VLC_FOURCC('f','l','3','2'), AOUT_FMT_U16_NE, Float32toU16 },
- { VLC_FOURCC('f','l','3','2'), AOUT_FMT_S24_IE, Float32toS24Invert },
- { VLC_FOURCC('f','l','3','2'), AOUT_FMT_S16_IE, Float32toS16Invert },
- { VLC_FOURCC('f','l','3','2'), AOUT_FMT_U16_IE, Float32toU16Invert },
- { VLC_FOURCC('f','l','3','2'), VLC_FOURCC('s','8',' ',' '), Float32toS8 },
- { VLC_FOURCC('f','l','3','2'), VLC_FOURCC('u','8',' ',' '), Float32toU8 },
+ { VLC_CODEC_FL32, AOUT_FMT_S24_NE, Float32toS24 },
+ { VLC_CODEC_FL32, AOUT_FMT_S16_NE, Float32toS16 },
+ { VLC_CODEC_FL32, AOUT_FMT_U16_NE, Float32toU16 },
+ { VLC_CODEC_FL32, AOUT_FMT_S24_IE, Float32toS24Invert },
+ { VLC_CODEC_FL32, AOUT_FMT_S16_IE, Float32toS16Invert },
+ { VLC_CODEC_FL32, AOUT_FMT_U16_IE, Float32toU16Invert },
+ { VLC_CODEC_FL32, VLC_CODEC_S8, Float32toS8 },
+ { VLC_CODEC_FL32, VLC_CODEC_U8, Float32toU8 },
/* From s24 invert */
- { AOUT_FMT_S24_NE, VLC_FOURCC('f','l','3','2'), S24toFloat32 },
+ { AOUT_FMT_S24_NE, VLC_CODEC_FL32, S24toFloat32 },
{ AOUT_FMT_S24_NE, AOUT_FMT_S24_IE, Swap24 },
{ AOUT_FMT_S24_NE, AOUT_FMT_S16_NE, S24toS16 },
{ AOUT_FMT_S24_NE, AOUT_FMT_S16_IE, S24toS16Invert },
/* From s16 */
- { AOUT_FMT_S16_NE, VLC_FOURCC('f','l','3','2'), S16toFloat32 },
+ { AOUT_FMT_S16_NE, VLC_CODEC_FL32, S16toFloat32 },
{ AOUT_FMT_S16_NE, AOUT_FMT_S24_NE, S16toS24 },
{ AOUT_FMT_S16_NE, AOUT_FMT_S24_IE, S16toS24Invert },
{ AOUT_FMT_S16_NE, AOUT_FMT_S16_IE, Swap16 },
{ AOUT_FMT_S16_NE, AOUT_FMT_U16_IE, S16toU16 },
- { AOUT_FMT_S16_NE, VLC_FOURCC('s','8',' ',' '), S16toS8 },
- { AOUT_FMT_S16_NE, VLC_FOURCC('u','8',' ',' '), S16toU8 },
+ { AOUT_FMT_S16_NE, VLC_CODEC_S8, S16toS8 },
+ { AOUT_FMT_S16_NE, VLC_CODEC_U8, S16toU8 },
/* From u16 */
- { AOUT_FMT_U16_NE, VLC_FOURCC('f','l','3','2'), U16toFloat32 },
+ { AOUT_FMT_U16_NE, VLC_CODEC_FL32, U16toFloat32 },
{ AOUT_FMT_U16_NE, AOUT_FMT_U16_IE, Swap16 },
{ AOUT_FMT_U16_NE, AOUT_FMT_S16_IE, U16toS16 },
- { AOUT_FMT_U16_NE, VLC_FOURCC('s','8',' ',' '), U16toS8 },
- { AOUT_FMT_U16_NE, VLC_FOURCC('u','8',' ',' '), U16toU8 },
+ { AOUT_FMT_U16_NE, VLC_CODEC_S8, U16toS8 },
+ { AOUT_FMT_U16_NE, VLC_CODEC_U8, U16toU8 },
/* From s8 */
- { VLC_FOURCC('s','8',' ',' '), VLC_FOURCC('f','l','3','2'), S8toFloat32 },
- { VLC_FOURCC('s','8',' ',' '), AOUT_FMT_S16_NE, S8toS16 },
- { VLC_FOURCC('s','8',' ',' '), AOUT_FMT_S16_IE, S8toS16Invert },
- { VLC_FOURCC('s','8',' ',' '), AOUT_FMT_U16_NE, S8toU16 },
- { VLC_FOURCC('s','8',' ',' '), AOUT_FMT_U16_IE, S8toU16Invert },
- { VLC_FOURCC('s','8',' ',' '), VLC_FOURCC('u','8',' ',' '), S8toU8 },
+ { VLC_CODEC_S8, VLC_CODEC_FL32, S8toFloat32 },
+ { VLC_CODEC_S8, AOUT_FMT_S16_NE, S8toS16 },
+ { VLC_CODEC_S8, AOUT_FMT_S16_IE, S8toS16Invert },
+ { VLC_CODEC_S8, AOUT_FMT_U16_NE, S8toU16 },
+ { VLC_CODEC_S8, AOUT_FMT_U16_IE, S8toU16Invert },
+ { VLC_CODEC_S8, VLC_CODEC_U8, S8toU8 },
/* From u8 */
- { VLC_FOURCC('u','8',' ',' '), VLC_FOURCC('f','l','3','2'), U8toFloat32 },
- { VLC_FOURCC('u','8',' ',' '), AOUT_FMT_S16_NE, U8toS16 },
- { VLC_FOURCC('u','8',' ',' '), AOUT_FMT_S16_IE, U8toS16Invert },
- { VLC_FOURCC('u','8',' ',' '), AOUT_FMT_U16_NE, U8toU16 },
- { VLC_FOURCC('u','8',' ',' '), AOUT_FMT_U16_IE, U8toU16Invert },
- { VLC_FOURCC('u','8',' ',' '), VLC_FOURCC('s','8',' ',' '), U8toS8 },
+ { VLC_CODEC_U8, VLC_CODEC_FL32, U8toFloat32 },
+ { VLC_CODEC_U8, AOUT_FMT_S16_NE, U8toS16 },
+ { VLC_CODEC_U8, AOUT_FMT_S16_IE, U8toS16Invert },
+ { VLC_CODEC_U8, AOUT_FMT_U16_NE, U8toU16 },
+ { VLC_CODEC_U8, AOUT_FMT_U16_IE, U8toU16Invert },
+ { VLC_CODEC_U8, VLC_CODEC_S8, U8toS8 },
/* From s24 invert */
- { AOUT_FMT_S24_IE, VLC_FOURCC('f','l','3','2'), S24InverttoFloat32 },
+ { AOUT_FMT_S24_IE, VLC_CODEC_FL32, S24InverttoFloat32 },
{ AOUT_FMT_S24_IE, AOUT_FMT_S24_NE, Swap24 },
{ AOUT_FMT_S24_IE, AOUT_FMT_S16_NE, S24InverttoS16 },
{ AOUT_FMT_S24_IE, AOUT_FMT_S16_IE, S24InverttoS16Invert },
/* From s16 invert */
- { AOUT_FMT_S16_IE, VLC_FOURCC('f','l','3','2'), S16InverttoFloat32 },
+ { AOUT_FMT_S16_IE, VLC_CODEC_FL32, S16InverttoFloat32 },
{ AOUT_FMT_S16_IE, AOUT_FMT_S24_NE, S16InverttoS24 },
{ AOUT_FMT_S16_IE, AOUT_FMT_S24_IE, S16InverttoS24Invert },
{ AOUT_FMT_S16_IE, AOUT_FMT_S16_NE, Swap16 },
{ AOUT_FMT_S16_IE, AOUT_FMT_U16_NE, S16InverttoU16 },
- { AOUT_FMT_S16_IE, VLC_FOURCC('s','8',' ',' '), S16InverttoS8 },
- { AOUT_FMT_S16_IE, VLC_FOURCC('u','8',' ',' '), S16InverttoU8 },
+ { AOUT_FMT_S16_IE, VLC_CODEC_S8, S16InverttoS8 },
+ { AOUT_FMT_S16_IE, VLC_CODEC_U8, S16InverttoU8 },
/* From u16 invert */
- { AOUT_FMT_U16_IE, VLC_FOURCC('f','l','3','2'), U16InverttoFloat32 },
+ { AOUT_FMT_U16_IE, VLC_CODEC_FL32, U16InverttoFloat32 },
{ AOUT_FMT_U16_IE, AOUT_FMT_U16_NE, Swap16 },
{ AOUT_FMT_U16_IE, AOUT_FMT_S16_NE, U16InverttoS16 },
- { AOUT_FMT_U16_IE, VLC_FOURCC('s','8',' ',' '), U16InverttoS8 },
- { AOUT_FMT_U16_IE, VLC_FOURCC('u','8',' ',' '), U16InverttoU8 },
+ { AOUT_FMT_U16_IE, VLC_CODEC_S8, U16InverttoS8 },
+ { AOUT_FMT_U16_IE, VLC_CODEC_U8, U16InverttoU8 },
{ 0, 0, NULL },
};
int i_channels;
aout_filter_sys_t *p_sys;
- if( p_filter->input.i_format != VLC_FOURCC('f','l','3','2' ) ||
- p_filter->output.i_format != VLC_FOURCC('f','l','3','2') )
+ if( p_filter->input.i_format != VLC_CODEC_FL32 ||
+ p_filter->output.i_format != VLC_CODEC_FL32 )
{
b_fit = false;
- p_filter->input.i_format = VLC_FOURCC('f','l','3','2');
- p_filter->output.i_format = VLC_FOURCC('f','l','3','2');
+ p_filter->input.i_format = VLC_CODEC_FL32;
+ p_filter->output.i_format = VLC_CODEC_FL32;
msg_Warn( p_filter, "bad input or output format" );
}
bool b_fit = true;
int i_samplerate;
- if( p_filter->input.i_format != VLC_FOURCC('f','l','3','2' ) ||
- p_filter->output.i_format != VLC_FOURCC('f','l','3','2') )
+ if( p_filter->input.i_format != VLC_CODEC_FL32 ||
+ p_filter->output.i_format != VLC_CODEC_FL32 )
{
b_fit = false;
- p_filter->input.i_format = VLC_FOURCC('f','l','3','2');
- p_filter->output.i_format = VLC_FOURCC('f','l','3','2');
+ p_filter->input.i_format = VLC_CODEC_FL32;
+ p_filter->output.i_format = VLC_CODEC_FL32;
msg_Warn( p_filter, "bad input or output format" );
}
if ( !AOUT_FMTS_SIMILAR( &p_filter->input, &p_filter->output ) )
!= p_filter->output.i_physical_channels
|| p_filter->input.i_original_channels
!= p_filter->output.i_original_channels
- || p_filter->input.i_format != VLC_FOURCC('f','l','3','2') )
+ || p_filter->input.i_format != VLC_CODEC_FL32 )
{
return VLC_EGENERIC;
}
int i_filter_wing;
if( p_filter->fmt_in.audio.i_rate == p_filter->fmt_out.audio.i_rate ||
- p_filter->fmt_in.i_codec != VLC_FOURCC('f','l','3','2') )
+ p_filter->fmt_in.i_codec != VLC_CODEC_FL32 )
{
return VLC_EGENERIC;
}
!= p_filter->output.i_physical_channels
|| p_filter->input.i_original_channels
!= p_filter->output.i_original_channels
- || p_filter->input.i_format != VLC_FOURCC('f','l','3','2') )
+ || p_filter->input.i_format != VLC_CODEC_FL32 )
{
return VLC_EGENERIC;
}
int i_out_rate = p_filter->fmt_out.audio.i_rate;
if( p_filter->fmt_in.audio.i_rate == p_filter->fmt_out.audio.i_rate ||
- p_filter->fmt_in.i_codec != VLC_FOURCC('f','l','3','2') )
+ p_filter->fmt_in.i_codec != VLC_CODEC_FL32 )
{
return VLC_EGENERIC;
}
!= p_filter->output.i_physical_channels
|| p_filter->input.i_original_channels
!= p_filter->output.i_original_channels
- || (p_filter->input.i_format != VLC_FOURCC('f','l','3','2')
- && p_filter->input.i_format != VLC_FOURCC('f','i','3','2')) )
+ || (p_filter->input.i_format != VLC_CODEC_FL32
+ && p_filter->input.i_format != VLC_CODEC_FI32) )
{
return -1;
}
!= p_filter->output.i_physical_channels
|| p_filter->input.i_original_channels
!= p_filter->output.i_original_channels
- || (p_filter->input.i_format != VLC_FOURCC('f','l','3','2')
- && p_filter->input.i_format != VLC_FOURCC('f','i','3','2')) )
+ || (p_filter->input.i_format != VLC_CODEC_FL32
+ && p_filter->input.i_format != VLC_CODEC_FI32) )
{
return VLC_EGENERIC;
}
aout_filter_sys_t *p_sys;
bool b_fit = true;
- if( p_filter->input.i_format != VLC_FOURCC('f','l','3','2' ) ||
- p_filter->output.i_format != VLC_FOURCC('f','l','3','2') )
+ if( p_filter->input.i_format != VLC_CODEC_FL32 ||
+ p_filter->output.i_format != VLC_CODEC_FL32 )
{
b_fit = false;
- p_filter->input.i_format = p_filter->output.i_format = VLC_FOURCC('f','l','3','2');
+ p_filter->input.i_format = p_filter->output.i_format = VLC_CODEC_FL32;
msg_Warn( p_filter, "bad input or output format" );
}
if( ! AOUT_FMTS_SIMILAR( &p_filter->input, &p_filter->output ) )
bool b_fit = true;
msg_Dbg(p_this, "Opening filter spatializer %s %s %d", __FILE__,__func__,__LINE__);
- if( p_filter->input.i_format != VLC_FOURCC('f','l','3','2' ) ||
- p_filter->output.i_format != VLC_FOURCC('f','l','3','2') )
+ if( p_filter->input.i_format != VLC_CODEC_FL32 ||
+ p_filter->output.i_format != VLC_CODEC_FL32 )
{
b_fit = false;
- p_filter->input.i_format = VLC_FOURCC('f','l','3','2');
- p_filter->output.i_format = VLC_FOURCC('f','l','3','2');
+ p_filter->input.i_format = VLC_CODEC_FL32;
+ p_filter->output.i_format = VLC_CODEC_FL32;
msg_Warn( p_filter, "bad input or output format" );
}
if ( !AOUT_FMTS_SIMILAR( &p_filter->input, &p_filter->output ) )
{
aout_instance_t * p_aout = (aout_instance_t *)p_this;
- if ( p_aout->mixer.mixer.i_format != VLC_FOURCC('f','l','3','2') )
+ if ( p_aout->mixer.mixer.i_format != VLC_CODEC_FL32 )
{
return -1;
}
{
aout_instance_t * p_aout = (aout_instance_t *)p_this;
- if ( p_aout->mixer.mixer.i_format != VLC_FOURCC('f','l','3','2')
- && p_aout->mixer.mixer.i_format != VLC_FOURCC('f','i','3','2') )
+ if ( p_aout->mixer.mixer.i_format != VLC_CODEC_FL32
+ && p_aout->mixer.mixer.i_format != VLC_CODEC_FI32 )
{
return -1;
}
and float32) */
if( vlc_CPU() & CPU_CAPABILITY_FPU )
{
- i_vlc_pcm_format = VLC_FOURCC('f','l','3','2');
+ i_vlc_pcm_format = VLC_CODEC_FL32;
i_snd_pcm_format = SND_PCM_FORMAT_FLOAT;
}
else
i_snd_pcm_format = SND_PCM_FORMAT_S16;
i_channels = 2;
- i_vlc_pcm_format = VLC_FOURCC('s','p','d','i');
+ i_vlc_pcm_format = VLC_CODEC_SPDIFL;
p_aout->output.i_nb_samples = i_period_size = ALSA_SPDIF_PERIOD_SIZE;
p_aout->output.output.i_bytes_per_frame = AOUT_SPDIF_SIZE;
p_aout->output.output.i_frame_length = A52_FRAME_NB;
goto error;
}
}
- if( i_vlc_pcm_format != VLC_FOURCC('s','p','d','i') )
+ if( i_vlc_pcm_format != VLC_CODEC_SPDIFL )
switch( i_snd_pcm_format )
{
case SND_PCM_FORMAT_FLOAT:
- i_vlc_pcm_format = VLC_FOURCC('f','l','3','2');
+ i_vlc_pcm_format = VLC_CODEC_FL32;
break;
case SND_PCM_FORMAT_S16:
i_vlc_pcm_format = AOUT_FMT_S16_NE;
}
p_buffer = aout_OutputNextBuffer( p_aout, next_date,
- (p_aout->output.output.i_format == VLC_FOURCC('s','p','d','i')) );
+ (p_aout->output.output.i_format == VLC_CODEC_SPDIFL) );
/* Audio output buffer shortage -> stop the fill process and wait */
if( p_buffer == NULL )
DeviceFormat.mFormatID = kAudioFormatLinearPCM;
/* We use float 32. It's the best supported format by both VLC and Coreaudio */
- p_aout->output.output.i_format = VLC_FOURCC( 'f','l','3','2');
+ p_aout->output.output.i_format = VLC_CODEC_FL32;
DeviceFormat.mFormatFlags = kAudioFormatFlagsNativeFloatPacked;
DeviceFormat.mBitsPerChannel = 32;
DeviceFormat.mChannelsPerFrame = aout_FormatNbChannels( &p_aout->output.output );
/* Set the format flags */
if( p_sys->stream_format.mFormatFlags & kAudioFormatFlagIsBigEndian )
- p_aout->output.output.i_format = VLC_FOURCC('s','p','d','b');
+ p_aout->output.output.i_format = VLC_CODEC_SPDIFB;
else
- p_aout->output.output.i_format = VLC_FOURCC('s','p','d','i');
+ p_aout->output.output.i_format = VLC_CODEC_SPDIFL;
p_aout->output.output.i_bytes_per_frame = AOUT_SPDIF_SIZE;
p_aout->output.output.i_frame_length = A52_FRAME_NB;
p_aout->output.i_nb_samples = p_aout->output.output.i_frame_length;
/* Open the device */
if( val.i_int == AOUT_VAR_SPDIF )
{
- p_aout->output.output.i_format = VLC_FOURCC('s','p','d','i');
+ p_aout->output.output.i_format = VLC_CODEC_SPDIFL;
/* Calculate the frame size in bytes */
p_aout->output.i_nb_samples = A52_FRAME_NB;
p_aout->output.p_sys->i_frame_size =
p_aout->output.output.i_bytes_per_frame;
- if( CreateDSBuffer( p_aout, VLC_FOURCC('s','p','d','i'),
+ if( CreateDSBuffer( p_aout, VLC_CODEC_SPDIFL,
p_aout->output.output.i_physical_channels,
aout_FormatNbChannels( &p_aout->output.output ),
p_aout->output.output.i_rate,
/* Test for SPDIF support */
if ( AOUT_FMT_NON_LINEAR( &p_aout->output.output ) )
{
- if( CreateDSBuffer( p_aout, VLC_FOURCC('s','p','d','i'),
+ if( CreateDSBuffer( p_aout, VLC_CODEC_SPDIFL,
p_aout->output.output.i_physical_channels,
aout_FormatNbChannels( &p_aout->output.output ),
p_aout->output.output.i_rate,
switch( i_format )
{
- case VLC_FOURCC('s','p','d','i'):
+ case VLC_CODEC_SPDIFL:
i_nb_channels = 2;
/* To prevent channel re-ordering */
waveformat.dwChannelMask = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT;
waveformat.SubFormat = _KSDATAFORMAT_SUBTYPE_DOLBY_AC3_SPDIF;
break;
- case VLC_FOURCC('f','l','3','2'):
+ case VLC_CODEC_FL32:
waveformat.Format.wBitsPerSample = sizeof(float) * 8;
waveformat.Samples.wValidBitsPerSample =
waveformat.Format.wBitsPerSample;
waveformat.SubFormat = _KSDATAFORMAT_SUBTYPE_IEEE_FLOAT;
break;
- case VLC_FOURCC('s','1','6','l'):
+ case VLC_CODEC_S16L:
waveformat.Format.wBitsPerSample = 16;
waveformat.Samples.wValidBitsPerSample =
waveformat.Format.wBitsPerSample;
/* Float32 audio samples are not supported for 5.1 output on the emu101k */
if( !var_GetBool( p_aout, "directx-audio-float32" ) ||
i_nb_channels > 2 ||
- CreateDSBuffer( p_aout, VLC_FOURCC('f','l','3','2'),
+ CreateDSBuffer( p_aout, VLC_CODEC_FL32,
i_channels, i_nb_channels, i_rate,
FRAME_SIZE * 4 * i_nb_channels, b_probe )
!= VLC_SUCCESS )
{
- if ( CreateDSBuffer( p_aout, VLC_FOURCC('s','1','6','l'),
+ if ( CreateDSBuffer( p_aout, VLC_CODEC_S16L,
i_channels, i_nb_channels, i_rate,
FRAME_SIZE * 2 * i_nb_channels, b_probe )
!= VLC_SUCCESS )
}
else
{
- *i_format = VLC_FOURCC('s','1','6','l');
+ *i_format = VLC_CODEC_S16L;
return VLC_SUCCESS;
}
}
else
{
- *i_format = VLC_FOURCC('f','l','3','2');
+ *i_format = VLC_CODEC_FL32;
return VLC_SUCCESS;
}
}
int canc = vlc_savecancel ();
/* We don't want any resampling when using S/PDIF output */
- b_sleek = p_aout->output.output.i_format == VLC_FOURCC('s','p','d','i');
+ b_sleek = p_aout->output.output.i_format == VLC_CODEC_SPDIFL;
msg_Dbg( p_notif, "DirectSoundThread ready" );
static const char *const format_list[] = { "u8", "s8", "u16", "s16", "u16_le",
"s16_le", "u16_be", "s16_be", "fixed32",
"float32", "spdif" };
-static const int format_int[] = { VLC_FOURCC('u','8',' ',' '),
- VLC_FOURCC('s','8',' ',' '),
+static const int format_int[] = { VLC_CODEC_U8,
+ VLC_CODEC_S8,
AOUT_FMT_U16_NE, AOUT_FMT_S16_NE,
- VLC_FOURCC('u','1','6','l'),
- VLC_FOURCC('s','1','6','l'),
- VLC_FOURCC('u','1','6','b'),
- VLC_FOURCC('s','1','6','b'),
- VLC_FOURCC('f','i','3','2'),
- VLC_FOURCC('f','l','3','2'),
- VLC_FOURCC('s','p','i','f') };
+ VLC_CODEC_U16L,
+ VLC_CODEC_S16L,
+ VLC_CODEC_U16B,
+ VLC_CODEC_S16B,
+ VLC_CODEC_FI32,
+ VLC_CODEC_FL32,
+ VLC_CODEC_SPDIFL };
#define FILE_TEXT N_("Output file")
#define FILE_LONGTEXT N_("File to which the audio samples will be written to. (\"-\" for stdout")
switch( p_aout->output.output.i_format )
{
- case VLC_FOURCC('f','l','3','2'):
+ case VLC_CODEC_FL32:
wh->Format = WAVE_FORMAT_IEEE_FLOAT;
wh->BitsPerSample = sizeof(float) * 8;
break;
- case VLC_FOURCC('u','8',' ',' '):
+ case VLC_CODEC_U8:
wh->Format = WAVE_FORMAT_PCM;
wh->BitsPerSample = 8;
break;
- case VLC_FOURCC('s','1','6','l'):
+ case VLC_CODEC_S16L:
default:
wh->Format = WAVE_FORMAT_PCM;
wh->BitsPerSample = 16;
aout_VolumeSoftInit( p_aout );
/* JACK only supports fl32 format */
- p_aout->output.output.i_format = VLC_FOURCC('f','l','3','2');
+ p_aout->output.output.i_format = VLC_CODEC_FL32;
// TODO add buffer size callback
p_aout->output.i_nb_samples = jack_get_buffer_size( p_sys->p_jack_client );
p_aout->output.output.i_rate = jack_get_sample_rate( p_sys->p_jack_client );
if ( val.i_int == AOUT_VAR_SPDIF )
{
- p_aout->output.output.i_format = VLC_FOURCC('s','p','d','i');
+ p_aout->output.output.i_format = VLC_CODEC_SPDIFL;
}
else if ( val.i_int == AOUT_VAR_5_1 )
{
return VLC_EGENERIC;
}
- p_aout->output.output.i_format = VLC_FOURCC('s','p','d','i');
+ p_aout->output.output.i_format = VLC_CODEC_SPDIFL;
p_aout->output.i_nb_samples = A52_FRAME_NB;
p_aout->output.output.i_bytes_per_frame = AOUT_SPDIF_SIZE;
p_aout->output.output.i_frame_length = A52_FRAME_NB;
switch ( i_format )
{
case AFMT_U8:
- p_aout->output.output.i_format = VLC_FOURCC('u','8',' ',' ');
+ p_aout->output.output.i_format = VLC_CODEC_U8;
break;
case AFMT_S8:
- p_aout->output.output.i_format = VLC_FOURCC('s','8',' ',' ');
+ p_aout->output.output.i_format = VLC_CODEC_S8;
break;
case AFMT_U16_LE:
- p_aout->output.output.i_format = VLC_FOURCC('u','1','6','l');
+ p_aout->output.output.i_format = VLC_CODEC_U16L;
break;
case AFMT_S16_LE:
- p_aout->output.output.i_format = VLC_FOURCC('s','1','6','l');
+ p_aout->output.output.i_format = VLC_CODEC_S16L;
break;
case AFMT_U16_BE:
- p_aout->output.output.i_format = VLC_FOURCC('u','1','6','b');
+ p_aout->output.output.i_format = VLC_CODEC_U16B;
break;
case AFMT_S16_BE:
- p_aout->output.output.i_format = VLC_FOURCC('s','1','6','b');
+ p_aout->output.output.i_format = VLC_CODEC_S16B;
break;
default:
msg_Err( p_aout, "OSS fell back to an unknown format (%d)",
int i_tmp, i_size;
uint8_t * p_bytes;
- if ( p_aout->output.output.i_format != VLC_FOURCC('s','p','d','i') )
+ if ( p_aout->output.output.i_format != VLC_CODEC_SPDIFL )
{
mtime_t buffered = BufferDuration( p_aout );
}
/* Audio format is paFloat32 (always supported by portaudio v19) */
- p_aout->output.output.i_format = VLC_FOURCC('f','l','3','2');
+ p_aout->output.output.i_format = VLC_CODEC_FL32;
return VLC_SUCCESS;
ss.rate = p_aout->output.output.i_rate;
ss.format = PA_SAMPLE_FLOAT32NE;
- p_aout->output.output.i_format = VLC_FOURCC('f','l','3','2');
+ p_aout->output.output.i_format = VLC_CODEC_FL32;
if (!pa_sample_spec_valid(&ss)) {
msg_Err(p_aout,"Invalid sample spec");
switch ( obtained.format )
{
case AUDIO_S16LSB:
- p_aout->output.output.i_format = VLC_FOURCC('s','1','6','l'); break;
+ p_aout->output.output.i_format = VLC_CODEC_S16L; break;
case AUDIO_S16MSB:
- p_aout->output.output.i_format = VLC_FOURCC('s','1','6','b'); break;
+ p_aout->output.output.i_format = VLC_CODEC_S16B; break;
case AUDIO_U16LSB:
- p_aout->output.output.i_format = VLC_FOURCC('u','1','6','l'); break;
+ p_aout->output.output.i_format = VLC_CODEC_U16L; break;
case AUDIO_U16MSB:
- p_aout->output.output.i_format = VLC_FOURCC('u','1','6','b'); break;
+ p_aout->output.output.i_format = VLC_CODEC_U16B; break;
case AUDIO_S8:
- p_aout->output.output.i_format = VLC_FOURCC('s','8',' ',' '); break;
+ p_aout->output.output.i_format = VLC_CODEC_S8; break;
case AUDIO_U8:
- p_aout->output.output.i_format = VLC_FOURCC('u','8',' ',' '); break;
+ p_aout->output.output.i_format = VLC_CODEC_U8; break;
}
/* Volume is entirely done in software. */
aout_VolumeSoftInit( p_aout );
/* Open the device */
if( val.i_int == AOUT_VAR_SPDIF )
{
- p_aout->output.output.i_format = VLC_FOURCC('s','p','d','i');
+ p_aout->output.output.i_format = VLC_CODEC_SPDIFL;
if( OpenWaveOut( p_aout,
p_aout->output.p_sys->i_wave_device_id,
- VLC_FOURCC('s','p','d','i'),
+ VLC_CODEC_SPDIFL,
p_aout->output.output.i_physical_channels,
aout_FormatNbChannels( &p_aout->output.output ),
p_aout->output.output.i_rate, false )
{
if( OpenWaveOut( p_aout,
p_aout->output.p_sys->i_wave_device_id,
- VLC_FOURCC('s','p','d','i'),
+ VLC_CODEC_SPDIFL,
p_aout->output.output.i_physical_channels,
aout_FormatNbChannels( &p_aout->output.output ),
p_aout->output.output.i_rate, true )
switch( i_format )
{
- case VLC_FOURCC('s','p','d','i'):
+ case VLC_CODEC_SPDIFL:
i_nb_channels = 2;
/* To prevent channel re-ordering */
waveformat.dwChannelMask = SPEAKER_FRONT_LEFT | SPEAKER_FRONT_RIGHT;
waveformat.SubFormat = __KSDATAFORMAT_SUBTYPE_DOLBY_AC3_SPDIF;
break;
- case VLC_FOURCC('f','l','3','2'):
+ case VLC_CODEC_FL32:
waveformat.Format.wBitsPerSample = sizeof(float) * 8;
waveformat.Samples.wValidBitsPerSample =
waveformat.Format.wBitsPerSample;
waveformat.SubFormat = __KSDATAFORMAT_SUBTYPE_IEEE_FLOAT;
break;
- case VLC_FOURCC('s','1','6','l'):
+ case VLC_CODEC_S16L:
waveformat.Format.wBitsPerSample = 16;
waveformat.Samples.wValidBitsPerSample =
waveformat.Format.wBitsPerSample;
{
bool b_use_float32 = var_CreateGetBool( p_aout, "waveout-float32");
- if( !b_use_float32 || OpenWaveOut( p_aout, i_device_id, VLC_FOURCC('f','l','3','2'),
+ if( !b_use_float32 || OpenWaveOut( p_aout, i_device_id, VLC_CODEC_FL32,
i_channels, i_nb_channels, i_rate, b_probe )
!= VLC_SUCCESS )
{
- if ( OpenWaveOut( p_aout, i_device_id, VLC_FOURCC('s','1','6','l'),
+ if ( OpenWaveOut( p_aout, i_device_id, VLC_CODEC_S16L,
i_channels, i_nb_channels, i_rate, b_probe )
!= VLC_SUCCESS )
{
}
else
{
- *i_format = VLC_FOURCC('s','1','6','l');
+ *i_format = VLC_CODEC_S16L;
return VLC_SUCCESS;
}
}
else
{
- *i_format = VLC_FOURCC('f','l','3','2');
+ *i_format = VLC_CODEC_FL32;
return VLC_SUCCESS;
}
}
int canc = vlc_savecancel ();
/* We don't want any resampling when using S/PDIF */
- b_sleek = p_aout->output.output.i_format == VLC_FOURCC('s','p','d','i');
+ b_sleek = p_aout->output.output.i_format == VLC_CODEC_SPDIFL;
// wait for first call to "play()"
while( !p_sys->start_date && vlc_object_alive (p_aout) )
switch( p_dec->fmt_in.i_codec )
{
- case VLC_FOURCC('a','5','2',' '):
+ case VLC_CODEC_A52:
case VLC_FOURCC('a','5','2','b'):
- i_codec = VLC_FOURCC('a','5','2',' ');
+ i_codec = VLC_CODEC_A52;
break;
- case VLC_FOURCC('e','a','c','3'):
+ case VLC_CODEC_EAC3:
/* XXX ugly hack, a52 does not support eac3 so no eac3 pass-through
* support */
if( !b_packetizer )
return VLC_EGENERIC;
- i_codec = VLC_FOURCC('e','a','c','3');
+ i_codec = VLC_CODEC_EAC3;
break;
default:
return VLC_EGENERIC;
}
else
{
- p_dec->fmt_out.i_codec = i_bits == 16 ? VLC_FOURCC('s','1','6','l') : VLC_FOURCC('s','2','4','l');
+ p_dec->fmt_out.i_codec = i_bits == 16 ? VLC_CODEC_S16L : VLC_CODEC_S24L;
p_dec->fmt_out.audio.i_bitspersample = i_bits == 16 ? 16 : 24;
}
/* _signed_ little endian samples (mov)*/
case VLC_FOURCC('s','o','w','t'):
- case VLC_FOURCC('a','l','a','w'):
+ case VLC_CODEC_ALAW:
case VLC_FOURCC('u','l','a','w'):
- case VLC_FOURCC('m','l','a','w'):
-
- case VLC_FOURCC('f','l','6','4'):
- case VLC_FOURCC('f','l','3','2'):
- case VLC_FOURCC('s','3','2','l'):
- case VLC_FOURCC('s','3','2','b'):
- case VLC_FOURCC('s','2','4','l'):
- case VLC_FOURCC('s','2','4','b'):
- case VLC_FOURCC('s','1','6','l'):
- case VLC_FOURCC('s','1','6','b'):
- case VLC_FOURCC('s','8',' ',' '):
- case VLC_FOURCC('u','8',' ',' '):
+ case VLC_CODEC_MULAW:
+
+ case VLC_CODEC_FL64:
+ case VLC_CODEC_FL32:
+ case VLC_CODEC_S32L:
+ case VLC_CODEC_S32B:
+ case VLC_CODEC_S24L:
+ case VLC_CODEC_S24B:
+ case VLC_CODEC_S16L:
+ 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 */
p_dec->fmt_in.audio.i_rate, p_dec->fmt_in.audio.i_channels,
p_dec->fmt_in.audio.i_bitspersample );
- if( p_dec->fmt_in.i_codec == VLC_FOURCC( 'f', 'l', '6', '4' ) )
+ if( p_dec->fmt_in.i_codec == VLC_CODEC_FL64 )
{
p_dec->fmt_out.i_codec = p_dec->fmt_in.i_codec;
p_dec->fmt_in.audio.i_bitspersample = 64;
}
- else if( p_dec->fmt_in.i_codec == VLC_FOURCC( 'f', 'l', '3', '2' ) )
+ else if( p_dec->fmt_in.i_codec == VLC_CODEC_FL32 )
{
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( 's', '3', '2', 'l' ) ||
- p_dec->fmt_in.i_codec == VLC_FOURCC( 's', '3', '2', 'b' ) )
+ else if( p_dec->fmt_in.i_codec == VLC_CODEC_S32L ||
+ p_dec->fmt_in.i_codec == VLC_CODEC_S32B )
{
p_dec->fmt_out.i_codec = p_dec->fmt_in.i_codec;
p_dec->fmt_in.audio.i_bitspersample = 32;
{
/* FIXME: mplayer uses bigendian for in24 .... but here it works
* with little endian ... weird */
- p_dec->fmt_out.i_codec = VLC_FOURCC( 's', '3', '2', 'l' );
+ 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_FOURCC( 's', '2', '4', 'l' ) ||
- p_dec->fmt_in.i_codec == VLC_FOURCC( 's', '2', '4', 'b' ) )
+ 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_FOURCC( 's', '2', '4', 'b' );
+ 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_FOURCC( 's', '2', '4', 'l' );
+ 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_FOURCC( 's', '1', '6', 'l' ) ||
- p_dec->fmt_in.i_codec == VLC_FOURCC( 's', '1', '6', 'b' ) )
+ else if( p_dec->fmt_in.i_codec == VLC_CODEC_S16L ||
+ p_dec->fmt_in.i_codec == VLC_CODEC_S16B )
{
p_dec->fmt_out.i_codec = p_dec->fmt_in.i_codec;
p_dec->fmt_in.audio.i_bitspersample = 16;
}
- else if( p_dec->fmt_in.i_codec == VLC_FOURCC( 's', '8', ' ', ' ' ) ||
- p_dec->fmt_in.i_codec == VLC_FOURCC( 'u', '8', ' ', ' ' ) )
+ else if( p_dec->fmt_in.i_codec == VLC_CODEC_S8 ||
+ p_dec->fmt_in.i_codec == VLC_CODEC_U8 )
{
p_dec->fmt_out.i_codec = p_dec->fmt_in.i_codec;
p_dec->fmt_in.audio.i_bitspersample = 8;
switch( ( p_dec->fmt_in.audio.i_bitspersample + 7 ) / 8 )
{
case 4:
- p_dec->fmt_out.i_codec = VLC_FOURCC('f','l','3','2');
+ p_dec->fmt_out.i_codec = VLC_CODEC_FL32;
break;
case 8:
- p_dec->fmt_out.i_codec = VLC_FOURCC('f','l','6','4');
+ p_dec->fmt_out.i_codec = VLC_CODEC_FL64;
break;
default:
msg_Err( p_dec, "bad parameters(bits/sample)" );
switch( ( p_dec->fmt_in.audio.i_bitspersample + 7 ) / 8 )
{
case 1:
- p_dec->fmt_out.i_codec = VLC_FOURCC('u','8',' ',' ');
+ p_dec->fmt_out.i_codec = VLC_CODEC_U8;
break;
case 2:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','1','6','l');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S16L;
break;
case 3:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','2','4','l');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S24L;
break;
case 4:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','3','2','l');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S32L;
break;
default:
msg_Err( p_dec, "bad parameters(bits/sample)" );
switch( ( p_dec->fmt_in.audio.i_bitspersample + 7 ) / 8 )
{
case 1:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','8',' ',' ');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S8;
break;
case 2:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','1','6','b');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S16B;
break;
case 3:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','2','4','b');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S24B;
break;
case 4:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','3','2','b');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S32B;
break;
default:
msg_Err( p_dec, "bad parameters(bits/sample)" );
switch( ( p_dec->fmt_in.audio.i_bitspersample + 7 ) / 8 )
{
case 1:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','8',' ',' ');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S8;
break;
case 2:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','1','6','l');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S16L;
break;
case 3:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','2','4','l');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S24L;
break;
case 4:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','3','2','l');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S32L;
break;
default:
msg_Err( p_dec, "bad parameters(bits/sample)" );
return VLC_EGENERIC;
}
}
- else if( p_dec->fmt_in.i_codec == VLC_FOURCC( 'a', 'l', 'a', 'w' ) )
+ else if( p_dec->fmt_in.i_codec == VLC_CODEC_ALAW )
{
p_dec->fmt_out.i_codec = AOUT_FMT_S16_NE;
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_FOURCC( 'm', 'l', 'a', 'w' ) )
+ 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_out.audio.i_original_channels =
p_dec->fmt_in.audio.i_original_channels;
- if( p_dec->fmt_in.i_codec == VLC_FOURCC( 'a', 'l', 'a', 'w' ) ||
+ 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_FOURCC( 'm', 'l', 'a', 'w' ) )
+ p_dec->fmt_in.i_codec == VLC_CODEC_MULAW )
{
p_dec->fmt_out.audio.i_bitspersample = 16;
}
encoder_t *p_enc = (encoder_t *)p_this;
encoder_sys_t *p_sys;
- if( p_enc->fmt_out.i_codec == VLC_FOURCC('u','8',' ',' ') ||
- p_enc->fmt_out.i_codec == VLC_FOURCC('s','8',' ',' ') ||
- p_enc->fmt_out.i_codec == VLC_FOURCC('a','l','a','w') ||
+ 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_FOURCC('m','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_FOURCC('u','1','6','l') ||
- p_enc->fmt_out.i_codec == VLC_FOURCC('u','1','6','b') ||
- p_enc->fmt_out.i_codec == VLC_FOURCC('s','1','6','l') ||
- p_enc->fmt_out.i_codec == VLC_FOURCC('s','1','6','b') )
+ else if( p_enc->fmt_out.i_codec == VLC_CODEC_U16L ||
+ p_enc->fmt_out.i_codec == VLC_CODEC_U16B ||
+ p_enc->fmt_out.i_codec == VLC_CODEC_S16L ||
+ p_enc->fmt_out.i_codec == VLC_CODEC_S16B )
{
p_enc->fmt_out.audio.i_bitspersample = 16;
}
- else if( p_enc->fmt_out.i_codec == VLC_FOURCC('u','2','4','l') ||
- p_enc->fmt_out.i_codec == VLC_FOURCC('u','2','4','b') ||
- p_enc->fmt_out.i_codec == VLC_FOURCC('s','2','4','l') ||
- p_enc->fmt_out.i_codec == VLC_FOURCC('s','2','4','b') ||
+ 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.audio.i_bitspersample = 24;
}
- else if( p_enc->fmt_out.i_codec == VLC_FOURCC('u','3','2','l') ||
- p_enc->fmt_out.i_codec == VLC_FOURCC('u','3','2','b') ||
- p_enc->fmt_out.i_codec == VLC_FOURCC('s','3','2','l') ||
- p_enc->fmt_out.i_codec == VLC_FOURCC('s','3','2','b') ||
+ else if( p_enc->fmt_out.i_codec == VLC_CODEC_U32L ||
+ 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_FOURCC('f','i','3','2') ||
- p_enc->fmt_out.i_codec == VLC_FOURCC('f','l','3','2') )
+ p_enc->fmt_out.i_codec == VLC_CODEC_FI32 ||
+ p_enc->fmt_out.i_codec == VLC_CODEC_FL32 )
{
p_enc->fmt_out.audio.i_bitspersample = 32;
}
- else if( p_enc->fmt_out.i_codec == VLC_FOURCC('f','l','6','4') )
+ else if( p_enc->fmt_out.i_codec == VLC_CODEC_FL64 )
{
p_enc->fmt_out.audio.i_bitspersample = 64;
}
p_enc->fmt_in.i_codec = p_enc->fmt_out.i_codec;
p_sys->i_s16tolog = 0;
- if( p_enc->fmt_out.i_codec == VLC_FOURCC( 'a', 'l', 'a', 'w' ))
+ if( p_enc->fmt_out.i_codec == VLC_CODEC_ALAW)
{
p_enc->fmt_in.audio.i_bitspersample = 16;
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_FOURCC( 'm', 'l', 'a', 'w' ) )
+ 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;
int i_offset;
int i_size;
- if( p_dec->fmt_in.i_codec == VLC_FOURCC( 'f', 'l', 'a', 'c' ) )
+ if( p_dec->fmt_in.i_codec == VLC_CODEC_FLAC )
{
i_offset = 8;
i_size = p_dec->fmt_in.i_extra - 8;
}
- else if( p_dec->fmt_in.i_codec == VLC_FOURCC( 'a', 'l', 'a', 'c' ) )
+ else if( p_dec->fmt_in.i_codec == VLC_CODEC_ALAC )
{
static const uint8_t p_pattern[] = { 0, 0, 0, 36, 'a', 'l', 'a', 'c' };
/* Find alac atom XXX it is a bit ugly */
switch( p_sys->p_context->sample_fmt )
{
case SAMPLE_FMT_U8:
- p_dec->fmt_out.i_codec = VLC_FOURCC('u','8',' ',' ');
+ p_dec->fmt_out.i_codec = VLC_CODEC_U8;
p_dec->fmt_out.audio.i_bitspersample = 8;
break;
case SAMPLE_FMT_S32:
p_dec->fmt_out.audio.i_bitspersample = 32;
break;
case SAMPLE_FMT_FLT:
- p_dec->fmt_out.i_codec = VLC_FOURCC('f','l','3','2');
+ p_dec->fmt_out.i_codec = VLC_CODEC_FL32;
p_dec->fmt_out.audio.i_bitspersample = 32;
break;
case SAMPLE_FMT_DBL:
- p_dec->fmt_out.i_codec = VLC_FOURCC('f','l','6','4');
+ p_dec->fmt_out.i_codec = VLC_CODEC_FL64;
p_dec->fmt_out.audio.i_bitspersample = 64;
break;
} chroma_table[] =
{
/* Planar YUV formats */
- {VLC_FOURCC('I','4','4','4'), PIX_FMT_YUV444P, 0, 0, 0 },
- {VLC_FOURCC('J','4','4','4'), PIX_FMT_YUVJ444P, 0, 0, 0 },
+ {VLC_CODEC_I444, PIX_FMT_YUV444P, 0, 0, 0 },
+ {VLC_CODEC_J444, PIX_FMT_YUVJ444P, 0, 0, 0 },
#if LIBAVUTIL_VERSION_INT >= ((49<<16)+(5<<8)+0)
- {VLC_FOURCC('I','4','4','0'), PIX_FMT_YUV440P, 0, 0, 0 },
- {VLC_FOURCC('J','4','4','0'), PIX_FMT_YUVJ440P, 0, 0, 0 },
+ {VLC_CODEC_I440, PIX_FMT_YUV440P, 0, 0, 0 },
+ {VLC_CODEC_J440, PIX_FMT_YUVJ440P, 0, 0, 0 },
#endif
- {VLC_FOURCC('I','4','2','2'), PIX_FMT_YUV422P, 0, 0, 0 },
- {VLC_FOURCC('J','4','2','2'), PIX_FMT_YUVJ422P, 0, 0, 0 },
+ {VLC_CODEC_I422, PIX_FMT_YUV422P, 0, 0, 0 },
+ {VLC_CODEC_J422, PIX_FMT_YUVJ422P, 0, 0, 0 },
- {VLC_FOURCC('I','4','2','0'), PIX_FMT_YUV420P, 0, 0, 0 },
- {VLC_FOURCC('Y','V','1','2'), PIX_FMT_YUV420P, 0, 0, 0 },
+ {VLC_CODEC_I420, PIX_FMT_YUV420P, 0, 0, 0 },
+ {VLC_CODEC_YV12, PIX_FMT_YUV420P, 0, 0, 0 },
{VLC_FOURCC('I','Y','U','V'), PIX_FMT_YUV420P, 0, 0, 0 },
- {VLC_FOURCC('J','4','2','0'), PIX_FMT_YUVJ420P, 0, 0, 0 },
- {VLC_FOURCC('I','4','1','1'), PIX_FMT_YUV411P, 0, 0, 0 },
- {VLC_FOURCC('I','4','1','0'), PIX_FMT_YUV410P, 0, 0, 0 },
+ {VLC_CODEC_J420, PIX_FMT_YUVJ420P, 0, 0, 0 },
+ {VLC_CODEC_I411, PIX_FMT_YUV411P, 0, 0, 0 },
+ {VLC_CODEC_I410, PIX_FMT_YUV410P, 0, 0, 0 },
{VLC_FOURCC('Y','V','U','9'), PIX_FMT_YUV410P, 0, 0, 0 },
{VLC_FOURCC('N','V','1','2'), PIX_FMT_NV12, 0, 0, 0 },
{VLC_FOURCC('N','V','2','1'), PIX_FMT_NV21, 0, 0, 0 },
/* Packed YUV formats */
- {VLC_FOURCC('Y','U','Y','2'), PIX_FMT_YUYV422, 0, 0, 0 },
+ {VLC_CODEC_YUYV, PIX_FMT_YUYV422, 0, 0, 0 },
{VLC_FOURCC('Y','U','Y','V'), PIX_FMT_YUYV422, 0, 0, 0 },
- {VLC_FOURCC('U','Y','V','Y'), PIX_FMT_UYVY422, 0, 0, 0 },
+ {VLC_CODEC_UYVY, PIX_FMT_UYVY422, 0, 0, 0 },
{VLC_FOURCC('Y','4','1','1'), PIX_FMT_UYYVYY411, 0, 0, 0 },
/* Packed RGB formats */
VLC_RGB( VLC_FOURCC('R','G','B','4'), PIX_FMT_RGB4, PIX_FMT_BGR4, 0x10, 0x06, 0x01 )
VLC_RGB( VLC_FOURCC('R','G','B','8'), PIX_FMT_RGB8, PIX_FMT_BGR8, 0xC0, 0x38, 0x07 )
- VLC_RGB( VLC_FOURCC('R','V','1','5'), PIX_FMT_BGR555, PIX_FMT_RGB555, 0x7c00, 0x03e0, 0x001f )
- VLC_RGB( VLC_FOURCC('R','V','1','6'), PIX_FMT_BGR565, PIX_FMT_RGB565, 0xf800, 0x07e0, 0x001f )
- VLC_RGB( VLC_FOURCC('R','V','2','4'), PIX_FMT_BGR24, PIX_FMT_RGB24, 0xff0000, 0x00ff00, 0x0000ff )
+ VLC_RGB( VLC_CODEC_RGB15, PIX_FMT_BGR555, PIX_FMT_RGB555, 0x7c00, 0x03e0, 0x001f )
+ VLC_RGB( VLC_CODEC_RGB16, PIX_FMT_BGR565, PIX_FMT_RGB565, 0xf800, 0x07e0, 0x001f )
+ VLC_RGB( VLC_CODEC_RGB24, PIX_FMT_BGR24, PIX_FMT_RGB24, 0xff0000, 0x00ff00, 0x0000ff )
- VLC_RGB( VLC_FOURCC('R','V','3','2'), PIX_FMT_RGB32, PIX_FMT_BGR32, 0x00ff0000, 0x0000ff00, 0x000000ff )
- VLC_RGB( VLC_FOURCC('R','V','3','2'), PIX_FMT_RGB32_1, PIX_FMT_BGR32_1, 0xff000000, 0x00ff0000, 0x0000ff00 )
+ VLC_RGB( VLC_CODEC_RGB32, PIX_FMT_RGB32, PIX_FMT_BGR32, 0x00ff0000, 0x0000ff00, 0x000000ff )
+ VLC_RGB( VLC_CODEC_RGB32, PIX_FMT_RGB32_1, PIX_FMT_BGR32_1, 0xff000000, 0x00ff0000, 0x0000ff00 )
#if defined(PIX_FMT_RGBA)
- {VLC_FOURCC('R','G','B','A'), PIX_FMT_RGBA, 0xff000000, 0x00ff0000, 0x0000ff00},
+ {VLC_CODEC_RGBA, PIX_FMT_RGBA, 0xff000000, 0x00ff0000, 0x0000ff00},
#endif
- {VLC_FOURCC('G','R','E','Y'), PIX_FMT_GRAY8, 0, 0, 0},
+ {VLC_CODEC_GREY, PIX_FMT_GRAY8, 0, 0, 0},
/* Paletized RGB */
- {VLC_FOURCC('R','G','B','P'), PIX_FMT_PAL8, 0, 0, 0},
+ {VLC_CODEC_RGBP, PIX_FMT_PAL8, 0, 0, 0},
{ 0, 0, 0, 0, 0 }
__MAX( __MIN( p_sys->i_b_frames, FF_MAX_B_FRAMES ), 0 );
p_context->b_frame_strategy = 0;
if( !p_context->max_b_frames &&
- ( p_enc->fmt_out.i_codec == VLC_FOURCC('m', 'p', '2', 'v') ||
- p_enc->fmt_out.i_codec == VLC_FOURCC('m', 'p', '1', 'v') ) )
+ ( p_enc->fmt_out.i_codec == VLC_CODEC_MP2V ||
+ p_enc->fmt_out.i_codec == VLC_CODEC_MP1V ) )
p_context->flags |= CODEC_FLAG_LOW_DELAY;
av_reduce( &i_aspect_num, &i_aspect_den,
p_sys->i_buffer_out = FF_MIN_BUFFER_SIZE;
p_sys->p_buffer_out = malloc( p_sys->i_buffer_out );
- p_enc->fmt_in.i_codec = VLC_FOURCC('I','4','2','0');
+ p_enc->fmt_in.i_codec = VLC_CODEC_I420;
p_enc->fmt_in.video.i_chroma = p_enc->fmt_in.i_codec;
GetFfmpegChroma( &p_context->pix_fmt, p_enc->fmt_in.video );
p_context->sample_rate = p_enc->fmt_out.audio.i_rate;
p_context->channels = p_enc->fmt_out.audio.i_channels;
- if ( p_enc->fmt_out.i_codec == VLC_FOURCC('m','p','4','a') )
+ if ( p_enc->fmt_out.i_codec == VLC_CODEC_MP4A )
{
/* XXX: FAAC does resample only when setting the INPUT samplerate
* to the desired value (-R option of the faac frontend)
frame.top_field_first = !!p_pict->b_top_field_first;
/* Set the pts of the frame being encoded (segfaults with mpeg4!)*/
- if( p_enc->fmt_out.i_codec != VLC_FOURCC( 'm', 'p', '4', 'v' ) )
+ if( p_enc->fmt_out.i_codec != VLC_CODEC_MP4V )
{
frame.pts = p_pict->date ? p_pict->date : (int64_t)AV_NOPTS_VALUE;
if( GetVlcChroma( &p_dec->fmt_out.video, p_context->pix_fmt ) != VLC_SUCCESS )
{
/* we are doomed, but not really, because most codecs set their pix_fmt much later */
- p_dec->fmt_out.i_codec = VLC_FOURCC('I','4','2','0');
+ p_dec->fmt_out.i_codec = VLC_CODEC_I420;
}
p_dec->fmt_out.i_codec = p_dec->fmt_out.video.i_chroma;
if( GetVlcChroma( &p_dec->fmt_out.video, p_context->pix_fmt ) != VLC_SUCCESS )
{
/* we are doomed. but not really, because most codecs set their pix_fmt later on */
- p_dec->fmt_out.i_codec = VLC_FOURCC('I','4','2','0');
+ p_dec->fmt_out.i_codec = VLC_CODEC_I420;
}
p_dec->fmt_out.i_codec = p_dec->fmt_out.video.i_chroma;
Eia608Init( &p_sys->eia608 );
p_dec->fmt_out.i_cat = SPU_ES;
- p_dec->fmt_out.i_codec = VLC_FOURCC('T','E','X','T');
+ p_dec->fmt_out.i_codec = VLC_CODEC_TEXT;
return VLC_SUCCESS;
}
/* Create a new subpicture region */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('T','E','X','T');
+ fmt.i_chroma = VLC_CODEC_TEXT;
fmt.i_aspect = 0;
fmt.i_width = fmt.i_height = 0;
fmt.i_x_offset = fmt.i_y_offset = 0;
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('C','D','G',' ') )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_CDG )
return VLC_EGENERIC;
/* Allocate the memory needed to store the decoder's structure */
/* Set output properties
* TODO maybe it would be better to use RV16 or RV24 ? */
p_dec->fmt_out.i_cat = VIDEO_ES;
- p_dec->fmt_out.i_codec = VLC_FOURCC('R','V','3','2');
+ p_dec->fmt_out.i_codec = VLC_CODEC_RGB32;
p_dec->fmt_out.video.i_width = CDG_DISPLAY_WIDTH;
p_dec->fmt_out.video.i_height = CDG_DISPLAY_HEIGHT;
p_dec->fmt_out.video.i_aspect =
csri_rend *p_render;
struct csri_stream_ext *p_stream_ext;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('s','s','a',' ') )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_SSA )
return VLC_EGENERIC;
p_render = csri_renderer_default();
p_dec->fmt_in.p_extra ? strnlen( p_dec->fmt_in.p_extra, p_dec->fmt_in.i_extra ) : 0,
NULL);
p_dec->fmt_out.i_cat = SPU_ES;
- p_dec->fmt_out.i_codec = VLC_FOURCC('R','G','B','A');
+ p_dec->fmt_out.i_codec = VLC_CODEC_RGBA;
return VLC_SUCCESS;
}
/* XXX On x86 at least our RGBA is mapped to their BGRA
* TODO confirm that is the same on big endian cpu */
fmt = *p_fmt;
- fmt.i_chroma = VLC_FOURCC('R','G','B','A');
+ fmt.i_chroma = VLC_CODEC_RGBA;
fmt.i_width = fmt.i_visible_width;
fmt.i_height = fmt.i_visible_height;
fmt.i_bits_per_pixel = 0;
p_dec->pf_packetize = Packetize;
p_dec->fmt_out.i_cat = SPU_ES;
- p_dec->fmt_out.i_codec = VLC_FOURCC('Y','U','V','P');
+ p_dec->fmt_out.i_codec = VLC_CODEC_YUVP;
return VLC_SUCCESS;
}
/* Create new SPU region */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('Y','U','V','P');
+ fmt.i_chroma = VLC_CODEC_YUVP;
fmt.i_aspect = VOUT_ASPECT_FACTOR;
fmt.i_width = fmt.i_visible_width = p_sys->i_width;
fmt.i_height = fmt.i_visible_height = p_sys->i_height;
float f_tmp;
char *psz_tmp;
- if( p_enc->fmt_out.i_codec != VLC_FOURCC('d','r','a','c') &&
+ if( p_enc->fmt_out.i_codec != VLC_CODEC_DIRAC &&
!p_enc->b_force )
{
return VLC_EGENERIC;
p_enc->p_sys = p_sys;
p_enc->pf_encode_video = Encode;
- p_enc->fmt_out.i_codec = VLC_FOURCC('d','r','a','c');
+ p_enc->fmt_out.i_codec = VLC_CODEC_DIRAC;
p_enc->fmt_out.i_cat = VIDEO_ES;
if( ( p_sys->p_dts_fifo = block_FifoNew() ) == NULL )
if( !psz_tmp )
goto error;
else if( !strcmp( psz_tmp, "420" ) ) {
- p_enc->fmt_in.i_codec = VLC_FOURCC('I','4','2','0');
+ p_enc->fmt_in.i_codec = VLC_CODEC_I420;
p_enc->fmt_in.video.i_bits_per_pixel = 12;
p_sys->ctx.src_params.chroma = format420;
p_sys->i_buffer_in = p_enc->fmt_in.video.i_width * p_enc->fmt_in.video.i_height * 3 / 2;
}
else if( !strcmp( psz_tmp, "422" ) ) {
- p_enc->fmt_in.i_codec = VLC_FOURCC('I','4','2','2');
+ p_enc->fmt_in.i_codec = VLC_CODEC_I422;
p_enc->fmt_in.video.i_bits_per_pixel = 16;
p_sys->ctx.src_params.chroma = format422;
p_sys->i_buffer_in = p_enc->fmt_in.video.i_width * p_enc->fmt_in.video.i_height * 2;
}
else if( !strcmp( psz_tmp, "444" ) ) {
- p_enc->fmt_in.i_codec = VLC_FOURCC('I','4','4','4');
+ p_enc->fmt_in.i_codec = VLC_CODEC_I444;
p_enc->fmt_in.video.i_bits_per_pixel = 24;
p_sys->ctx.src_params.chroma = format444;
p_sys->i_buffer_in = p_enc->fmt_in.video.i_width * p_enc->fmt_in.video.i_height * 3;
{ VLC_FOURCC('W','V','C','1'), "wvc1dmod.dll", &guid_wvc1 },
{ VLC_FOURCC('w','v','c','1'), "wvc1dmod.dll", &guid_wvc1 },
/* WMV3 */
- { VLC_FOURCC('W','M','V','3'), "wmv9dmod.dll", &guid_wmv9 },
+ { 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 },
/* WMV2 */
- { VLC_FOURCC('W','M','V','2'), "wmvdmod.dll", &guid_wmv },
+ { VLC_CODEC_WMV2, "wmvdmod.dll", &guid_wmv },
{ VLC_FOURCC('w','m','v','2'), "wmvdmod.dll", &guid_wmv },
/* WMV1 */
- { VLC_FOURCC('W','M','V','1'), "wmvdmod.dll", &guid_wmv },
+ { VLC_CODEC_WMV1, "wmvdmod.dll", &guid_wmv },
{ VLC_FOURCC('w','m','v','1'), "wmvdmod.dll", &guid_wmv },
/* Screen codecs */
{ VLC_FOURCC('M','S','S','2'), "wmsdmod.dll", &guid_wms },
/* WMA 3 */
{ VLC_FOURCC('W','M','A','3'), "wma9dmod.dll", &guid_wma9 },
{ VLC_FOURCC('w','m','a','3'), "wma9dmod.dll", &guid_wma9 },
- { VLC_FOURCC('W','M','A','P'), "wma9dmod.dll", &guid_wma9 },
+ { VLC_CODEC_WMAP, "wma9dmod.dll", &guid_wma9 },
{ VLC_FOURCC('w','m','a','p'), "wma9dmod.dll", &guid_wma9 },
/* WMA 2 */
- { VLC_FOURCC('W','M','A','2'), "wma9dmod.dll", &guid_wma9 },
+ { VLC_CODEC_WMA2, "wma9dmod.dll", &guid_wma9 },
{ VLC_FOURCC('w','m','a','2'), "wma9dmod.dll", &guid_wma9 },
/* WMA Speech */
- { VLC_FOURCC('W','M','A','S'), "wmspdmod.dll", &guid_wma },
+ { VLC_CODEC_WMAS, "wmspdmod.dll", &guid_wma },
{ VLC_FOURCC('w','m','a','s'), "wmspdmod.dll", &guid_wma },
/* */
static const codec_dll encoders_table[] =
{
/* WMV3 */
- { VLC_FOURCC('W','M','V','3'), "wmvdmoe2.dll", &guid_wmv_enc2 },
+ { VLC_CODEC_WMV3, "wmvdmoe2.dll", &guid_wmv_enc2 },
{ VLC_FOURCC('w','m','v','3'), "wmvdmoe2.dll", &guid_wmv_enc2 },
/* WMV2 */
- { VLC_FOURCC('W','M','V','2'), "wmvdmoe2.dll", &guid_wmv_enc2 },
+ { VLC_CODEC_WMV2, "wmvdmoe2.dll", &guid_wmv_enc2 },
{ VLC_FOURCC('w','m','v','2'), "wmvdmoe2.dll", &guid_wmv_enc2 },
/* WMV1 */
- { VLC_FOURCC('W','M','V','1'), "wmvdmoe2.dll", &guid_wmv_enc2 },
+ { 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 },
/* WMA 2 */
- { VLC_FOURCC('W','M','A','2'), "wmadmoe.dll", &guid_wma_enc },
+ { VLC_CODEC_WMA2, "wmadmoe.dll", &guid_wma_enc },
{ VLC_FOURCC('w','m','a','2'), "wmadmoe.dll", &guid_wma_enc },
/* */
{
BITMAPINFOHEADER *p_bih;
DMO_MEDIA_TYPE mt;
- unsigned i_chroma = VLC_FOURCC('Y','U','Y','2');
+ unsigned i_chroma = VLC_CODEC_YUYV;
int i_planes = 1, i_bpp = 16;
int i = 0;
/* Find out which chroma to use */
while( !p_dmo->vt->GetOutputType( p_dmo, 0, i++, &mt ) )
{
- if( mt.subtype.Data1 == VLC_FOURCC('Y','V','1','2') )
+ if( mt.subtype.Data1 == VLC_CODEC_YV12 )
{
i_chroma = mt.subtype.Data1;
i_planes = 3; i_bpp = 12;
DMOFreeMediaType( &mt );
}
- p_dec->fmt_out.i_codec = i_chroma == VLC_FOURCC('Y','V','1','2') ?
- VLC_FOURCC('I','4','2','0') : i_chroma;
+ p_dec->fmt_out.i_codec = i_chroma == VLC_CODEC_YV12 ?
+ VLC_CODEC_I420 : i_chroma;
p_dec->fmt_out.video.i_width = p_dec->fmt_in.video.i_width;
p_dec->fmt_out.video.i_height = p_dec->fmt_in.video.i_height;
p_dec->fmt_out.video.i_bits_per_pixel = i_bpp;
memset( &vih, 0, sizeof(VIDEOINFOHEADER) );
p_bih = &vih.bmiHeader;
- p_bih->biCompression = VLC_FOURCC('I','4','2','0');
+ p_bih->biCompression = VLC_CODEC_I420;
p_bih->biWidth = p_enc->fmt_in.video.i_width;
p_bih->biHeight = p_enc->fmt_in.video.i_height;
p_bih->biBitCount = p_enc->fmt_in.video.i_bits_per_pixel;
i_err = p_dmo->vt->SetOutputType( p_dmo, 0, &dmo_type, 0 );
p_vih = (VIDEOINFOHEADER *)dmo_type.pbFormat;
- p_enc->fmt_in.i_codec = VLC_FOURCC('I','4','2','0');
+ p_enc->fmt_in.i_codec = VLC_CODEC_I420;
DMOFreeMediaType( &dmo_type );
if( i_err )
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('d','t','s',' ') &&
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_DTS &&
p_dec->fmt_in.i_codec != VLC_FOURCC('d','t','s','b') )
{
return VLC_EGENERIC;
/* Set output properties */
p_dec->fmt_out.i_cat = AUDIO_ES;
- p_dec->fmt_out.i_codec = VLC_FOURCC('d','t','s',' ');
+ p_dec->fmt_out.i_codec = VLC_CODEC_DTS;
p_dec->fmt_out.audio.i_rate = 0; /* So end_date gets initialized */
/* Set callback */
vlc_value_t val;
int i_posx, i_posy;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('d','v','b','s') )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_DVBS )
{
return VLC_EGENERIC;
}
/* Create new SPU region */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('Y','U','V','P');
+ fmt.i_chroma = VLC_CODEC_YUVP;
fmt.i_aspect = 0; /* 0 means use aspect ratio of background video */
fmt.i_width = fmt.i_visible_width = p_region->i_width;
fmt.i_height = fmt.i_visible_height = p_region->i_height;
/* Create new SPU region */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('T','E','X','T');
+ fmt.i_chroma = VLC_CODEC_TEXT;
fmt.i_aspect = VOUT_ASPECT_FACTOR;
fmt.i_width = fmt.i_visible_width = p_region->i_width;
fmt.i_height = fmt.i_visible_height = p_region->i_height;
encoder_sys_t *p_sys;
vlc_value_t val;
- if( ( p_enc->fmt_out.i_codec != VLC_FOURCC('d','v','b','s') ) &&
+ if( ( p_enc->fmt_out.i_codec != VLC_CODEC_DVBS ) &&
!p_enc->b_force )
{
return VLC_EGENERIC;
p_enc->p_sys = p_sys;
p_enc->pf_encode_sub = Encode;
- p_enc->fmt_out.i_codec = VLC_FOURCC('d','v','b','s');
+ p_enc->fmt_out.i_codec = VLC_CODEC_DVBS;
p_enc->fmt_out.subs.dvb.i_id = 1 << 16 | 1;
config_ChainParse( p_enc, ENC_CFG_PREFIX, ppsz_enc_options, p_enc->p_cfg );
return VLC_SUCCESS;
}
-/* FIXME: this routine is a hack to convert VLC_FOURCC('Y','U','V','A')
- * into VLC_FOURCC('Y','U','V','P')
+/* FIXME: this routine is a hack to convert VLC_CODEC_YUVA
+ * into VLC_CODEC_YUVP
*/
static subpicture_t *YuvaYuvp( subpicture_t *p_subpic )
{
#ifdef DEBUG_DVBSUB
msg_Dbg( p_enc, "YuvaYuvp: i_pixels=%d, i_iterator=%d", i_pixels, i_iterator );
#endif
- p_fmt->i_chroma = VLC_FOURCC('Y','U','V','P');
+ p_fmt->i_chroma = VLC_CODEC_YUVP;
p_fmt->p_palette = (video_palette_t *) malloc( sizeof( video_palette_t ) );
if( !p_fmt->p_palette ) break;
p_fmt->p_palette->i_entries = 0;
if( !p_subpic || !p_subpic->p_region ) return NULL;
- /* FIXME: this is a hack to convert VLC_FOURCC('Y','U','V','A') into
- * VLC_FOURCC('Y','U','V','P')
+ /* FIXME: this is a hack to convert VLC_CODEC_YUVA into
+ * VLC_CODEC_YUVP
*/
p_region = p_subpic->p_region;
- if( p_region->fmt.i_chroma == VLC_FOURCC('Y','U','V','A') )
+ if( p_region->fmt.i_chroma == VLC_CODEC_YUVA )
{
p_temp = YuvaYuvp( p_subpic );
if( !p_temp )
/* Sanity check */
if( !p_region ) return NULL;
- if( ( p_region->fmt.i_chroma != VLC_FOURCC('T','E','X','T') ) &&
- ( p_region->fmt.i_chroma != VLC_FOURCC('Y','U','V','P') ) )
+ if( ( p_region->fmt.i_chroma != VLC_CODEC_TEXT ) &&
+ ( p_region->fmt.i_chroma != VLC_CODEC_YUVP ) )
{
char psz_fourcc[5];
memset( &psz_fourcc, 0, sizeof( psz_fourcc ) );
/* Sanity check */
if( !p_region ) return;
- if( p_region->fmt.i_chroma == VLC_FOURCC('Y','U','V','P') )
+ if( p_region->fmt.i_chroma == VLC_CODEC_YUVP )
{
p_pal = p_region->fmt.p_palette;
}
{
int i_entries = 4, i_depth = 0x1, i_bg = 0;
bool b_text =
- ( p_region->fmt.i_chroma == VLC_FOURCC('T','E','X','T') );
+ ( p_region->fmt.i_chroma == VLC_CODEC_TEXT );
if( !b_text )
{
/* object coding method */
switch( p_region->fmt.i_chroma )
{
- case VLC_FOURCC( 'Y','U','V','P' ):
+ case VLC_CODEC_YUVP:
bs_write( s, 2, 0 );
break;
- case VLC_FOURCC( 'T','E','X','T' ):
+ case VLC_CODEC_TEXT:
bs_write( s, 2, 1 );
break;
default:
bs_write( s, 1, 0 ); /* non modifying color flag */
bs_write( s, 1, 0 ); /* Reserved */
- if( p_region->fmt.i_chroma == VLC_FOURCC( 'T','E','X','T' ) )
+ if( p_region->fmt.i_chroma == VLC_CODEC_TEXT )
{
int i_size, i;
unsigned int i_line;
/* Sanity check */
- if( p_region->fmt.i_chroma != VLC_FOURCC('Y','U','V','P') ) return;
+ if( p_region->fmt.i_chroma != VLC_CODEC_YUVP ) return;
/* Encode line by line */
for( i_line = !b_top; i_line < p_region->fmt.i_visible_height;
decoder_sys_t *p_sys = p_dec->p_sys;
faacDecConfiguration *cfg;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('m','p','4','a') )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_MP4A )
{
return VLC_EGENERIC;
}
p_dec->fmt_out.i_cat = AUDIO_ES;
if (vlc_CPU() & CPU_CAPABILITY_FPU)
- p_dec->fmt_out.i_codec = VLC_FOURCC('f','l','3','2');
+ p_dec->fmt_out.i_codec = VLC_CODEC_FL32;
else
p_dec->fmt_out.i_codec = AOUT_FMT_S16_NE;
p_dec->pf_decode_audio = DecodeBlock;
if( strlen( psz_chroma ) != 4 )
{
msg_Warn( p_dec, "Invalid chroma (%s). Using I420.", psz_chroma );
- fmt_out.i_chroma = VLC_FOURCC('I','4','2','0');
+ fmt_out.i_chroma = VLC_CODEC_I420;
}
else
{
- fmt_out.i_chroma = VLC_FOURCC( psz_chroma[0],
- psz_chroma[1],
- psz_chroma[2],
- psz_chroma[3] );
+ fmt_out.i_chroma = vlc_fourcc_GetCodec( VIDEO_ES,
+ VLC_FOURCC( psz_chroma[0],
+ psz_chroma[1],
+ psz_chroma[2],
+ psz_chroma[3] ) );
}
free( psz_chroma );
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('f','l','a','c') )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_FLAC )
{
return VLC_EGENERIC;
}
/* Set output properties */
p_dec->fmt_out.i_cat = AUDIO_ES;
- p_dec->fmt_out.i_codec = VLC_FOURCC('f','l','3','2');
+ p_dec->fmt_out.i_codec = VLC_CODEC_FL32;
/* Set callbacks */
#ifdef USE_LIBFLAC
p_dec->pf_packetize = PacketizeBlock;
/* Set output properties */
- p_dec->fmt_out.i_codec = VLC_FOURCC('f','l','a','c');
+ p_dec->fmt_out.i_codec = VLC_CODEC_FLAC;
if( i_ret != VLC_SUCCESS )
{
if( !p_sys->b_stream_info ) return;
- if( p_dec->fmt_out.i_codec == VLC_FOURCC('f','l','a','c') )
+ if( p_dec->fmt_out.i_codec == VLC_CODEC_FLAC )
{
p_dec->fmt_out.i_extra = p_dec->fmt_in.i_extra;
p_dec->fmt_out.p_extra =
switch( metadata->data.stream_info.bits_per_sample )
{
case 8:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','8',' ',' ');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S8;
break;
case 16:
p_dec->fmt_out.i_codec = AOUT_FMT_S16_NE;
default:
msg_Dbg( p_dec, "strange bit/sample value: %d",
metadata->data.stream_info.bits_per_sample );
- p_dec->fmt_out.i_codec = VLC_FOURCC('f','i','3','2');
+ p_dec->fmt_out.i_codec = VLC_CODEC_FI32;
break;
}
}
encoder_t *p_enc = (encoder_t *)p_this;
encoder_sys_t *p_sys;
- if( p_enc->fmt_out.i_codec != VLC_FOURCC('f','l','a','c') &&
+ if( p_enc->fmt_out.i_codec != VLC_CODEC_FLAC &&
!p_enc->b_force )
{
return VLC_EGENERIC;
return VLC_ENOMEM;
p_enc->p_sys = p_sys;
p_enc->pf_encode_audio = Encode;
- p_enc->fmt_out.i_codec = VLC_FOURCC('f','l','a','c');
+ p_enc->fmt_out.i_codec = VLC_CODEC_FLAC;
p_sys->i_headers = 0;
p_sys->p_buffer = 0;
decoder_t *p_dec = (decoder_t *)p_this;
decoder_sys_t *p_sys;
- if (p_dec->fmt_in.i_codec != VLC_FOURCC ('M', 'I', 'D', 'I'))
+ if (p_dec->fmt_in.i_codec != VLC_CODEC_MIDI)
return VLC_EGENERIC;
char *font_path = var_CreateGetNonEmptyString (p_this, "soundfont");
p_dec->fmt_out.audio.i_original_channels =
p_dec->fmt_out.audio.i_physical_channels =
AOUT_CHAN_LEFT | AOUT_CHAN_RIGHT;
- p_dec->fmt_out.i_codec = VLC_FOURCC('f', 'l', '3', '2');
+ p_dec->fmt_out.i_codec = VLC_CODEC_FL32;
p_dec->fmt_out.audio.i_bitspersample = 32;
p_dec->pf_decode_audio = DecodeBlock;
}
/* Set output properties */
- //p_dec->fmt_out.i_codec = VLC_FOURCC('R','G','B','A');
- p_dec->fmt_out.i_codec = VLC_FOURCC('R','V','2','4');
+ //p_dec->fmt_out.i_codec = VLC_CODEC_RGBA;
+ p_dec->fmt_out.i_codec = VLC_CODEC_RGB24;
p_dec->fmt_out.video.i_width = p_dec->p_sys->i_width;
p_dec->fmt_out.video.i_height = p_dec->p_sys->i_height;
p_dec->fmt_out.video.i_aspect = VOUT_ASPECT_FACTOR * p_dec->p_sys->i_width / p_dec->p_sys->i_height;
/* create a full frame region - this will also tell Tiger the size of the frame */
fmt = *p_fmt;
- fmt.i_chroma = VLC_FOURCC('R','G','B','A');
+ fmt.i_chroma = VLC_CODEC_RGBA;
fmt.i_width = fmt.i_visible_width;
fmt.i_height = fmt.i_visible_height;
fmt.i_bits_per_pixel = 0;
/* create a separate region for the bitmap */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('Y','U','V','P');
+ fmt.i_chroma = VLC_CODEC_YUVP;
fmt.i_aspect = 0;
fmt.i_width = fmt.i_visible_width = ev->bitmap->width;
fmt.i_height = fmt.i_visible_height = ev->bitmap->height;
}
/* text region */
- fmt.i_chroma = VLC_FOURCC('T','E','X','T');
+ fmt.i_chroma = VLC_CODEC_TEXT;
fmt.i_aspect = 0;
fmt.i_width = fmt.i_height = 0;
fmt.i_x_offset = fmt.i_y_offset = 0;
decoder_sys_t *p_sys;
ass_track_t *p_track;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('s','s','a',' ') )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_SSA )
return VLC_EGENERIC;
p_dec->pf_decode_sub = DecodeBlock;
vlc_mutex_unlock( &libass_lock );
p_dec->fmt_out.i_cat = SPU_ES;
- p_dec->fmt_out.i_codec = VLC_FOURCC('R','G','B','A');
+ p_dec->fmt_out.i_codec = VLC_CODEC_RGBA;
return VLC_SUCCESS;
}
/* */
fmt = *p_fmt;
- fmt.i_chroma = VLC_FOURCC('R','G','B','A');
+ fmt.i_chroma = VLC_CODEC_RGBA;
fmt.i_width = fmt.i_visible_width;
fmt.i_height = fmt.i_visible_height;
fmt.i_bits_per_pixel = 0;
decoder_sys_t *p_sys;
uint32_t i_accel = 0;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('m','p','g','v') &&
+ 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_FOURCC('m','p','2','v') &&
+ 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') )
{
p_dec->fmt_out.i_codec =
( p_sys->p_info->sequence->chroma_height <
p_sys->p_info->sequence->height ) ?
- VLC_FOURCC('I','4','2','0') : VLC_FOURCC('I','4','2','2');
+ VLC_CODEC_I420 : VLC_CODEC_I422;
/* Get a new picture */
p_pic = decoder_NewPicture( p_dec );
switch( p_dec->fmt_in.i_codec )
{
/* DVD LPCM */
- case VLC_FOURCC('l','p','c','m'):
+ case VLC_CODEC_DVD_LPCM:
case VLC_FOURCC('l','p','c','b'):
b_dvd = true;
break;
/* BD LPCM */
- case VLC_FOURCC('b','p','c','m'):
+ case VLC_CODEC_BD_LPCM:
b_dvd = false;
break;
default:
if( b_packetizer )
{
- p_dec->fmt_out.i_codec = b_dvd ? VLC_FOURCC('l','p','c','m') : VLC_FOURCC('b','p','c','m');
+ p_dec->fmt_out.i_codec = b_dvd ? VLC_CODEC_DVD_LPCM : VLC_CODEC_BD_LPCM;
}
else
{
{
case 24:
case 20:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','2','4','b');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S24B;
p_dec->fmt_out.audio.i_bitspersample = 24;
break;
default:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','1','6','b');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S16B;
p_dec->fmt_out.audio.i_bitspersample = 16;
break;
}
/* */
if( i_bits == 16 )
{
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','1','6','b');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S16B;
p_dec->fmt_out.audio.i_bitspersample = 16;
}
else
{
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','2','4','b');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S24B;
p_dec->fmt_out.audio.i_bitspersample = 24;
}
switch( p_dec->fmt_in.i_codec )
{
/* Planar YUV */
- case VLC_FOURCC('h','2','6','1'):
+ case VLC_CODEC_H261:
case VLC_FOURCC('H','2','6','1'):
break;
/* Set output properties */
p_dec->fmt_out.i_cat = VIDEO_ES;
- p_dec->fmt_out.i_codec = VLC_FOURCC('I','4','2','0');
+ p_dec->fmt_out.i_codec = VLC_CODEC_I420;
/* Set callbacks */
p_dec->pf_decode_video = (picture_t *(*)(decoder_t *, block_t **))
{
msg_Dbg( p_dec, "video size is perhaps %dx%d", i_width,
i_height);
- vout_InitFormat( &p_dec->fmt_out.video, VLC_FOURCC('I','4','2','0'),
+ vout_InitFormat( &p_dec->fmt_out.video, VLC_CODEC_I420,
i_width, i_height,
VOUT_ASPECT_FACTOR * i_width / i_height );
p_sys->b_inited = true;
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','a') )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_MPGA )
{
return VLC_EGENERIC;
}
/* Set output properties */
p_dec->fmt_out.i_cat = AUDIO_ES;
- p_dec->fmt_out.i_codec = VLC_FOURCC('m','p','g','a');
+ p_dec->fmt_out.i_codec = VLC_CODEC_MPGA;
p_dec->fmt_out.audio.i_rate = 0; /* So end_date gets initialized */
/* Set callback */
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('p','n','g',' ') &&
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_PNG &&
p_dec->fmt_in.i_codec != VLC_FOURCC('M','P','N','G') )
{
return VLC_EGENERIC;
/* Set output properties */
p_dec->fmt_out.i_cat = VIDEO_ES;
- p_dec->fmt_out.i_codec = VLC_FOURCC('R','G','B','A');
+ p_dec->fmt_out.i_codec = VLC_CODEC_RGBA;
/* Set callbacks */
p_dec->pf_decode_video = DecodeBlock;
if( p_sys->b_error ) goto error;
/* Set output properties */
- p_dec->fmt_out.i_codec = VLC_FOURCC('R','G','B','A');
+ p_dec->fmt_out.i_codec = VLC_CODEC_RGBA;
p_dec->fmt_out.video.i_width = i_width;
p_dec->fmt_out.video.i_height = i_height;
p_dec->fmt_out.video.i_aspect = VOUT_ASPECT_FACTOR * i_width / i_height;
}
else if( !(i_color_type & PNG_COLOR_MASK_ALPHA) )
{
- p_dec->fmt_out.i_codec = VLC_FOURCC('R','V','2','4');
+ p_dec->fmt_out.i_codec = VLC_CODEC_RGB24;
}
/* Get a new picture */
switch( p_dec->fmt_in.i_codec )
{
- case VLC_FOURCC('h','2','6','4'): /* H.264 */
+ case VLC_CODEC_H264: /* H.264 */
case VLC_FOURCC('c','v','i','d'): /* Cinepak */
case VLC_FOURCC('I','V','4','1'): /* Indeo Video IV */
case VLC_FOURCC('i','v','4','1'): /* dto. */
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_FOURCC('S','V','Q','3'): /* Sorenson v3 */
- /* case VLC_FOURCC('S','V','Q','1'): Sorenson v1
+ 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_FOURCC('r','l','e',' '): /* QuickTime animation (RLE) */
- case VLC_FOURCC('r','p','z','a'): /* QuickTime Apple Video */
+ case VLC_CODEC_QTRLE: /* QuickTime animation (RLE) */
+ case VLC_CODEC_RPZA: /* QuickTime Apple Video */
case VLC_FOURCC('a','z','p','r'): /* QuickTime animation (RLE) */
#ifdef LOADER
p_dec->p_sys = NULL;
if ((err != noErr) || (qtVersion < 0x07500000))
return VLC_EGENERIC;
#endif
- case VLC_FOURCC('s','a','m','r'): /* 3GPP AMR audio */
+ case VLC_CODEC_AMR_NB: /* 3GPP AMR audio */
case VLC_FOURCC('s','a','m','b'): /* 3GPP AMR-WB audio */
- case VLC_FOURCC('m','p','4','a'): /* MPEG-4 audio */
+ case VLC_CODEC_MP4A: /* MPEG-4 audio */
case VLC_FOURCC('Q','D','M','C'): /* QDesign */
- case VLC_FOURCC('Q','D','M','2'): /* QDesign* 2 */
- case VLC_FOURCC('Q','c','l','p'): /* Qualcomm Purevoice Codec */
+ case VLC_CODEC_QDM2: /* QDesign* 2 */
+ case VLC_CODEC_QCELP: /* Qualcomm Purevoice Codec */
case VLC_FOURCC('Q','C','L','P'): /* Qualcomm Purevoice Codec */
- case VLC_FOURCC('M','A','C','3'): /* MACE3 audio decoder */
- case VLC_FOURCC('M','A','C','6'): /* MACE6 audio decoder */
+ case VLC_CODEC_MACE3: /* MACE3 audio decoder */
+ case VLC_CODEC_MACE6: /* MACE6 audio decoder */
case VLC_FOURCC('d','v','c','a'): /* DV Audio */
case VLC_FOURCC('s','o','w','t'): /* 16-bit Little Endian */
case VLC_FOURCC('t','w','o','s'): /* 16-bit Big Endian */
- case VLC_FOURCC('a','l','a','w'): /* ALaw 2:1 */
+ case VLC_CODEC_ALAW: /* ALaw 2:1 */
case VLC_FOURCC('u','l','a','w'): /* mu-Law 2:1 */
case VLC_FOURCC('r','a','w',' '): /* 8-bit offset binaries */
- case VLC_FOURCC('f','l','3','2'): /* 32-bit Floating Point */
- case VLC_FOURCC('f','l','6','4'): /* 64-bit Floating Point */
+ case VLC_CODEC_FL32: /* 32-bit Floating Point */
+ case VLC_CODEC_FL64: /* 64-bit Floating Point */
case VLC_FOURCC('i','n','2','4'): /* 24-bit Interger */
case VLC_FOURCC('i','n','3','2'): /* 32-bit Integer */
case 0x0011: /* DVI IMA */
msg_Dbg( p_dec, "quicktime_video: ImageCodecPreDecompress cres=0x%X",
(int)cres );
- es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'Y', 'U', 'Y', '2' ));
+ es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_CODEC_YUYV);
p_dec->fmt_out.video.i_width = p_dec->fmt_in.video.i_width;
p_dec->fmt_out.video.i_height= p_dec->fmt_in.video.i_height;
p_dec->fmt_out.video.i_aspect = VOUT_ASPECT_FACTOR * p_dec->fmt_in.video.i_width / p_dec->fmt_in.video.i_height;
switch( p_dec->fmt_in.i_codec )
{
/* Planar YUV */
- case VLC_FOURCC('I','4','4','4'):
- case VLC_FOURCC('I','4','2','2'):
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('Y','V','1','2'):
+ case VLC_CODEC_I444:
+ case VLC_CODEC_I422:
+ case VLC_CODEC_I420:
+ case VLC_CODEC_YV12:
case VLC_FOURCC('I','Y','U','V'):
- case VLC_FOURCC('I','4','1','1'):
- case VLC_FOURCC('I','4','1','0'):
+ 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'):
/* Packed YUV */
- case VLC_FOURCC('Y','U','Y','2'):
+ case VLC_CODEC_YUYV:
case VLC_FOURCC('Y','8','0','0'):
- case VLC_FOURCC('U','Y','V','Y'):
+ case VLC_CODEC_UYVY:
case VLC_FOURCC('H','D','Y','C'):
/* RGB */
- case VLC_FOURCC('R','V','3','2'):
- case VLC_FOURCC('R','V','2','4'):
- case VLC_FOURCC('R','V','1','6'):
- case VLC_FOURCC('R','V','1','5'):
+ 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_FOURCC('U','Y','V','Y');
+ p_dec->fmt_in.i_codec = VLC_CODEC_UYVY;
break;
case VLC_FOURCC('y','v','1','2'):
- p_dec->fmt_in.i_codec = VLC_FOURCC('Y','V','1','2');
+ p_dec->fmt_in.i_codec = VLC_CODEC_YV12;
break;
default:
switch( p_dec->fmt_in.i_codec )
{
- case VLC_FOURCC('c','o','o','k'):
- case VLC_FOURCC('a','t','r','c'):
+ case VLC_CODEC_COOK:
+ case VLC_CODEC_ATRAC3:
case VLC_FOURCC('s','i','p','r'):
break;
}
/* setup rv30 codec (codec sub-type and image dimensions): */
- /*if ( p_dec->fmt_in.i_codec == VLC_FOURCC('R','V','3','0') )*/
+ /*if ( p_dec->fmt_in.i_codec == VLC_CODEC_RV30 )*/
if (p_vide[1]>=0x20200002)
{
int i, cmsg_cnt;
(*rvyuv_custom_message)(&cmsg_data,p_sys->handle);
}
/*
- es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'Y','V','1','2' ));
- es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC( 'Y','U','Y','2' ));
+ es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_CODEC_YV12);
+ es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_CODEC_YUYV);
*/
- 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 = p_dec->fmt_in.video.i_width;
p_dec->fmt_out.video.i_height= p_dec->fmt_in.video.i_height;
switch ( p_dec->fmt_in.i_codec )
{
- case VLC_FOURCC('R','V','1','0'):
- case VLC_FOURCC('R','V','2','0'):
- case VLC_FOURCC('R','V','3','0'):
- case VLC_FOURCC('R','V','4','0'):
+ case VLC_CODEC_RV10:
+ case VLC_CODEC_RV20:
+ case VLC_CODEC_RV30:
+ case VLC_CODEC_RV40:
p_dec->p_sys = NULL;
p_dec->pf_decode_video = DecodeVideo;
return InitVideo(p_dec);
decoder_sys_t *p_sys;
SchroDecoder *p_schro;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('d','r','a','c') )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_DIRAC )
{
return VLC_EGENERIC;
}
/* Set output properties */
p_dec->fmt_out.i_cat = VIDEO_ES;
- p_dec->fmt_out.i_codec = VLC_FOURCC('I','4','2','0');
+ p_dec->fmt_out.i_codec = VLC_CODEC_I420;
/* Set callbacks */
p_dec->pf_decode_video = DecodeBlock;
switch( p_sys->p_format->chroma_format )
{
- case SCHRO_CHROMA_420: p_dec->fmt_out.i_codec = VLC_FOURCC('I','4','2','0'); break;
- case SCHRO_CHROMA_422: p_dec->fmt_out.i_codec = VLC_FOURCC('I','4','2','2'); break;
- case SCHRO_CHROMA_444: p_dec->fmt_out.i_codec = VLC_FOURCC('I','4','4','4'); break;
+ case SCHRO_CHROMA_420: p_dec->fmt_out.i_codec = VLC_CODEC_I420; break;
+ case SCHRO_CHROMA_422: p_dec->fmt_out.i_codec = VLC_CODEC_I422; break;
+ case SCHRO_CHROMA_444: p_dec->fmt_out.i_codec = VLC_CODEC_I444; break;
default:
p_dec->fmt_out.i_codec = 0;
break;
const char *psz_sdl_type;
} p_supported_fmt[] =
{
- { VLC_FOURCC('t','g','a',' '), "TGA" },
- { VLC_FOURCC('b','m','p',' '), "BMP" },
- { VLC_FOURCC('p','n','m',' '), "PNM" },
+ { VLC_CODEC_TARGA, "TGA" },
+ { VLC_CODEC_BMP, "BMP" },
+ { VLC_CODEC_PNM, "PNM" },
{ VLC_FOURCC('x','p','m',' '), "XPM" },
{ VLC_FOURCC('x','c','f',' '), "XCF" },
- { VLC_FOURCC('p','c','x',' '), "PCX" },
- { VLC_FOURCC('g','i','f',' '), "GIF" },
- { VLC_FOURCC('j','p','e','g'), "JPG" },
- { VLC_FOURCC('t','i','f','f'), "TIF" },
+ { VLC_CODEC_PCX, "PCX" },
+ { VLC_CODEC_GIF, "GIF" },
+ { VLC_CODEC_JPEG, "JPG" },
+ { VLC_CODEC_TIFF, "TIF" },
{ VLC_FOURCC('l','b','m',' '), "LBM" },
- { VLC_FOURCC('p','n','g',' '), "PNG" }
+ { VLC_CODEC_PNG, "PNG" }
};
/*****************************************************************************
/* Set output properties - this is a decoy and isn't used anywhere */
p_dec->fmt_out.i_cat = VIDEO_ES;
- p_dec->fmt_out.i_codec = VLC_FOURCC('R','V','3','2');
+ p_dec->fmt_out.i_codec = VLC_CODEC_RGB32;
/* Set callbacks */
p_dec->pf_decode_video = DecodeBlock;
switch ( p_surface->format->BitsPerPixel )
{
case 16:
- p_dec->fmt_out.i_codec = VLC_FOURCC('R','V','1','6');
+ p_dec->fmt_out.i_codec = VLC_CODEC_RGB16;
break;
case 8:
case 24:
- p_dec->fmt_out.i_codec = VLC_FOURCC('R','V','2','4');
+ p_dec->fmt_out.i_codec = VLC_CODEC_RGB24;
break;
case 32:
- p_dec->fmt_out.i_codec = VLC_FOURCC('R','V','3','2');
+ p_dec->fmt_out.i_codec = VLC_CODEC_RGB32;
break;
default:
msg_Warn( p_dec, "unknown bits/pixel format (%d)",
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_FOURCC('s','p','x',' ')
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_SPEEX
&& p_dec->fmt_in.i_codec != VLC_FOURCC('s', 'p', 'x', 'r') )
{
return VLC_EGENERIC;
if( i_ret == VLC_SUCCESS )
{
p_dec->p_sys->b_packetizer = true;
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','p','x',' ');
+ p_dec->fmt_out.i_codec = VLC_CODEC_SPEEX;
}
return i_ret;
int pi_header[2];
uint8_t *p_extra;
- if( p_enc->fmt_out.i_codec != VLC_FOURCC('s','p','x',' ') &&
+ if( p_enc->fmt_out.i_codec != VLC_CODEC_SPEEX &&
!p_enc->b_force )
{
return VLC_EGENERIC;
p_enc->p_sys = p_sys;
p_enc->pf_encode_audio = Encode;
p_enc->fmt_in.i_codec = AOUT_FMT_S16_NE;
- p_enc->fmt_out.i_codec = VLC_FOURCC('s','p','x',' ');
+ p_enc->fmt_out.i_codec = VLC_CODEC_SPEEX;
speex_init_header( &p_sys->header, p_enc->fmt_in.audio.i_rate,
1, p_speex_mode );
/* Create a new subpicture region */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('Y','U','V','P');
+ fmt.i_chroma = VLC_CODEC_YUVP;
fmt.i_aspect = 0; /* 0 means use aspect ratio of background video */
fmt.i_width = fmt.i_visible_width = p_spu_properties->i_width;
fmt.i_height = fmt.i_visible_height = p_spu_properties->i_height -
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC( 's','p','u',' ' ) &&
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_SPU &&
p_dec->fmt_in.i_codec != VLC_FOURCC( 's','p','u','b' ) )
{
return VLC_EGENERIC;
p_sys->i_spu = 0;
p_sys->p_block = NULL;
- es_format_Init( &p_dec->fmt_out, SPU_ES, VLC_FOURCC( 's','p','u',' ' ) );
+ es_format_Init( &p_dec->fmt_out, SPU_ES, VLC_CODEC_SPU );
p_dec->pf_decode_sub = Decode;
p_dec->pf_packetize = NULL;
p_dec->pf_packetize = Packetize;
p_dec->p_sys->b_packetizer = true;
es_format_Copy( &p_dec->fmt_out, &p_dec->fmt_in );
- p_dec->fmt_out.i_codec = VLC_FOURCC( 's','p','u',' ' );
+ p_dec->fmt_out.i_codec = VLC_CODEC_SPU;
return VLC_SUCCESS;
}
switch( p_dec->fmt_in.i_codec )
{
- case VLC_FOURCC('s','u','b','t'):
- case VLC_FOURCC('s','s','a',' '):
+ case VLC_CODEC_SUBT:
+ case VLC_CODEC_SSA:
case VLC_FOURCC('t','1','4','0'):
break;
default:
var_Get( p_dec, "subsdec-align", &val );
p_sys->i_align = val.i_int;
- if( p_dec->fmt_in.i_codec == VLC_FOURCC('s','s','a',' ')
+ if( p_dec->fmt_in.i_codec == VLC_CODEC_SSA
&& var_CreateGetBool( p_dec, "subsdec-formatted" ) )
{
if( p_dec->fmt_in.i_extra > 0 )
/* Create a new subpicture region */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('T','E','X','T');
+ fmt.i_chroma = VLC_CODEC_TEXT;
fmt.i_aspect = 0;
fmt.i_width = fmt.i_height = 0;
fmt.i_x_offset = fmt.i_y_offset = 0;
}
/* Decode and format the subpicture unit */
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('s','s','a',' ') )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_SSA )
{
/* Normal text subs, easy markup */
p_spu->p_region->i_align = SUBPICTURE_ALIGN_BOTTOM | p_sys->i_align;
/* Create a new subpicture region */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('T','E','X','T');
+ fmt.i_chroma = VLC_CODEC_TEXT;
fmt.i_aspect = 0;
fmt.i_width = fmt.i_height = 0;
fmt.i_x_offset = fmt.i_y_offset = 0;
memset( &fmt_out, 0, sizeof( video_format_t));
fmt_in.i_chroma = type;
- fmt_out.i_chroma = VLC_FOURCC('Y','U','V','A');
+ fmt_out.i_chroma = VLC_CODEC_YUVA;
/* Find a suitable decoder module */
if( module_exists( "sdl_image" ) )
/* Display the feed's image */
memset( &fmt_out, 0, sizeof( video_format_t));
- fmt_out.i_chroma = VLC_FOURCC('Y','U','V','A');
+ fmt_out.i_chroma = VLC_CODEC_YUVA;
fmt_out.i_aspect = VOUT_ASPECT_FACTOR;
fmt_out.i_sar_num = fmt_out.i_sar_den = 1;
fmt_out.i_width =
msg_Err( p_dec, "cannot allocate SPU region" );
return NULL;
}
- assert( p_pic->format.i_chroma == VLC_FOURCC('Y','U','V','A') );
+ assert( p_pic->format.i_chroma == VLC_CODEC_YUVA );
/* FIXME the copy is probably not needed anymore */
picture_CopyPixels( p_region->p_picture, p_pic );
int i_u = ( ( -38 * i_r - 74 * i_g + 112 * i_b + 128 ) >> 8 ) + 128 ;
int i_v = ( ( 112 * i_r - 94 * i_g - 18 * i_b + 128 ) >> 8 ) + 128 ;
- assert( p_region->fmt.i_chroma == VLC_FOURCC('Y','U','V','A') );
+ assert( p_region->fmt.i_chroma == VLC_CODEC_YUVA );
for( unsigned int y = 0; y < p_region->fmt.i_height; y++ )
{
for( unsigned int x = 0; x < p_region->fmt.i_width; x++ )
switch( p_enc->fmt_out.i_codec )
{
- case VLC_FOURCC('s','u','b','t'):
+ case VLC_CODEC_SUBT:
if( ( p_enc->fmt_out.subs.psz_encoding != NULL )
&& strcasecmp( p_enc->fmt_out.subs.psz_encoding, "utf8" )
&& strcasecmp( p_enc->fmt_out.subs.psz_encoding, "UTF-8" ) )
p_region = p_spu->p_region;
if( ( p_region == NULL )
- || ( p_region->fmt.i_chroma != VLC_FOURCC('T','E','X','T') )
+ || ( p_region->fmt.i_chroma != VLC_CODEC_TEXT )
|| ( p_region->psz_text == NULL ) )
return NULL;
/* Create new subtitle region */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('Y','U','V','P');
+ fmt.i_chroma = VLC_CODEC_YUVP;
/**
The video on which the subtitle sits, is scaled, probably
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('t','a','r','k') )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_TARKIN )
{
return VLC_EGENERIC;
}
switch( p_sys->tarkin_stream->layer->desc.format )
{
case TARKIN_RGB24:
- i_chroma = VLC_FOURCC('R','V','2','4');
+ i_chroma = VLC_CODEC_RGB24;
i_stride = i_width * 3;
break;
case TARKIN_RGB32:
- i_chroma = VLC_FOURCC('R','V','3','2');
+ i_chroma = VLC_CODEC_RGB32;
i_stride = i_width * 4;
break;
case TARKIN_RGBA:
- i_chroma = VLC_FOURCC('R','G','B','A');
+ i_chroma = VLC_CODEC_RGBA;
i_stride = i_width * 4;
break;
default:
- i_chroma = VLC_FOURCC('I','4','2','0');
+ i_chroma = VLC_CODEC_I420;
i_stride = i_width;
break;
}
vlc_value_t val;
int i;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('t','e','l','x'))
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_TELETEXT)
{
return VLC_EGENERIC;
}
/* Create a new subpicture region */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('T','E','X','T');
+ fmt.i_chroma = VLC_CODEC_TEXT;
fmt.i_aspect = 0;
fmt.i_width = fmt.i_height = 0;
fmt.i_x_offset = fmt.i_y_offset = 0;
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('t','h','e','o') )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_THEORA )
{
return VLC_EGENERIC;
}
/* Set output properties */
p_dec->fmt_out.i_cat = VIDEO_ES;
- p_dec->fmt_out.i_codec = VLC_FOURCC('I','4','2','0');
+ p_dec->fmt_out.i_codec = VLC_CODEC_I420;
/* Set callbacks */
p_dec->pf_decode_video = (picture_t *(*)(decoder_t *, block_t **))
if( i_ret == VLC_SUCCESS )
{
p_dec->p_sys->b_packetizer = true;
- p_dec->fmt_out.i_codec = VLC_FOURCC( 't', 'h', 'e', 'o' );
+ p_dec->fmt_out.i_codec = VLC_CODEC_THEORA;
}
return i_ret;
switch( p_sys->ti.pixelformat )
{
case OC_PF_420:
- p_dec->fmt_out.i_codec = VLC_FOURCC( 'I','4','2','0' );
+ p_dec->fmt_out.i_codec = VLC_CODEC_I420;
break;
case OC_PF_422:
- p_dec->fmt_out.i_codec = VLC_FOURCC( 'I','4','2','2' );
+ p_dec->fmt_out.i_codec = VLC_CODEC_I422;
break;
case OC_PF_444:
- p_dec->fmt_out.i_codec = VLC_FOURCC( 'I','4','4','4' );
+ p_dec->fmt_out.i_codec = VLC_CODEC_I444;
break;
case OC_PF_RSVD:
default:
vlc_value_t val;
int i_quality, i;
- if( p_enc->fmt_out.i_codec != VLC_FOURCC('t','h','e','o') &&
+ if( p_enc->fmt_out.i_codec != VLC_CODEC_THEORA &&
!p_enc->b_force )
{
return VLC_EGENERIC;
p_enc->p_sys = p_sys;
p_enc->pf_encode_video = Encode;
- p_enc->fmt_in.i_codec = VLC_FOURCC('I','4','2','0');
- p_enc->fmt_out.i_codec = VLC_FOURCC('t','h','e','o');
+ p_enc->fmt_in.i_codec = VLC_CODEC_I420;
+ p_enc->fmt_out.i_codec = VLC_CODEC_THEORA;
config_ChainParse( p_enc, ENC_CFG_PREFIX, ppsz_enc_options, p_enc->p_cfg );
vlc_value_t val;
int i_frequency;
- if( p_enc->fmt_out.i_codec != VLC_FOURCC('m','p','g','a') &&
+ if( p_enc->fmt_out.i_codec != VLC_CODEC_MPGA &&
p_enc->fmt_out.i_codec != VLC_FOURCC('m','p','2','a') &&
p_enc->fmt_out.i_codec != VLC_FOURCC('m','p','2',' ') &&
!p_enc->b_force )
p_enc->fmt_in.i_codec = AOUT_FMT_S16_NE;
p_enc->fmt_out.i_cat = AUDIO_ES;
- p_enc->fmt_out.i_codec = VLC_FOURCC('m','p','g','a');
+ p_enc->fmt_out.i_codec = VLC_CODEC_MPGA;
config_ChainParse( p_enc, ENC_CFG_PREFIX, ppsz_enc_options, p_enc->p_cfg );
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('v','o','r','b') )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_VORBIS )
{
return VLC_EGENERIC;
}
/* Set output properties */
p_dec->fmt_out.i_cat = AUDIO_ES;
#ifdef MODULE_NAME_IS_tremor
- p_dec->fmt_out.i_codec = VLC_FOURCC('f','i','3','2');
+ p_dec->fmt_out.i_codec = VLC_CODEC_FI32;
#else
- p_dec->fmt_out.i_codec = VLC_FOURCC('f','l','3','2');
+ p_dec->fmt_out.i_codec = VLC_CODEC_FL32;
#endif
/* Set callbacks */
if( i_ret == VLC_SUCCESS )
{
p_dec->p_sys->b_packetizer = true;
- p_dec->fmt_out.i_codec = VLC_FOURCC('v','o','r','b');
+ p_dec->fmt_out.i_codec = VLC_CODEC_VORBIS;
}
return i_ret;
vlc_value_t val;
uint8_t *p_extra;
- if( p_enc->fmt_out.i_codec != VLC_FOURCC('v','o','r','b') &&
+ if( p_enc->fmt_out.i_codec != VLC_CODEC_VORBIS &&
!p_enc->b_force )
{
return VLC_EGENERIC;
p_enc->p_sys = p_sys;
p_enc->pf_encode_audio = Encode;
- p_enc->fmt_in.i_codec = VLC_FOURCC('f','l','3','2');
- p_enc->fmt_out.i_codec = VLC_FOURCC('v','o','r','b');
+ p_enc->fmt_in.i_codec = VLC_CODEC_FL32;
+ p_enc->fmt_out.i_codec = VLC_CODEC_VORBIS;
config_ChainParse( p_enc, ENC_CFG_PREFIX, ppsz_enc_options, p_enc->p_cfg );
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_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') &&
- p_dec->fmt_in.i_codec != VLC_FOURCC('W','M','A','2') )
+ p_dec->fmt_in.i_codec != VLC_CODEC_WMA2 )
{
return VLC_EGENERIC;
}
/* Set output properties */
p_dec->fmt_out.i_cat = AUDIO_ES;
- p_dec->fmt_out.i_codec = VLC_FOURCC('f','i','3','2');
+ p_dec->fmt_out.i_codec = VLC_CODEC_FI32;
p_dec->fmt_out.audio.i_bitspersample = p_dec->fmt_in.audio.i_bitspersample;
p_dec->fmt_out.audio.i_rate = p_dec->fmt_in.audio.i_rate;
wfx.bitspersample );
if( p_dec->fmt_in.i_codec == VLC_FOURCC('w','m','a','1')
- || p_dec->fmt_in.i_codec == VLC_FOURCC('W','M','A','1') )
+ || 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_FOURCC('W','M','A','2')
+ else if( p_dec->fmt_in.i_codec == VLC_CODEC_WMA2
|| p_dec->fmt_in.i_codec == VLC_FOURCC('w','m','a','2') )
wfx.codec_id = ASF_CODEC_ID_WMAV2;
x264_nal_t *nal;
int i, i_nal;
- if( p_enc->fmt_out.i_codec != VLC_FOURCC( 'h', '2', '6', '4' ) &&
+ if( p_enc->fmt_out.i_codec != VLC_CODEC_H264 &&
!p_enc->b_force )
{
return VLC_EGENERIC;
config_ChainParse( p_enc, SOUT_CFG_PREFIX, ppsz_sout_options, p_enc->p_cfg );
p_enc->fmt_out.i_cat = VIDEO_ES;
- p_enc->fmt_out.i_codec = VLC_FOURCC( 'h', '2', '6', '4' );
- p_enc->fmt_in.i_codec = VLC_FOURCC('I','4','2','0');
+ p_enc->fmt_out.i_codec = VLC_CODEC_H264;
+ p_enc->fmt_in.i_codec = VLC_CODEC_I420;
p_enc->pf_encode_video = Encode;
p_enc->pf_encode_audio = NULL;
#ifdef __GLIBC__
mtrace();
#endif
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('m','p','g','v') &&
+ 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_out.i_codec =
( p_sys->p_info->sequence->chroma_height <
p_sys->p_info->sequence->height ) ?
- VLC_FOURCC('I','4','2','0') : VLC_FOURCC('I','4','2','2');
+ VLC_CODEC_I420 : VLC_CODEC_I422;
#if 0
p_sys->f_wd_nb = fopen("/vlc/dec_nb", "w");
decoder_t *p_dec = (decoder_t *) p_this;
decoder_sys_t *p_sys = NULL;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('t','e','l','x') )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_TELETEXT )
return VLC_EGENERIC;
p_dec->pf_decode_sub = Decode;
/* Listen for keys */
var_AddCallback( p_dec->p_libvlc, "key-pressed", EventKey, p_dec );
- es_format_Init( &p_dec->fmt_out, SPU_ES, VLC_FOURCC( 's','p','u',' ' ) );
+ es_format_Init( &p_dec->fmt_out, SPU_ES, VLC_CODEC_SPU );
if( p_sys->b_text )
- p_dec->fmt_out.video.i_chroma = VLC_FOURCC('T','E','X','T');
+ p_dec->fmt_out.video.i_chroma = VLC_CODEC_TEXT;
else
- p_dec->fmt_out.video.i_chroma = VLC_FOURCC('R','G','B','A');
+ p_dec->fmt_out.video.i_chroma = VLC_CODEC_RGBA;
return VLC_SUCCESS;
}
}
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = b_text ? VLC_FOURCC('T','E','X','T') :
- VLC_FOURCC('R','G','B','A');
+ fmt.i_chroma = b_text ? VLC_CODEC_TEXT :
+ VLC_CODEC_RGBA;
fmt.i_aspect = b_text ? 0 : VOUT_ASPECT_FACTOR;
if( b_text )
{
{
unsigned int x, y;
- assert( fmt.i_chroma == VLC_FOURCC('R','G','B','A' ) );
+ assert( fmt.i_chroma == VLC_CODEC_RGBA );
/* Kludge since zvbi doesn't provide an option to specify opacity. */
for( y = 0; y < fmt.i_height; y++ )
es_format_Init( &fmt, AUDIO_ES, 0 );
i_format = GetWLE( &p_data[0] );
if( i_format == 0 )
- fmt.i_codec = VLC_FOURCC( 'a','5','2',' ');
+ fmt.i_codec = VLC_CODEC_A52;
else
wf_tag_to_fourcc( i_format, &fmt.i_codec, NULL );
fmt.audio.i_channels = GetWLE( &p_data[2] );
switch( GetDWBE( &hdr[8] ) )
{
case AU_ALAW_8: /* 8-bit ISDN A-law */
- p_sys->fmt.i_codec = VLC_FOURCC( 'a','l','a','w' );
+ p_sys->fmt.i_codec = VLC_CODEC_ALAW;
p_sys->fmt.audio.i_bitspersample = 8;
p_sys->fmt.audio.i_blockalign = 1 * p_sys->fmt.audio.i_channels;
i_cat = AU_CAT_PCM;
break;
case AU_MULAW_8: /* 8-bit ISDN u-law */
- p_sys->fmt.i_codec = VLC_FOURCC( 'u','l','a','w' );
+ p_sys->fmt.i_codec = VLC_CODEC_MULAW;
p_sys->fmt.audio.i_bitspersample = 8;
p_sys->fmt.audio.i_blockalign = 1 * p_sys->fmt.audio.i_channels;
i_cat = AU_CAT_PCM;
p_demux->p_sys = p_sys = malloc( sizeof( demux_sys_t ) );
/* */
- es_format_Init( &p_sys->fmt, VIDEO_ES, VLC_FOURCC('C','D','G', ' ' ) );
+ es_format_Init( &p_sys->fmt, VIDEO_ES, VLC_CODEC_CDG );
p_sys->fmt.video.i_width = 300-2*6;
p_sys->fmt.video.i_height = 216-2*12 ;
p_sys->i_dtsoffset = var_CreateGetInteger( p_demux, DEMUX_CFG_PREFIX DEMUX_DTSOFFSET );
/* Load the packetizer */
- es_format_Init( &fmt, VIDEO_ES, VLC_FOURCC( 'd','r','a','c' ) );
+ es_format_Init( &fmt, VIDEO_ES, VLC_CODEC_DIRAC );
p_sys->p_packetizer = demux_PacketizerNew( p_demux, &fmt, "dirac" );
if( !p_sys->p_packetizer )
{
/* Load the FLAC packetizer */
/* Store STREAMINFO for the decoder and packetizer */
p_streaminfo[4] |= 0x80; /* Fake this as the last metadata block */
- es_format_Init( &fmt, AUDIO_ES, VLC_FOURCC( 'f', 'l', 'a', 'c' ) );
+ es_format_Init( &fmt, AUDIO_ES, VLC_CODEC_FLAC );
fmt.i_extra = i_streaminfo;
fmt.p_extra = p_streaminfo;
!strcmp( sub->codecName(), "MPA-ROBUST" ) ||
!strcmp( sub->codecName(), "X-MP3-DRAFT-00" ) )
{
- tk->fmt.i_codec = VLC_FOURCC( 'm', 'p', 'g', 'a' );
+ tk->fmt.i_codec = VLC_CODEC_MPGA;
tk->fmt.audio.i_rate = 0;
}
else if( !strcmp( sub->codecName(), "AC3" ) )
{
- tk->fmt.i_codec = VLC_FOURCC( 'a', '5', '2', ' ' );
+ tk->fmt.i_codec = VLC_CODEC_A52;
tk->fmt.audio.i_rate = 0;
}
else if( !strcmp( sub->codecName(), "L16" ) )
}
else if( !strcmp( sub->codecName(), "PCMU" ) )
{
- tk->fmt.i_codec = VLC_FOURCC( 'u', 'l', 'a', 'w' );
+ tk->fmt.i_codec = VLC_CODEC_MULAW;
}
else if( !strcmp( sub->codecName(), "PCMA" ) )
{
- tk->fmt.i_codec = VLC_FOURCC( 'a', 'l', 'a', 'w' );
+ tk->fmt.i_codec = VLC_CODEC_ALAW;
}
else if( !strncmp( sub->codecName(), "G726", 4 ) )
{
- tk->fmt.i_codec = VLC_FOURCC( 'g', '7', '2', '6' );
+ tk->fmt.i_codec = VLC_CODEC_ADPCM_G726;
tk->fmt.audio.i_rate = 8000;
tk->fmt.audio.i_channels = 1;
if( !strcmp( sub->codecName()+5, "40" ) )
}
else if( !strcmp( sub->codecName(), "AMR" ) )
{
- tk->fmt.i_codec = VLC_FOURCC( 's', 'a', 'm', 'r' );
+ tk->fmt.i_codec = VLC_CODEC_AMR_NB;
}
else if( !strcmp( sub->codecName(), "AMR-WB" ) )
{
- tk->fmt.i_codec = VLC_FOURCC( 's', 'a', 'w', 'b' );
+ tk->fmt.i_codec = VLC_CODEC_AMR_WB;
}
else if( !strcmp( sub->codecName(), "MP4A-LATM" ) )
{
unsigned int i_extra;
uint8_t *p_extra;
- tk->fmt.i_codec = VLC_FOURCC( 'm', 'p', '4', 'a' );
+ tk->fmt.i_codec = VLC_CODEC_MP4A;
if( ( p_extra = parseStreamMuxConfigStr( sub->fmtp_config(),
i_extra ) ) )
unsigned int i_extra;
uint8_t *p_extra;
- tk->fmt.i_codec = VLC_FOURCC( 'm', 'p', '4', 'a' );
+ tk->fmt.i_codec = VLC_CODEC_MP4A;
if( ( p_extra = parseGeneralConfigStr( sub->fmtp_config(),
i_extra ) ) )
es_format_Init( &tk->fmt, VIDEO_ES, VLC_FOURCC('u','n','d','f') );
if( !strcmp( sub->codecName(), "MPV" ) )
{
- tk->fmt.i_codec = VLC_FOURCC( 'm', 'p', 'g', 'v' );
+ tk->fmt.i_codec = VLC_CODEC_MPGV;
}
else if( !strcmp( sub->codecName(), "H263" ) ||
!strcmp( sub->codecName(), "H263-1998" ) ||
!strcmp( sub->codecName(), "H263-2000" ) )
{
- tk->fmt.i_codec = VLC_FOURCC( 'H', '2', '6', '3' );
+ tk->fmt.i_codec = VLC_CODEC_H263;
}
else if( !strcmp( sub->codecName(), "H261" ) )
{
- tk->fmt.i_codec = VLC_FOURCC( 'H', '2', '6', '1' );
+ tk->fmt.i_codec = VLC_CODEC_H261;
}
else if( !strcmp( sub->codecName(), "H264" ) )
{
unsigned int i_extra = 0;
uint8_t *p_extra = NULL;
- tk->fmt.i_codec = VLC_FOURCC( 'h', '2', '6', '4' );
+ tk->fmt.i_codec = VLC_CODEC_H264;
tk->fmt.b_packetized = false;
if((p_extra=parseH264ConfigStr( sub->fmtp_spropparametersets(),
}
else if( !strcmp( sub->codecName(), "JPEG" ) )
{
- tk->fmt.i_codec = VLC_FOURCC( 'M', 'J', 'P', 'G' );
+ tk->fmt.i_codec = VLC_CODEC_MJPG;
}
else if( !strcmp( sub->codecName(), "MP4V-ES" ) )
{
unsigned int i_extra;
uint8_t *p_extra;
- tk->fmt.i_codec = VLC_FOURCC( 'm', 'p', '4', 'v' );
+ tk->fmt.i_codec = VLC_CODEC_MP4V;
if( ( p_extra = parseGeneralConfigStr( sub->fmtp_config(),
i_extra ) ) )
msg_Warn( p_demux, "buffer overflow" );
}
/* FIXME could i_size be > buffer size ? */
- if( tk->fmt.i_codec == VLC_FOURCC('s','a','m','r') ||
- tk->fmt.i_codec == VLC_FOURCC('s','a','w','b') )
+ if( tk->fmt.i_codec == VLC_CODEC_AMR_NB ||
+ tk->fmt.i_codec == VLC_CODEC_AMR_WB )
{
AMRAudioSource *amrSource = (AMRAudioSource*)tk->sub->readSource();
p_block->p_buffer[0] = amrSource->lastFrameHeader();
memcpy( p_block->p_buffer + 1, tk->p_buffer, i_size );
}
- else if( tk->fmt.i_codec == VLC_FOURCC('H','2','6','1') )
+ else if( tk->fmt.i_codec == VLC_CODEC_H261 )
{
H261VideoRTPSource *h261Source = (H261VideoRTPSource*)tk->sub->rtpSource();
uint32_t header = h261Source->lastSpecialHeader();
if( tk->sub->rtpSource()->curPacketMarkerBit() )
p_block->i_flags |= BLOCK_FLAG_END_OF_FRAME;
}
- else if( tk->fmt.i_codec == VLC_FOURCC('h','2','6','4') )
+ else if( tk->fmt.i_codec == VLC_CODEC_H264 )
{
if( (tk->p_buffer[0] & 0x1f) >= 24 )
msg_Warn( p_demux, "unsupported NAL type for H264" );
if( !tk->b_muxed )
{
/*FIXME: for h264 you should check that packetization-mode=1 in sdp-file */
- p_block->i_dts = ( tk->fmt.i_codec == VLC_FOURCC( 'm', 'p', 'g', 'v' ) ) ? 0 : i_pts;
+ p_block->i_dts = ( tk->fmt.i_codec == VLC_CODEC_MPGV ) ? 0 : i_pts;
}
if( tk->b_muxed )
}
es_format_Init( &p_sys->fmt, VIDEO_ES, 0 );
- p_sys->fmt.i_codec = VLC_FOURCC('m','j','p','g');
+ p_sys->fmt.i_codec = VLC_CODEC_MJPG;
p_sys->p_es = es_out_Add( p_demux->out, &p_sys->fmt );
return VLC_SUCCESS;
else if( !strcmp( tracks[i_track]->psz_codec, "V_MPEG1" ) ||
!strcmp( tracks[i_track]->psz_codec, "V_MPEG2" ) )
{
- tracks[i_track]->fmt.i_codec = VLC_FOURCC( 'm', 'p', 'g', 'v' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_MPGV;
}
else if( !strncmp( tracks[i_track]->psz_codec, "V_THEORA", 8 ) )
{
uint8_t *p_data = tracks[i_track]->p_extra_data;
- tracks[i_track]->fmt.i_codec = VLC_FOURCC( 't', 'h', 'e', 'o' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_THEORA;
if( tracks[i_track]->i_extra_data >= 4 ) {
if( p_data[0] == 2 ) {
int i = 1;
else if( !strncmp( tracks[i_track]->psz_codec, "V_REAL/RV", 9 ) )
{
if( !strcmp( p_tk->psz_codec, "V_REAL/RV10" ) )
- p_fmt->i_codec = VLC_FOURCC( 'R', 'V', '1', '0' );
+ p_fmt->i_codec = VLC_CODEC_RV10;
else if( !strcmp( p_tk->psz_codec, "V_REAL/RV20" ) )
- p_fmt->i_codec = VLC_FOURCC( 'R', 'V', '2', '0' );
+ p_fmt->i_codec = VLC_CODEC_RV20;
else if( !strcmp( p_tk->psz_codec, "V_REAL/RV30" ) )
- p_fmt->i_codec = VLC_FOURCC( 'R', 'V', '3', '0' );
+ p_fmt->i_codec = VLC_CODEC_RV30;
else if( !strcmp( p_tk->psz_codec, "V_REAL/RV40" ) )
- p_fmt->i_codec = VLC_FOURCC( 'R', 'V', '4', '0' );
+ p_fmt->i_codec = VLC_CODEC_RV40;
if( p_tk->i_extra_data > 26 )
{
}
else if( !strncmp( tracks[i_track]->psz_codec, "V_DIRAC", 7 ) )
{
- tracks[i_track]->fmt.i_codec = VLC_FOURCC('d', 'r', 'a', 'c' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_DIRAC;
}
else if( !strncmp( tracks[i_track]->psz_codec, "V_MPEG4", 7 ) )
{
if( !strcmp( tracks[i_track]->psz_codec, "V_MPEG4/MS/V3" ) )
{
- tracks[i_track]->fmt.i_codec = VLC_FOURCC( 'D', 'I', 'V', '3' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_DIV3;
}
else if( !strncmp( tracks[i_track]->psz_codec, "V_MPEG4/ISO", 11 ) )
{
if( !strcmp( tracks[i_track]->psz_codec, "V_MPEG4/ISO/AVC" ) )
tracks[i_track]->fmt.i_codec = VLC_FOURCC( 'a', 'v', 'c', '1' );
else
- tracks[i_track]->fmt.i_codec = VLC_FOURCC( 'm', 'p', '4', 'v' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_MP4V;
tracks[i_track]->fmt.i_extra = tracks[i_track]->i_extra_data;
tracks[i_track]->fmt.p_extra = malloc( tracks[i_track]->i_extra_data );
memcpy( tracks[i_track]->fmt.p_extra,tracks[i_track]->p_extra_data, tracks[i_track]->i_extra_data );
!strcmp( tracks[i_track]->psz_codec, "A_MPEG/L2" ) ||
!strcmp( tracks[i_track]->psz_codec, "A_MPEG/L1" ) )
{
- tracks[i_track]->fmt.i_codec = VLC_FOURCC( 'm', 'p', 'g', 'a' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_MPGA;
}
else if( !strcmp( tracks[i_track]->psz_codec, "A_AC3" ) )
{
- tracks[i_track]->fmt.i_codec = VLC_FOURCC( 'a', '5', '2', ' ' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_A52;
}
else if( !strcmp( tracks[i_track]->psz_codec, "A_EAC3" ) )
{
- tracks[i_track]->fmt.i_codec = VLC_FOURCC( 'e', 'a', 'c', '3' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_EAC3;
}
else if( !strcmp( tracks[i_track]->psz_codec, "A_DTS" ) )
{
- tracks[i_track]->fmt.i_codec = VLC_FOURCC( 'd', 't', 's', ' ' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_DTS;
}
else if( !strcmp( tracks[i_track]->psz_codec, "A_MLP" ) )
{
- tracks[i_track]->fmt.i_codec = VLC_FOURCC('m', 'l', 'p', ' ' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_MLP;
}
else if( !strcmp( tracks[i_track]->psz_codec, "A_TRUEHD" ) )
{
/* FIXME when more samples arrive */
- tracks[i_track]->fmt.i_codec = VLC_FOURCC('t', 'r', 'h', 'd' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_TRUEHD;
p_fmt->b_packetized = false;
}
else if( !strcmp( tracks[i_track]->psz_codec, "A_FLAC" ) )
{
- tracks[i_track]->fmt.i_codec = VLC_FOURCC( 'f', 'l', 'a', 'c' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_FLAC;
tracks[i_track]->fmt.i_extra = tracks[i_track]->i_extra_data;
tracks[i_track]->fmt.p_extra = malloc( tracks[i_track]->i_extra_data );
memcpy( tracks[i_track]->fmt.p_extra,tracks[i_track]->p_extra_data, tracks[i_track]->i_extra_data );
int i, i_offset = 1, i_size[3], i_extra;
uint8_t *p_extra;
- tracks[i_track]->fmt.i_codec = VLC_FOURCC( 'v', 'o', 'r', 'b' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_VORBIS;
/* Split the 3 headers */
if( tracks[i_track]->p_extra_data[0] != 0x02 )
16000, 12000, 11025, 8000, 7350, 0, 0, 0
};
- tracks[i_track]->fmt.i_codec = VLC_FOURCC( 'm', 'p', '4', 'a' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_MP4A;
/* create data for faad (MP4DecSpecificDescrTag)*/
if( !strcmp( &tracks[i_track]->psz_codec[12], "MAIN" ) )
}
else if( !strcmp( tracks[i_track]->psz_codec, "A_AAC" ) )
{
- tracks[i_track]->fmt.i_codec = VLC_FOURCC( 'm', 'p', '4', 'a' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_MP4A;
tracks[i_track]->fmt.i_extra = tracks[i_track]->i_extra_data;
tracks[i_track]->fmt.p_extra = malloc( tracks[i_track]->i_extra_data );
memcpy( tracks[i_track]->fmt.p_extra, tracks[i_track]->p_extra_data, tracks[i_track]->i_extra_data );
}
else if( !strcmp( tracks[i_track]->psz_codec, "A_WAVPACK4" ) )
{
- tracks[i_track]->fmt.i_codec = VLC_FOURCC( 'W', 'V', 'P', 'K' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_WAVPACK;
tracks[i_track]->fmt.i_extra = tracks[i_track]->i_extra_data;
tracks[i_track]->fmt.p_extra = malloc( tracks[i_track]->i_extra_data );
memcpy( tracks[i_track]->fmt.p_extra, tracks[i_track]->p_extra_data, tracks[i_track]->i_extra_data );
}
else if( !strcmp( tracks[i_track]->psz_codec, "A_TTA1" ) )
{
- tracks[i_track]->fmt.i_codec = VLC_FOURCC( 'T', 'T', 'A', '1' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_TTA;
tracks[i_track]->fmt.i_extra = tracks[i_track]->i_extra_data;
tracks[i_track]->fmt.p_extra = malloc( tracks[i_track]->i_extra_data );
memcpy( tracks[i_track]->fmt.p_extra, tracks[i_track]->p_extra_data, tracks[i_track]->i_extra_data );
int i, i_offset = 1, i_extra, num_headers, size_so_far;
uint8_t *p_extra;
- tracks[i_track]->fmt.i_codec = VLC_FOURCC( 'k', 'a', 't', 'e' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_KATE;
tracks[i_track]->fmt.subs.psz_encoding = strdup( "UTF-8" );
/* Recover the number of headers to expect */
}
else if( !strcmp( tracks[i_track]->psz_codec, "S_TEXT/ASCII" ) )
{
- p_fmt->i_codec = VLC_FOURCC( 's', 'u', 'b', 't' );
+ p_fmt->i_codec = VLC_CODEC_SUBT;
p_fmt->subs.psz_encoding = NULL; /* Is there a place where it is stored ? */
}
else if( !strcmp( tracks[i_track]->psz_codec, "S_TEXT/UTF8" ) )
{
- tracks[i_track]->fmt.i_codec = VLC_FOURCC( 's', 'u', 'b', 't' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_SUBT;
tracks[i_track]->fmt.subs.psz_encoding = strdup( "UTF-8" );
}
else if( !strcmp( tracks[i_track]->psz_codec, "S_TEXT/USF" ) )
!strcmp( tracks[i_track]->psz_codec, "S_SSA" ) ||
!strcmp( tracks[i_track]->psz_codec, "S_ASS" ))
{
- tracks[i_track]->fmt.i_codec = VLC_FOURCC( 's', 's', 'a', ' ' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_SSA;
tracks[i_track]->fmt.subs.psz_encoding = strdup( "UTF-8" );
if( tracks[i_track]->i_extra_data )
{
}
else if( !strcmp( tracks[i_track]->psz_codec, "S_VOBSUB" ) )
{
- tracks[i_track]->fmt.i_codec = VLC_FOURCC( 's','p','u',' ' );
+ tracks[i_track]->fmt.i_codec = VLC_CODEC_SPU;
if( tracks[i_track]->i_extra_data )
{
char *p_start;
}
else if( !strcmp( p_tk->psz_codec, "A_REAL/14_4" ) )
{
- p_fmt->i_codec = VLC_FOURCC( '1', '4', '_', '4');
+ p_fmt->i_codec = VLC_CODEC_RA_144;
p_fmt->audio.i_channels = 1;
p_fmt->audio.i_rate = 8000;
p_fmt->audio.i_blockalign = 0x14;
/* */
#ifndef MPC_FIXED_POINT
- es_format_Init( &fmt, AUDIO_ES, VLC_FOURCC( 'f', 'l', '3', '2' ) );
+ es_format_Init( &fmt, AUDIO_ES, VLC_CODEC_FL32 );
#else
# ifdef WORDS_BIGENDIAN
- es_format_Init( &fmt, AUDIO_ES, VLC_FOURCC( 's', '3', '2', 'b' ) );
+ es_format_Init( &fmt, AUDIO_ES, VLC_CODEC_S32B );
# else
- es_format_Init( &fmt, AUDIO_ES, VLC_FOURCC( 's', '3', '2', 'l' ) );
+ es_format_Init( &fmt, AUDIO_ES, VLC_CODEC_S32L );
# endif
#endif
fmt.audio.i_channels = p_sys->info.channels;
static int MlpInit( demux_t *p_demux );
static const codec_t p_codec[] = {
- { VLC_FOURCC( 'm', 'p', '4', 'a' ), false, "mp4 audio", AacProbe, AacInit },
- { VLC_FOURCC( 'm', 'p', 'g', 'a' ), false, "mpeg audio", MpgaProbe, MpgaInit },
- { VLC_FOURCC( 'a', '5', '2', ' ' ), true, "a52 audio", A52Probe, A52Init },
- { VLC_FOURCC( 'e', 'a', 'c', '3' ), true, "eac3 audio", EA52Probe, A52Init },
- { VLC_FOURCC( 'd', 't', 's', ' ' ), false, "dts audio", DtsProbe, DtsInit },
- { VLC_FOURCC( 'm', 'l', 'p', ' ' ), false, "mlp audio", MlpProbe, MlpInit },
+ { VLC_CODEC_MP4A, false, "mp4 audio", AacProbe, AacInit },
+ { VLC_CODEC_MPGA, false, "mpeg audio", MpgaProbe, MpgaInit },
+ { VLC_CODEC_A52, true, "a52 audio", A52Probe, A52Init },
+ { VLC_CODEC_EAC3, true, "eac3 audio", EA52Probe, A52Init },
+ { VLC_CODEC_DTS, false, "dts audio", DtsProbe, DtsInit },
+ { VLC_CODEC_MLP, false, "mlp audio", MlpProbe, MlpInit },
{ 0, false, NULL, NULL, NULL }
};
msg_Dbg( p_demux, "using %.2f fps", p_sys->f_fps );
/* Load the mpegvideo packetizer */
- es_format_Init( &fmt, VIDEO_ES, VLC_FOURCC( 'h', '2', '6', '4' ) );
+ es_format_Init( &fmt, VIDEO_ES, VLC_CODEC_H264 );
p_sys->p_packetizer = demux_PacketizerNew( p_demux, &fmt, "h264" );
if( !p_sys->p_packetizer )
{
p_sys->p_es = NULL;
/* Load the mpegvideo packetizer */
- es_format_Init( &fmt, VIDEO_ES, VLC_FOURCC( 'm', 'p', 'g', 'v' ) );
+ es_format_Init( &fmt, VIDEO_ES, VLC_CODEC_MPGV );
p_sys->p_packetizer = demux_PacketizerNew( p_demux, &fmt, "mpeg video" );
if( !p_sys->p_packetizer )
{
}
/* create the output */
- es_format_Init( &fmt, VIDEO_ES, VLC_FOURCC( 'm', 'p', 'g', 'v' ) );
+ es_format_Init( &fmt, VIDEO_ES, VLC_CODEC_MPGV );
p_sys->p_es = es_out_Add( p_demux->out, &fmt );
return VLC_SUCCESS;
{
es_format_t fmt;
- es_format_Init( &fmt, AUDIO_ES, VLC_FOURCC('m','p','g','a') );
+ es_format_Init( &fmt, AUDIO_ES, VLC_CODEC_MPGA );
fmt.audio.i_rate = p_sys->exh.i_audio_sample_rate;
fmt.audio.i_bitspersample = p_sys->exh.i_audio_bits_per_sample;
/* Read info from any secondary header packets, if there are any */
if( p_stream->i_secondary_header_packets > 0 )
{
- if( p_stream->fmt.i_codec == VLC_FOURCC('t','h','e','o') &&
+ if( p_stream->fmt.i_codec == VLC_CODEC_THEORA &&
oggpacket.bytes >= 7 &&
! memcmp( oggpacket.packet, "\x80theora", 7 ) )
{
Ogg_ReadTheoraHeader( p_stream, &oggpacket );
p_stream->i_secondary_header_packets = 0;
}
- else if( p_stream->fmt.i_codec == VLC_FOURCC('v','o','r','b') &&
+ else if( p_stream->fmt.i_codec == VLC_CODEC_VORBIS &&
oggpacket.bytes >= 7 &&
! memcmp( oggpacket.packet, "\x01vorbis", 7 ) )
{
Ogg_ReadVorbisHeader( p_stream, &oggpacket );
p_stream->i_secondary_header_packets = 0;
}
- else if( p_stream->fmt.i_codec == VLC_FOURCC('c','m','m','l') )
+ else if( p_stream->fmt.i_codec == VLC_CODEC_CMML )
{
p_stream->i_secondary_header_packets = 0;
}
}
/* An Ogg/vorbis packet contains an end date granulepos */
- if( p_stream->fmt.i_codec == VLC_FOURCC( 'v','o','r','b' ) ||
- p_stream->fmt.i_codec == VLC_FOURCC( 's','p','x',' ' ) ||
- p_stream->fmt.i_codec == VLC_FOURCC( 'f','l','a','c' ) )
+ if( p_stream->fmt.i_codec == VLC_CODEC_VORBIS ||
+ p_stream->fmt.i_codec == VLC_CODEC_SPEEX ||
+ p_stream->fmt.i_codec == VLC_CODEC_FLAC )
{
if( ogg_stream_packetout( &p_stream->os, &oggpacket ) > 0 )
{
/* Convert the granulepos into a pcr */
if( p_oggpacket->granulepos >= 0 )
{
- if( p_stream->fmt.i_codec == VLC_FOURCC( 't','h','e','o' ) ||
- p_stream->fmt.i_codec == VLC_FOURCC( 'k','a','t','e' ) )
+ if( p_stream->fmt.i_codec == VLC_CODEC_THEORA ||
+ p_stream->fmt.i_codec == VLC_CODEC_KATE )
{
ogg_int64_t iframe = p_oggpacket->granulepos >>
p_stream->i_granule_shift;
p_stream->i_pcr = ( iframe + pframe ) * INT64_C(1000000)
/ p_stream->f_rate;
}
- else if( p_stream->fmt.i_codec == VLC_FOURCC( 'd','r','a','c' ) )
+ else if( p_stream->fmt.i_codec == VLC_CODEC_DIRAC )
{
ogg_int64_t i_dts = p_oggpacket->granulepos >> 31;
/* NB, OggDirac granulepos values are in units of 2*picturerate */
return;
}
- if( p_stream->fmt.i_codec == VLC_FOURCC( 's','u','b','t' ) &&
+ if( p_stream->fmt.i_codec == VLC_CODEC_SUBT &&
p_oggpacket->packet[0] & PACKET_TYPE_BITS ) return;
/* Check the ES is selected */
p_stream->i_packets_backup++;
switch( p_stream->fmt.i_codec )
{
- case VLC_FOURCC( 'v','o','r','b' ):
- case VLC_FOURCC( 's','p','x',' ' ):
- case VLC_FOURCC( 't','h','e','o' ):
+ case VLC_CODEC_VORBIS:
+ case VLC_CODEC_SPEEX:
+ case VLC_CODEC_THEORA:
if( p_stream->i_packets_backup == 3 ) p_stream->b_force_backup = 0;
break;
- case VLC_FOURCC( 'f','l','a','c' ):
+ case VLC_CODEC_FLAC:
if( !p_stream->fmt.audio.i_rate && p_stream->i_packets_backup == 2 )
{
Ogg_ReadFlacHeader( p_demux, p_stream, p_oggpacket );
b_store_size = false;
break;
- case VLC_FOURCC( 'k','a','t','e' ):
+ case VLC_CODEC_KATE:
if( p_stream->i_packets_backup == 1)
b_store_num_headers = true;
if( p_stream->i_packets_backup == p_stream->i_kate_num_headers ) p_stream->b_force_backup = 0;
}
/* Convert the pcr into a pts */
- if( p_stream->fmt.i_codec == VLC_FOURCC( 'v','o','r','b' ) ||
- p_stream->fmt.i_codec == VLC_FOURCC( 's','p','x',' ' ) ||
- p_stream->fmt.i_codec == VLC_FOURCC( 'f','l','a','c' ) )
+ if( p_stream->fmt.i_codec == VLC_CODEC_VORBIS ||
+ p_stream->fmt.i_codec == VLC_CODEC_SPEEX ||
+ p_stream->fmt.i_codec == VLC_CODEC_FLAC )
{
if( p_stream->i_pcr >= 0 )
{
}
}
- if( p_stream->fmt.i_codec != VLC_FOURCC( 'v','o','r','b' ) &&
- p_stream->fmt.i_codec != VLC_FOURCC( 's','p','x',' ' ) &&
- p_stream->fmt.i_codec != VLC_FOURCC( 'f','l','a','c' ) &&
+ if( p_stream->fmt.i_codec != VLC_CODEC_VORBIS &&
+ p_stream->fmt.i_codec != VLC_CODEC_SPEEX &&
+ p_stream->fmt.i_codec != VLC_CODEC_FLAC &&
p_stream->i_pcr >= 0 )
{
p_stream->i_previous_pcr = p_stream->i_pcr;
p_block->i_dts = p_block->i_pts = i_pts;
p_block->i_length = 0;
}
- else if( p_stream->fmt.i_codec == VLC_FOURCC( 't','h','e','o' ) )
+ else if( p_stream->fmt.i_codec == VLC_CODEC_THEORA )
p_block->i_dts = p_block->i_pts = i_pts;
- else if( p_stream->fmt.i_codec == VLC_FOURCC( 'd','r','a','c' ) )
+ else if( p_stream->fmt.i_codec == VLC_CODEC_DIRAC )
{
ogg_int64_t dts = p_oggpacket->granulepos >> 31;
ogg_int64_t delay = (p_oggpacket->granulepos >> 9) & 0x1fff;
p_block->i_pts = 0;
}
- if( p_stream->fmt.i_codec != VLC_FOURCC( 'v','o','r','b' ) &&
- p_stream->fmt.i_codec != VLC_FOURCC( 's','p','x',' ' ) &&
- p_stream->fmt.i_codec != VLC_FOURCC( 'f','l','a','c' ) &&
- p_stream->fmt.i_codec != VLC_FOURCC( 't','a','r','k' ) &&
- p_stream->fmt.i_codec != VLC_FOURCC( 't','h','e','o' ) &&
- p_stream->fmt.i_codec != VLC_FOURCC( 'c','m','m','l' ) &&
- p_stream->fmt.i_codec != VLC_FOURCC( 'd','r','a','c' ) &&
- p_stream->fmt.i_codec != VLC_FOURCC( 'k','a','t','e' ) )
+ if( p_stream->fmt.i_codec != VLC_CODEC_VORBIS &&
+ p_stream->fmt.i_codec != VLC_CODEC_SPEEX &&
+ p_stream->fmt.i_codec != VLC_CODEC_FLAC &&
+ p_stream->fmt.i_codec != VLC_CODEC_TARKIN &&
+ p_stream->fmt.i_codec != VLC_CODEC_THEORA &&
+ p_stream->fmt.i_codec != VLC_CODEC_CMML &&
+ p_stream->fmt.i_codec != VLC_CODEC_DIRAC &&
+ p_stream->fmt.i_codec != VLC_CODEC_KATE )
{
/* We remove the header from the packet */
i_header_len = (*p_oggpacket->packet & PACKET_LEN_BITS01) >> 6;
i_header_len |= (*p_oggpacket->packet & PACKET_LEN_BITS2) << 1;
- if( p_stream->fmt.i_codec == VLC_FOURCC( 's','u','b','t' ))
+ if( p_stream->fmt.i_codec == VLC_CODEC_SUBT)
{
/* But with subtitles we need to retrieve the duration first */
int i, lenbytes = 0;
p_block->i_buffer = 0;
}
- if( p_stream->fmt.i_codec == VLC_FOURCC( 't','a','r','k' ) )
+ if( p_stream->fmt.i_codec == VLC_CODEC_TARKIN )
{
/* FIXME: the biggest hack I've ever done */
msg_Warn( p_demux, "tarkin pts: %"PRId64", granule: %"PRId64,
p_stream->b_force_backup = 1;
p_stream->fmt.i_cat = AUDIO_ES;
- p_stream->fmt.i_codec = VLC_FOURCC( 'f','l','a','c' );
+ p_stream->fmt.i_codec = VLC_CODEC_FLAC;
}
/* Check for Flac header (>= version 1.1.1) */
else if( oggpacket.bytes >= 13 && oggpacket.packet[0] ==0x7F &&
p_stream->b_force_backup = 1;
p_stream->fmt.i_cat = AUDIO_ES;
- p_stream->fmt.i_codec = VLC_FOURCC( 'f','l','a','c' );
+ p_stream->fmt.i_codec = VLC_CODEC_FLAC;
oggpacket.packet += 13; oggpacket.bytes -= 13;
Ogg_ReadFlacHeader( p_demux, p_stream, &oggpacket );
}
msg_Dbg( p_demux, "found tarkin header" );
p_stream->fmt.i_cat = VIDEO_ES;
- p_stream->fmt.i_codec = VLC_FOURCC( 't','a','r','k' );
+ p_stream->fmt.i_codec = VLC_CODEC_TARKIN;
/* Cheat and get additionnal info ;) */
oggpack_readinit( &opb, oggpacket.packet, oggpacket.bytes);
msg_Dbg( p_demux, "found text subtitles header" );
p_stream->fmt.i_cat = SPU_ES;
- p_stream->fmt.i_codec = VLC_FOURCC('s','u','b','t');
+ p_stream->fmt.i_codec = VLC_CODEC_SUBT;
p_stream->f_rate = 1000; /* granulepos is in millisec */
}
else
if( !p_stream->p_es )
{
/* Better be safe than sorry when possible with ogm */
- if( p_stream->fmt.i_codec == VLC_FOURCC( 'm', 'p', 'g', 'a' ) ||
- p_stream->fmt.i_codec == VLC_FOURCC( 'a', '5', '2', ' ' ) )
+ if( p_stream->fmt.i_codec == VLC_CODEC_MPGA ||
+ p_stream->fmt.i_codec == VLC_CODEC_A52 )
p_stream->fmt.b_packetized = false;
p_stream->p_es = es_out_Add( p_demux->out, &p_stream->fmt );
}
// TODO: something to do here ?
- if( p_stream->fmt.i_codec == VLC_FOURCC('c','m','m','l') )
+ if( p_stream->fmt.i_codec == VLC_CODEC_CMML )
{
/* Set the CMML stream active */
es_out_Control( p_demux->out, ES_OUT_SET_ES, p_stream->p_es );
return true;
/* Only vorbis is supported */
- if( p_stream->fmt.i_codec == VLC_FOURCC( 'v','o','r','b' ) )
+ if( p_stream->fmt.i_codec == VLC_CODEC_VORBIS )
b_compatible = Ogg_IsVorbisFormatCompatible( &p_stream->fmt, &p_stream->fmt_old );
if( !b_compatible )
switch( i_codec )
{
/* 3 headers with the 2° one being the comments */
- case VLC_FOURCC( 'v','o','r','b' ):
+ case VLC_CODEC_VORBIS:
Ogg_ExtractXiphMeta( p_demux, p_headers, i_headers, 1+6, false );
break;
- case VLC_FOURCC( 't','h','e','o' ):
+ case VLC_CODEC_THEORA:
Ogg_ExtractXiphMeta( p_demux, p_headers, i_headers, 1+6, false );
break;
- case VLC_FOURCC( 's','p','x',' ' ):
+ case VLC_CODEC_SPEEX:
Ogg_ExtractXiphMeta( p_demux, p_headers, i_headers, 0, false );
break;
/* N headers with the 2° one being the comments */
- case VLC_FOURCC( 'k','a','t','e' ):
+ case VLC_CODEC_KATE:
/* 1 byte for header type, 7 bit for magic, 1 reserved zero byte */
Ogg_ExtractXiphMeta( p_demux, p_headers, i_headers, 1+7+1, true );
break;
/* TODO */
- case VLC_FOURCC( 'f','l','a','c' ):
+ case VLC_CODEC_FLAC:
msg_Warn( p_demux, "Ogg_ExtractMeta does not support %4.4s", (const char*)&i_codec );
break;
/* No meta data */
- case VLC_FOURCC( 'c','m','m','l' ): /* CMML is XML text, doesn't have Vorbis comments */
- case VLC_FOURCC( 'd','r','a','c' ):
+ case VLC_CODEC_CMML: /* CMML is XML text, doesn't have Vorbis comments */
+ case VLC_CODEC_DIRAC:
default:
break;
}
int i_keyframe_frequency_force;
p_stream->fmt.i_cat = VIDEO_ES;
- p_stream->fmt.i_codec = VLC_FOURCC( 't','h','e','o' );
+ p_stream->fmt.i_codec = VLC_CODEC_THEORA;
/* Signal that we want to keep a backup of the theora
* stream headers. They will be used when switching between
oggpack_buffer opb;
p_stream->fmt.i_cat = AUDIO_ES;
- p_stream->fmt.i_codec = VLC_FOURCC( 'v','o','r','b' );
+ p_stream->fmt.i_codec = VLC_CODEC_VORBIS;
/* Signal that we want to keep a backup of the vorbis
* stream headers. They will be used when switching between
oggpack_buffer opb;
p_stream->fmt.i_cat = AUDIO_ES;
- p_stream->fmt.i_codec = VLC_FOURCC( 's','p','x',' ' );
+ p_stream->fmt.i_codec = VLC_CODEC_SPEEX;
/* Signal that we want to keep a backup of the speex
* stream headers. They will be used when switching between
char *psz_desc;
p_stream->fmt.i_cat = SPU_ES;
- p_stream->fmt.i_codec = VLC_FOURCC( 'k','a','t','e' );
+ p_stream->fmt.i_codec = VLC_CODEC_KATE;
/* Signal that we want to keep a backup of the kate
* stream headers. They will be used when switching between
else if( !strncmp(content_type_string, "audio/x-vorbis", 14) )
{
p_stream->fmt.i_cat = AUDIO_ES;
- p_stream->fmt.i_codec = VLC_FOURCC( 'v','o','r','b' );
+ p_stream->fmt.i_codec = VLC_CODEC_VORBIS;
p_stream->b_force_backup = 1;
}
else if( !strncmp(content_type_string, "audio/x-speex", 14) )
{
p_stream->fmt.i_cat = AUDIO_ES;
- p_stream->fmt.i_codec = VLC_FOURCC( 's','p','x',' ' );
+ p_stream->fmt.i_codec = VLC_CODEC_SPEEX;
p_stream->b_force_backup = 1;
}
else if( !strncmp(content_type_string, "video/x-theora", 14) )
{
p_stream->fmt.i_cat = VIDEO_ES;
- p_stream->fmt.i_codec = VLC_FOURCC( 't','h','e','o' );
+ p_stream->fmt.i_codec = VLC_CODEC_THEORA;
p_stream->b_force_backup = 1;
}
{
/* n.b. MPEG streams are unsupported right now */
p_stream->fmt.i_cat = VIDEO_ES;
- p_stream->fmt.i_codec = VLC_FOURCC( 'm','p','g','v' );
+ p_stream->fmt.i_codec = VLC_CODEC_MPGV;
}
else if( !strncmp(content_type_string, "text/x-cmml", 11) )
{
ogg_stream_packetout( &p_stream->os, p_oggpacket );
p_stream->fmt.i_cat = SPU_ES;
- p_stream->fmt.i_codec = VLC_FOURCC( 'c','m','m','l' );
+ p_stream->fmt.i_codec = VLC_CODEC_CMML;
}
}
}
/* probably is an ogg dirac es */
p_stream->fmt.i_cat = VIDEO_ES;
- p_stream->fmt.i_codec = VLC_FOURCC( 'd','r','a','c' );
+ p_stream->fmt.i_codec = VLC_CODEC_DIRAC;
return true;
}
if( tk->b_seen && tk->es &&
(
#ifdef ZVBI_COMPILED /* FIXME!! */
- tk->fmt.i_codec == VLC_FOURCC('t','e','l','x') ||
+ tk->fmt.i_codec == VLC_CODEC_TELETEXT ||
#endif
!ps_pkt_parse_pes( p_pkt, tk->i_skip ) ) )
{
{
if( ( i_id&0xf8 ) == 0x88 || (i_id&0xf8) == 0x98 )
{
- es_format_Init( &tk->fmt, AUDIO_ES, VLC_FOURCC('d','t','s',' ') );
+ es_format_Init( &tk->fmt, AUDIO_ES, VLC_CODEC_DTS );
tk->i_skip = 4;
}
else if( ( i_id&0xf0 ) == 0x80
|| (i_id&0xf0) == 0xc0 ) /* AC-3, Can also be used for DD+/E-AC-3 */
{
- es_format_Init( &tk->fmt, AUDIO_ES, VLC_FOURCC('a','5','2',' ') );
+ es_format_Init( &tk->fmt, AUDIO_ES, VLC_CODEC_A52 );
tk->i_skip = 4;
}
else if( (i_id&0xf0) == 0xb0 )
{
- es_format_Init( &tk->fmt, AUDIO_ES, VLC_FOURCC('m','l','p',' ') );
+ es_format_Init( &tk->fmt, AUDIO_ES, VLC_CODEC_MLP );
/* FIXME / untested ... no known decoder (at least not in VLC/ffmpeg) */
}
else if( ( i_id&0xe0 ) == 0x20 )
{
- es_format_Init( &tk->fmt, SPU_ES, VLC_FOURCC('s','p','u',' ') );
+ es_format_Init( &tk->fmt, SPU_ES, VLC_CODEC_SPU );
tk->i_skip = 1;
}
else if( ( i_id&0xf0 ) == 0xa0 )
{
- es_format_Init( &tk->fmt, AUDIO_ES, VLC_FOURCC('l','p','c','m') );
+ es_format_Init( &tk->fmt, AUDIO_ES, VLC_CODEC_DVD_LPCM );
tk->i_skip = 1;
}
else if( ( i_id&0xff ) == 0x70 )
}
else if( ( i_id&0xff ) == 0x10 )
{
- es_format_Init( &tk->fmt, SPU_ES, VLC_FOURCC('t','e','l','x') );
+ es_format_Init( &tk->fmt, SPU_ES, VLC_CODEC_TELETEXT );
}
else
{
uint8_t i_sub_id = i_id & 0xff;
if( i_sub_id >= 0x55 && i_sub_id <= 0x5f )
{
- es_format_Init( &tk->fmt, VIDEO_ES, VLC_FOURCC('W','V','C','1') );
+ es_format_Init( &tk->fmt, VIDEO_ES, VLC_CODEC_VC1 );
}
else
{
if( (i_id&0xf0) == 0xe0 && i_type == 0x1b )
{
- es_format_Init( &tk->fmt, VIDEO_ES, VLC_FOURCC('h','2','6','4') );
+ es_format_Init( &tk->fmt, VIDEO_ES, VLC_CODEC_H264 );
}
else if( (i_id&0xf0) == 0xe0 && i_type == 0x10 )
{
- es_format_Init( &tk->fmt, VIDEO_ES, VLC_FOURCC('m','p','4','v') );
+ es_format_Init( &tk->fmt, VIDEO_ES, VLC_CODEC_MP4V );
}
else if( (i_id&0xf0) == 0xe0 && i_type == 0x02 )
{
- es_format_Init( &tk->fmt, VIDEO_ES, VLC_FOURCC('m','p','g','v') );
+ es_format_Init( &tk->fmt, VIDEO_ES, VLC_CODEC_MPGV );
}
else if( ( i_id&0xe0 ) == 0xc0 && i_type == 0x0f )
{
- es_format_Init( &tk->fmt, AUDIO_ES, VLC_FOURCC('m','p','4','a') );
+ es_format_Init( &tk->fmt, AUDIO_ES, VLC_CODEC_MP4A );
}
else if( ( i_id&0xe0 ) == 0xc0 && i_type == 0x11 )
{
- es_format_Init( &tk->fmt, AUDIO_ES, VLC_FOURCC('m','p','4','a') );
+ es_format_Init( &tk->fmt, AUDIO_ES, VLC_CODEC_MP4A );
}
else if( ( i_id&0xe0 ) == 0xc0 && i_type == 0x03 )
{
- es_format_Init( &tk->fmt, AUDIO_ES, VLC_FOURCC('m','p','g','a') );
+ es_format_Init( &tk->fmt, AUDIO_ES, VLC_CODEC_MPGA );
}
if( tk->fmt.i_cat == UNKNOWN_ES && ( i_id&0xf0 ) == 0xe0 )
{
- es_format_Init( &tk->fmt, VIDEO_ES, VLC_FOURCC('m','p','g','v') );
+ es_format_Init( &tk->fmt, VIDEO_ES, VLC_CODEC_MPGV );
}
else if( tk->fmt.i_cat == UNKNOWN_ES && ( i_id&0xe0 ) == 0xc0 )
{
- es_format_Init( &tk->fmt, AUDIO_ES, VLC_FOURCC('m','p','g','a') );
+ es_format_Init( &tk->fmt, AUDIO_ES, VLC_CODEC_MPGA );
}
else if( tk->fmt.i_cat == UNKNOWN_ES ) return VLC_EGENERIC;
}
p_demux->p_sys = p_sys = malloc( sizeof( demux_sys_t ) );
/* Register one audio and one video stream */
- es_format_Init( &fmt, AUDIO_ES, VLC_FOURCC( 'm', 'p', 'g', 'a' ) );
+ es_format_Init( &fmt, AUDIO_ES, VLC_CODEC_MPGA );
p_sys->p_audio = es_out_Add( p_demux->out, &fmt );
- es_format_Init( &fmt, VIDEO_ES, VLC_FOURCC( 'm', 'p', 'g', 'v' ) );
+ es_format_Init( &fmt, VIDEO_ES, VLC_CODEC_MPGV );
p_sys->p_video = es_out_Add( p_demux->out, &fmt );
p_sys->i_vc = -1;
p_sys->i_bitrate = 0;
- es_format_Init( &p_sys->fmt_video, VIDEO_ES, VLC_FOURCC('d','v','s','d') );
+ es_format_Init( &p_sys->fmt_video, VIDEO_ES, VLC_CODEC_DV );
p_sys->fmt_video.video.i_width = 720;
p_sys->fmt_video.video.i_height= dv_header.dsf ? 576 : 480;;
p_peek = p_peek_backup + 80*6+80*16*3 + 3; /* beginning of AAUX pack */
if( *p_peek == 0x50 )
{
- es_format_Init( &p_sys->fmt_audio, AUDIO_ES,
- VLC_FOURCC('a','r','a','w') );
+ /* 12 bits non-linear will be converted to 16 bits linear */
+ es_format_Init( &p_sys->fmt_audio, AUDIO_ES, VLC_CODEC_S16L );
+ p_sys->fmt_audio.audio.i_bitspersample = 16;
p_sys->fmt_audio.audio.i_channels = 2;
switch( (p_peek[4] >> 3) & 0x07 )
{
break;
}
- /* 12 bits non-linear will be converted to 16 bits linear */
- p_sys->fmt_audio.audio.i_bitspersample = 16;
-
p_sys->p_es_audio = es_out_Add( p_demux->out, &p_sys->fmt_audio );
}
static const struct preset_t p_presets[] =
{
- { "sqcif", 128, 96, 30000, 1001, 4,3, VLC_FOURCC('Y','V','1','2') },
- { "qcif", 176, 144, 30000, 1001, 4,3, VLC_FOURCC('Y','V','1','2') },
- { "cif", 352, 288, 30000, 1001, 4,3, VLC_FOURCC('Y','V','1','2') },
- { "4cif", 704, 576, 30000, 1001, 4,3, VLC_FOURCC('Y','V','1','2') },
- { "16cif", 1408, 1152, 30000, 1001, 4,3, VLC_FOURCC('Y','V','1','2') },
- { "yuv", 176, 144, 25, 1, 4,3, VLC_FOURCC('Y','V','1','2') },
+ { "sqcif", 128, 96, 30000, 1001, 4,3, VLC_CODEC_YV12 },
+ { "qcif", 176, 144, 30000, 1001, 4,3, VLC_CODEC_YV12 },
+ { "cif", 352, 288, 30000, 1001, 4,3, VLC_CODEC_YV12 },
+ { "4cif", 704, 576, 30000, 1001, 4,3, VLC_CODEC_YV12 },
+ { "16cif", 1408, 1152, 30000, 1001, 4,3, VLC_CODEC_YV12 },
+ { "yuv", 176, 144, 25, 1, 4,3, VLC_CODEC_YV12 },
{ NULL, 0, 0, 0, 0, 0,0, 0 }
};
{
static const struct { const char *psz_name; vlc_fourcc_t i_fcc; } formats[] =
{
- { "420jpeg", VLC_FOURCC('I','4','2','0') },
- { "420paldv", VLC_FOURCC('I','4','2','0') },
- { "420", VLC_FOURCC('I','4','2','0') },
- { "422", VLC_FOURCC('I','4','2','2') },
- { "444", VLC_FOURCC('I','4','4','4') },
- { "mono", VLC_FOURCC('G','R','E','Y') },
+ { "420jpeg", VLC_CODEC_I420 },
+ { "420paldv", VLC_CODEC_I420 },
+ { "420", VLC_CODEC_I420 },
+ { "422", VLC_CODEC_I422 },
+ { "444", VLC_CODEC_I444 },
+ { "mono", VLC_CODEC_GREY },
{ NULL, 0 }
};
bool b_found = false;
}
es_format_t fmt;
- es_format_Init (&fmt, AUDIO_ES, VLC_FOURCC('M', 'I', 'D', 'I'));
+ es_format_Init (&fmt, AUDIO_ES, VLC_CODEC_MIDI);
fmt.audio.i_channels = 2;
fmt.audio.i_original_channels = fmt.audio.i_physical_channels =
AOUT_CHAN_LEFT | AOUT_CHAN_RIGHT;
p_sys->i_type == SUB_TYPE_SSA2_4 ||
p_sys->i_type == SUB_TYPE_ASS )
{
- es_format_Init( &fmt, SPU_ES, VLC_FOURCC( 's','s','a',' ' ) );
+ es_format_Init( &fmt, SPU_ES, VLC_CODEC_SSA );
}
else
{
- es_format_Init( &fmt, SPU_ES, VLC_FOURCC( 's','u','b','t' ) );
+ es_format_Init( &fmt, SPU_ES, VLC_CODEC_SUBT );
}
if( p_sys->psz_header != NULL )
{
/* *** add subtitle ES *** */
if( p_detect->fmt->target == ASAI_TARGET_SSA )
{
- es_format_Init( &fmt, SPU_ES, VLC_FOURCC( 's','s','a',' ' ) );
+ es_format_Init( &fmt, SPU_ES, VLC_CODEC_SSA );
}
else
{
- es_format_Init( &fmt, SPU_ES, VLC_FOURCC( 's','u','b','t' ) );
+ es_format_Init( &fmt, SPU_ES, VLC_CODEC_SUBT );
}
p_sys->es = es_out_Add( p_demux->out, &fmt );
{
i_skip += 1;
}
- else if( pid->es->fmt.i_codec == VLC_FOURCC( 's', 'u', 'b', 't' ) &&
+ else if( pid->es->fmt.i_codec == VLC_CODEC_SUBT &&
pid->es->p_mpeg4desc )
{
decoder_config_descriptor_t *dcd = &pid->es->p_mpeg4desc->dec_descr;
i_skip += 2;
}
#ifdef ZVBI_COMPILED
- else if( pid->es->fmt.i_codec == VLC_FOURCC( 't', 'e', 'l', 'x' ) )
+ else if( pid->es->fmt.i_codec == VLC_CODEC_TELETEXT )
i_skip = 0; /*hack for zvbi support */
#endif
/* skip header */
p_pes->i_length = i_length * 100 / 9;
p_block = block_ChainGather( p_pes );
- if( pid->es->fmt.i_codec == VLC_FOURCC( 's', 'u', 'b', 't' ) )
+ if( pid->es->fmt.i_codec == VLC_CODEC_SUBT )
{
if( i_pes_size > 0 && p_block->i_buffer > i_pes_size )
{
case 0x01: /* MPEG-1 video */
case 0x02: /* MPEG-2 video */
case 0x80: /* MPEG-2 MOTO video */
- es_format_Init( fmt, VIDEO_ES, VLC_FOURCC( 'm', 'p', 'g', 'v' ) );
+ es_format_Init( fmt, VIDEO_ES, VLC_CODEC_MPGV );
break;
case 0x03: /* MPEG-1 audio */
case 0x04: /* MPEG-2 audio */
- es_format_Init( fmt, AUDIO_ES, VLC_FOURCC( 'm', 'p', 'g', 'a' ) );
+ es_format_Init( fmt, AUDIO_ES, VLC_CODEC_MPGA );
break;
case 0x11: /* MPEG4 (audio) */
case 0x0f: /* ISO/IEC 13818-7 Audio with ADTS transport syntax */
- es_format_Init( fmt, AUDIO_ES, VLC_FOURCC( 'm', 'p', '4', 'a' ) );
+ es_format_Init( fmt, AUDIO_ES, VLC_CODEC_MP4A );
break;
case 0x10: /* MPEG4 (video) */
- es_format_Init( fmt, VIDEO_ES, VLC_FOURCC( 'm', 'p', '4', 'v' ) );
+ es_format_Init( fmt, VIDEO_ES, VLC_CODEC_MP4V );
pid->es->b_gather = true;
break;
case 0x1B: /* H264 <- check transport syntax/needed descriptor */
- es_format_Init( fmt, VIDEO_ES, VLC_FOURCC( 'h', '2', '6', '4' ) );
+ es_format_Init( fmt, VIDEO_ES, VLC_CODEC_H264 );
break;
case 0x81: /* A52 (audio) */
- es_format_Init( fmt, AUDIO_ES, VLC_FOURCC( 'a', '5', '2', ' ' ) );
+ es_format_Init( fmt, AUDIO_ES, VLC_CODEC_A52 );
break;
case 0x82: /* DVD_SPU (sub) */
- es_format_Init( fmt, SPU_ES, VLC_FOURCC( 's', 'p', 'u', ' ' ) );
+ es_format_Init( fmt, SPU_ES, VLC_CODEC_SPU );
break;
case 0x83: /* LPCM (audio) */
- es_format_Init( fmt, AUDIO_ES, VLC_FOURCC( 'l', 'p', 'c', 'm' ) );
+ es_format_Init( fmt, AUDIO_ES, VLC_CODEC_DVD_LPCM );
break;
case 0x84: /* SDDS (audio) */
- es_format_Init( fmt, AUDIO_ES, VLC_FOURCC( 's', 'd', 'd', 's' ) );
+ es_format_Init( fmt, AUDIO_ES, VLC_CODEC_SDDS );
break;
case 0x85: /* DTS (audio) */
- es_format_Init( fmt, AUDIO_ES, VLC_FOURCC( 'd', 't', 's', ' ' ) );
+ es_format_Init( fmt, AUDIO_ES, VLC_CODEC_DTS );
break;
case 0x91: /* A52 vls (audio) */
{
case 0x0B: /* mpeg4 sub */
p_fmt->i_cat = SPU_ES;
- p_fmt->i_codec = VLC_FOURCC('s','u','b','t');
+ p_fmt->i_codec = VLC_CODEC_SUBT;
break;
case 0x20: /* mpeg4 */
- p_fmt->i_codec = VLC_FOURCC('m','p','4','v');
+ p_fmt->i_codec = VLC_CODEC_MP4V;
break;
case 0x21: /* h264 */
- p_fmt->i_codec = VLC_FOURCC('h','2','6','4');
+ p_fmt->i_codec = VLC_CODEC_H264;
break;
case 0x60:
case 0x61:
case 0x63:
case 0x64:
case 0x65: /* mpeg2 */
- p_fmt->i_codec = VLC_FOURCC( 'm','p','g','v' );
+ p_fmt->i_codec = VLC_CODEC_MPGV;
break;
case 0x6a: /* mpeg1 */
- p_fmt->i_codec = VLC_FOURCC( 'm','p','g','v' );
+ p_fmt->i_codec = VLC_CODEC_MPGV;
break;
case 0x6c: /* mpeg1 */
- p_fmt->i_codec = VLC_FOURCC( 'j','p','e','g' );
+ p_fmt->i_codec = VLC_CODEC_JPEG;
break;
default:
p_fmt->i_cat = UNKNOWN_ES;
switch( dcd->i_objectTypeIndication )
{
case 0x40: /* mpeg4 */
- p_fmt->i_codec = VLC_FOURCC('m','p','4','a');
+ p_fmt->i_codec = VLC_CODEC_MP4A;
break;
case 0x66:
case 0x67:
case 0x68: /* mpeg2 aac */
- p_fmt->i_codec = VLC_FOURCC('m','p','4','a');
+ p_fmt->i_codec = VLC_CODEC_MP4A;
break;
case 0x69: /* mpeg2 */
- p_fmt->i_codec = VLC_FOURCC('m','p','g','a');
+ p_fmt->i_codec = VLC_CODEC_MPGA;
break;
case 0x6b: /* mpeg1 */
- p_fmt->i_codec = VLC_FOURCC('m','p','g','a');
+ p_fmt->i_codec = VLC_CODEC_MPGA;
break;
default:
p_fmt->i_cat = UNKNOWN_ES;
#endif
/* */
- es_format_Init( p_fmt, SPU_ES, VLC_FOURCC( 't', 'e', 'l', 'x' ) );
+ es_format_Init( p_fmt, SPU_ES, VLC_CODEC_TELETEXT );
/* In stream output mode, do not separate the stream by page */
if( p_demux->out->b_sout || i_page <= 0 )
{
es_format_t *p_fmt = &pid->es->fmt;
- es_format_Init( p_fmt, SPU_ES, VLC_FOURCC( 'd', 'v', 'b', 's' ) );
+ es_format_Init( p_fmt, SPU_ES, VLC_CODEC_DVBS );
dvbpsi_descriptor_t *p_dr = PMTEsFindDescriptor( p_es, 0x59 );
int i_page = 0;
PMTEsFindDescriptor( p_es, 0x81 ) )
{
p_fmt->i_cat = AUDIO_ES;
- p_fmt->i_codec = VLC_FOURCC('a','5','2',' ');
+ p_fmt->i_codec = VLC_CODEC_A52;
}
else if( PMTEsFindDescriptor( p_es, 0x7a ) )
{
/* DVB with stream_type 0x06 (ETS EN 300 468) */
p_fmt->i_cat = AUDIO_ES;
- p_fmt->i_codec = VLC_FOURCC( 'e', 'a', 'c', '3' );
+ p_fmt->i_codec = VLC_CODEC_EAC3;
}
else if( PMTEsHasRegistration( p_demux, p_es, "DTS1" ) ||
PMTEsHasRegistration( p_demux, p_es, "DTS2" ) ||
{
/*registration descriptor(ETSI TS 101 154 Annex F)*/
p_fmt->i_cat = AUDIO_ES;
- p_fmt->i_codec = VLC_FOURCC('d','t','s',' ');
+ p_fmt->i_codec = VLC_CODEC_DTS;
}
else if( PMTEsHasRegistration( p_demux, p_es, "BSSD" ) )
{
/* registration descriptor for VC-1 (SMPTE rp227) */
p_fmt->i_cat = VIDEO_ES;
- p_fmt->i_codec = VLC_FOURCC('W','V','C','1');
+ p_fmt->i_codec = VLC_CODEC_VC1;
/* XXX With Simple and Main profile the SEQUENCE
* header is modified: video width and height are
/* registration descriptor for Dirac
* (backwards compatable with VC-2 (SMPTE Sxxxx:2008)) */
p_fmt->i_cat = VIDEO_ES;
- p_fmt->i_codec = VLC_FOURCC('d','r','a','c');
+ p_fmt->i_codec = VLC_CODEC_DIRAC;
}
static void PMTSetupEs0xA0( demux_t *p_demux, ts_pid_t *pid,
{
case 0x80:
p_fmt->i_cat = AUDIO_ES;
- p_fmt->i_codec = VLC_FOURCC( 'b', 'p', 'c', 'm' );
+ p_fmt->i_codec = VLC_CODEC_BD_LPCM;
break;
case 0x82:
case 0x85: /* DTS-HD High resolution audio */
case 0x86: /* DTS-HD Master audio */
case 0xA2: /* Secondary DTS audio */
p_fmt->i_cat = AUDIO_ES;
- p_fmt->i_codec = VLC_FOURCC( 'd', 't', 's', ' ' );
+ p_fmt->i_codec = VLC_CODEC_DTS;
break;
case 0x83: /* TrueHD AC3 */
p_fmt->i_cat = AUDIO_ES;
- p_fmt->i_codec = VLC_FOURCC( 'm', 'l', 'p', ' ' );
+ p_fmt->i_codec = VLC_CODEC_MLP;
break;
case 0x84: /* E-AC3 */
case 0x87: /* E-AC3 */
case 0xA1: /* Secondary E-AC3 */
p_fmt->i_cat = AUDIO_ES;
- p_fmt->i_codec = VLC_FOURCC( 'e', 'a', 'c', '3' );
+ p_fmt->i_codec = VLC_CODEC_EAC3;
break;
case 0x90: /* Presentation graphics */
case 0x91: /* Interactive graphics */
if( pid->es->fmt.i_cat == AUDIO_ES ||
( pid->es->fmt.i_cat == SPU_ES &&
- pid->es->fmt.i_codec != VLC_FOURCC('d','v','b','s') &&
- pid->es->fmt.i_codec != VLC_FOURCC('t','e','l','x') ) )
+ pid->es->fmt.i_codec != VLC_CODEC_DVBS &&
+ pid->es->fmt.i_codec != VLC_CODEC_TELETEXT ) )
{
PMTParseEsIso639( p_demux, pid, p_es );
}
p_sys->pi_seektable = NULL;
/* Read the metadata */
- es_format_Init( &fmt, AUDIO_ES, VLC_FOURCC( 'T', 'T', 'A', '1' ) );
+ es_format_Init( &fmt, AUDIO_ES, VLC_CODEC_TTA );
fmt.audio.i_channels = GetWLE( &p_header[6] );
fmt.audio.i_bitspersample = GetWLE( &p_header[8] );
fmt.audio.i_rate = GetDWLE( &p_header[10] );
/* register the proper audio codec */
if (p_sys->audio_type == TIVO_AUDIO_MPEG) {
- es_format_Init( &fmt, AUDIO_ES, VLC_FOURCC( 'm', 'p', 'g', 'a' ) );
+ es_format_Init( &fmt, AUDIO_ES, VLC_CODEC_MPGA );
} else {
- es_format_Init( &fmt, AUDIO_ES, VLC_FOURCC( 'a', '5', '2', ' ' ) );
+ es_format_Init( &fmt, AUDIO_ES, VLC_CODEC_A52 );
}
fmt.i_group = TY_ES_GROUP;
p_sys->p_audio = es_out_Add( p_demux->out, &fmt );
/* register the video stream */
- es_format_Init( &fmt, VIDEO_ES, VLC_FOURCC( 'm', 'p', 'g', 'v' ) );
+ es_format_Init( &fmt, VIDEO_ES, VLC_CODEC_MPGV );
fmt.i_group = TY_ES_GROUP;
p_sys->p_video = es_out_Add( p_demux->out, &fmt );
current_tk->i_track_id = i_track_id;
current_tk->i_delay = (int64_t)0;
- es_format_Init( &fmt, SPU_ES, VLC_FOURCC( 's','p','u',' ' ) );
+ es_format_Init( &fmt, SPU_ES, VLC_CODEC_SPU );
fmt.subs.spu.i_original_frame_width = p_sys->i_original_frame_width;
fmt.subs.spu.i_original_frame_height = p_sys->i_original_frame_height;
fmt.psz_language = strdup( language );
return VLC_EGENERIC;
}
- new_fmt.i_codec = VLC_FOURCC('u','8',' ',' ');
+ new_fmt.i_codec = VLC_CODEC_U8;
new_fmt.audio.i_rate = fix_voc_sr( 1000000L / (256L - buf[0]) );
new_fmt.audio.i_bytes_per_frame = 1;
new_fmt.audio.i_frame_length = 1;
i_block_size = 0;
p_sys->i_silence_countdown = GetWLE( buf );
- new_fmt.i_codec = VLC_FOURCC('u','8',' ',' ');
+ new_fmt.i_codec = VLC_CODEC_U8;
new_fmt.audio.i_rate = fix_voc_sr( 1000000L / (256L - buf[0]) );
new_fmt.audio.i_bytes_per_frame = 1;
new_fmt.audio.i_frame_length = 1;
return VLC_EGENERIC;
}
- new_fmt.i_codec = VLC_FOURCC('u','8',' ',' ');
+ new_fmt.i_codec = VLC_CODEC_U8;
new_fmt.audio.i_channels = buf[3] + 1; /* can't be nul */
new_fmt.audio.i_rate = 256000000L /
((65536L - GetWLE(buf)) * new_fmt.audio.i_channels);
switch( new_fmt.audio.i_bitspersample )
{
case 8:
- new_fmt.i_codec = VLC_FOURCC('u','8',' ',' ');
+ new_fmt.i_codec = VLC_CODEC_U8;
break;
case 16:
- new_fmt.i_codec = VLC_FOURCC('u','1','6','l');
+ new_fmt.i_codec = VLC_CODEC_U16L;
break;
default:
switch( new_fmt.audio.i_bitspersample )
{
case 8:
- new_fmt.i_codec = VLC_FOURCC('s','8',' ',' ');
+ new_fmt.i_codec = VLC_CODEC_S8;
break;
case 16:
- new_fmt.i_codec = VLC_FOURCC('s','1','6','l');
+ new_fmt.i_codec = VLC_CODEC_S16L;
break;
default:
case VLC_FOURCC( 'a', 'r', 'a', 'w' ):
case VLC_FOURCC( 'a', 'f', 'l', 't' ):
case VLC_FOURCC( 'u', 'l', 'a', 'w' ):
- case VLC_FOURCC( 'a', 'l', 'a', 'w' ):
- case VLC_FOURCC( 'm', 'l', 'a', 'w' ):
+ case VLC_CODEC_ALAW:
+ case VLC_CODEC_MULAW:
case VLC_FOURCC( 'p', 'c', 'm', ' ' ):
if( FrameInfo_PCM( &p_sys->i_frame_size, &p_sys->i_frame_samples,
&p_sys->fmt ) )
&p_sys->fmt ) )
goto error;
break;
- case VLC_FOURCC( 'm', 'p', 'g', 'a' ):
- case VLC_FOURCC( 'a', '5', '2', ' ' ):
+ case VLC_CODEC_MPGA:
+ case VLC_CODEC_A52:
/* FIXME set end of area FIXME */
goto error;
- case VLC_FOURCC( 'a', 'g', 's', 'm' ):
+ case VLC_CODEC_GSM_MS:
if( FrameInfo_MSGSM( &p_sys->i_frame_size, &p_sys->i_frame_samples,
&p_sys->fmt ) )
goto error;
#endif
p_format->buffer_size = 8192;
- p_aout->output.output.i_format = VLC_FOURCC('f','l','3','2');
+ p_aout->output.output.i_format = VLC_CODEC_FL32;
p_aout->output.i_nb_samples = 2048 / i_nb_channels;
p_aout->output.pf_play = DoNothing;
colorcombo colspace[]=
{
- {B_YCbCr420, "B_YCbCr420", VLC_FOURCC('I','4','2','0'), 3, 2},
+ {B_YCbCr420, "B_YCbCr420", VLC_CODEC_I420, 3, 2},
{B_YUV422, "B_YUV422", VLC_FOURCC('Y','4','2','2'), 3, 2},
- {B_YCbCr422, "B_YCbCr422", VLC_FOURCC('Y','U','Y','2'), 3, 2},
- {B_RGB32, "B_RGB32", VLC_FOURCC('R','V','3','2'), 1, 4},
- {B_RGB16, "B_RGB16", VLC_FOURCC('R','V','1','6'), 1, 2}
+ {B_YCbCr422, "B_YCbCr422", VLC_CODEC_YUYV, 3, 2},
+ {B_RGB32, "B_RGB32", VLC_CODEC_RGB32, 1, 4},
+ {B_RGB16, "B_RGB16", VLC_CODEC_RGB16, 1, 2}
};
#define COLOR_COUNT 5
p_intf->p_sys->fmt_out.i_chroma;
if( config_GetInt( p_intf, "freetype-yuvp" ) )
p_intf->p_sys->p_blend->fmt_in.video.i_chroma =
- VLC_FOURCC('Y','U','V','P');
+ VLC_CODEC_YUVP;
else
p_intf->p_sys->p_blend->fmt_in.video.i_chroma =
- VLC_FOURCC('Y','U','V','A');
+ VLC_CODEC_YUVA;
p_intf->p_sys->p_blend->p_module =
module_need( p_intf->p_sys->p_blend, "video blending", NULL, false );
return NULL;
if( !p_fmt->p_palette &&
- ( p_fmt->i_chroma == VLC_FOURCC('Y','U','V','P') ) )
+ ( p_fmt->i_chroma == VLC_CODEC_YUVP ) )
{
p_fmt->p_palette = malloc( sizeof(video_palette_t) );
if( !p_fmt->p_palette )
switch( fmt.i_chroma )
{
- case VLC_FOURCC('R','V','2','4'):
+ case VLC_CODEC_RGB24:
p_begin = (uint8_t *)(*p_pic)->p[Y_PLANE].p_pixels;
p_end = (uint8_t *)(*p_pic)->p[Y_PLANE].p_pixels +
( fmt.i_height * (*p_pic)->p[Y_PLANE].i_pitch );
i_skip = 3;
break;
- case VLC_FOURCC('R','V','3','2'):
+ case VLC_CODEC_RGB32:
p_begin = (uint8_t *)(*p_pic)->p[Y_PLANE].p_pixels;
p_end = (uint8_t *)(*p_pic)->p[Y_PLANE].p_pixels +
( fmt.i_height * (*p_pic)->p[Y_PLANE].i_pitch );
video_format_t fmt;
memset( &fmt, 0, sizeof(fmt) );
- fmt.i_chroma = VLC_FOURCC('T','E','X','T');
+ fmt.i_chroma = VLC_CODEC_TEXT;
fmt.i_aspect = 0;
fmt.i_width = fmt.i_visible_width = 0;
fmt.i_height = fmt.i_visible_height = 0;
switch( p_sys->var_info.bits_per_pixel )
{
case 8: /* FIXME: set the palette */
- p_sys->fmt_out.i_chroma = VLC_FOURCC('R','G','B','2'); break;
+ p_sys->fmt_out.i_chroma = VLC_CODEC_RGB8; break;
case 15:
- p_sys->fmt_out.i_chroma = VLC_FOURCC('R','V','1','5'); break;
+ p_sys->fmt_out.i_chroma = VLC_CODEC_RGB15; break;
case 16:
- p_sys->fmt_out.i_chroma = VLC_FOURCC('R','V','1','6'); break;
+ p_sys->fmt_out.i_chroma = VLC_CODEC_RGB16; break;
case 24:
- p_sys->fmt_out.i_chroma = VLC_FOURCC('R','V','2','4'); break;
+ p_sys->fmt_out.i_chroma = VLC_CODEC_RGB24; break;
case 32:
- p_sys->fmt_out.i_chroma = VLC_FOURCC('R','V','3','2'); break;
+ p_sys->fmt_out.i_chroma = VLC_CODEC_RGB32; break;
default:
msg_Err( p_intf, "unknown screen depth %i",
p_sys->var_info.bits_per_pixel );
int i_tmp, i_size;
uint8_t * p_bytes;
- if ( p_aout->output.output.i_format != VLC_FOURCC('s','p','d','i') )
+ if ( p_aout->output.output.i_format != VLC_CODEC_SPDIFL )
{
mtime_t next_date = 0;
switch( p_vout->p_sys->i_screen_depth )
{
case 8:
- p_vout->output.i_chroma = VLC_FOURCC('R','G','B','2');
+ p_vout->output.i_chroma = VLC_CODEC_RGB8;
p_vout->p_sys->i_bytes_per_pixel = 1;
p_vout->output.pf_setpalette = SetPalette;
break;
case 15:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','5');
+ p_vout->output.i_chroma = VLC_CODEC_RGB15;
p_vout->p_sys->i_bytes_per_pixel = 2;
p_vout->output.i_rmask = 0x7c00;
p_vout->output.i_gmask = 0x03e0;
break;
case 16:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','6');
+ p_vout->output.i_chroma = VLC_CODEC_RGB16;
p_vout->p_sys->i_bytes_per_pixel = 2;
p_vout->output.i_rmask = 0xf800;
p_vout->output.i_gmask = 0x07e0;
break;
case 24:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','2','4');
+ p_vout->output.i_chroma = VLC_CODEC_RGB24;
p_vout->p_sys->i_bytes_per_pixel = 3;
p_vout->output.i_rmask = 0xff0000;
p_vout->output.i_gmask = 0x00ff00;
case 32:
default:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','3','2');
+ p_vout->output.i_chroma = VLC_CODEC_RGB32;
p_vout->p_sys->i_bytes_per_pixel = 4;
p_vout->output.i_rmask = 0xff0000;
p_vout->output.i_gmask = 0x00ff00;
switch (p_vout->p_sys->i_vc_format)
{
case Pg_VIDEO_FORMAT_YUV420:
- p_vout->output.i_chroma = VLC_FOURCC('I','4','2','0');
+ p_vout->output.i_chroma = VLC_CODEC_I420;
p_pic->p_sys->p_buf[U_PLANE] = PdGetOffscreenContextPtr( p_pic->p_sys->p_ctx[U_PLANE] );
p_pic->p_sys->p_buf[V_PLANE] = PdGetOffscreenContextPtr( p_pic->p_sys->p_ctx[V_PLANE] );
break;
case Pg_VIDEO_FORMAT_YV12:
- p_vout->output.i_chroma = VLC_FOURCC('Y','V','1','2');
+ p_vout->output.i_chroma = VLC_CODEC_YV12;
p_pic->p_sys->p_buf[U_PLANE] = PdGetOffscreenContextPtr( p_pic->p_sys->p_ctx[U_PLANE] );
p_pic->p_sys->p_buf[V_PLANE] = PdGetOffscreenContextPtr( p_pic->p_sys->p_ctx[V_PLANE] );
case Pg_VIDEO_FORMAT_YUY2:
if (p_vout->p_sys->i_vc_format == Pg_VIDEO_FORMAT_UYVY)
{
- p_vout->output.i_chroma = VLC_FOURCC('U','Y','V','Y');
+ p_vout->output.i_chroma = VLC_CODEC_UYVY;
}
else
{
- p_vout->output.i_chroma = VLC_FOURCC('Y','U','Y','2');
+ p_vout->output.i_chroma = VLC_CODEC_YUYV;
}
p_pic->p->p_pixels = p_pic->p_sys->p_buf[Y_PLANE];
break;
case Pg_VIDEO_FORMAT_RGB555:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','5');
+ p_vout->output.i_chroma = VLC_CODEC_RGB15;
p_vout->output.i_rmask = 0x001f;
p_vout->output.i_gmask = 0x03e0;
p_vout->output.i_bmask = 0x7c00;
break;
case Pg_VIDEO_FORMAT_RGB565:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','6');
+ p_vout->output.i_chroma = VLC_CODEC_RGB16;
p_vout->output.i_rmask = 0x001f;
p_vout->output.i_gmask = 0x07e0;
p_vout->output.i_bmask = 0xf800;
break;
case Pg_VIDEO_FORMAT_RGB8888:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','3','2');
+ p_vout->output.i_chroma = VLC_CODEC_RGB32;
p_vout->output.i_rmask = 0x000000ff;
p_vout->output.i_gmask = 0x0000ff00;
p_vout->output.i_bmask = 0x00ff0000;
switch( p_vout->output.i_chroma )
{
#ifdef MODULE_NAME_IS_xvideo
- case VLC_FOURCC('Y','2','1','1'):
+ case VLC_CODEC_Y211:
p_pic->p->p_pixels = p_pic->p_sys->p_image->data
+ p_pic->p_sys->p_image->offsets[0];
video_format_t fmt_in = {0}, fmt_out = {0};
picture_t *pPic;
- fmt_out.i_chroma = VLC_FOURCC('R','G','B','A');
+ fmt_out.i_chroma = VLC_CODEC_RGBA;
pPic = image_ReadUrl( pImageHandler, fileName.c_str(), &fmt_in, &fmt_out );
if( !pPic ) return;
p_aout->output.pf_play = Play;
aout_VolumeSoftInit( p_aout );
- if ( p_aout->output.output.i_format == VLC_FOURCC('s','p','d','i') )
+ if ( p_aout->output.output.i_format == VLC_CODEC_SPDIFL )
{
p_aout->output.i_nb_samples = A52_FRAME_NB;
p_aout->output.output.i_bytes_per_frame = AOUT_SPDIF_SIZE;
{
if( strlen( psz_chroma ) >= 4 )
{
- i_chroma = VLC_FOURCC( psz_chroma[0], psz_chroma[1],
- psz_chroma[2], psz_chroma[3] );
+ i_chroma = vlc_fourcc_GetCodec( VIDEO_ES,
+ VLC_FOURCC( psz_chroma[0], psz_chroma[1],
+ psz_chroma[2], psz_chroma[3] ) );
b_chroma = 1;
}
msg_Dbg( p_vout, "forcing chroma 0x%.8x (%4.4s)",
i_chroma, (char*)&i_chroma );
p_vout->output.i_chroma = i_chroma;
- if ( i_chroma == VLC_FOURCC( 'R', 'G', 'B', '2' ) )
+ if ( i_chroma == VLC_CODEC_RGB8 )
{
p_vout->output.pf_setpalette = SetPalette;
}
/* Create a new subpicture region */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('Y','U','V','P');
+ fmt.i_chroma = VLC_CODEC_YUVP;
fmt.i_aspect = 0;
fmt.i_width = fmt.i_visible_width = i_width + 4;
fmt.i_height = fmt.i_visible_height = i_height + 4;
/* Create a new subpicture region */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('Y','U','V','A');
+ fmt.i_chroma = VLC_CODEC_YUVA;
fmt.i_aspect = 0;
fmt.i_width = fmt.i_visible_width = i_width + 6;
fmt.i_height = fmt.i_visible_height = i_height + 6;
memset( &fmt_in, 0, sizeof(video_format_t) );
memset( &fmt_out, 0, sizeof(video_format_t) );
- fmt_out.i_chroma = VLC_FOURCC('Y','U','V','A');
+ fmt_out.i_chroma = VLC_CODEC_YUVA;
if( p_menu->p_image )
{
p_state->p_pic = image_ReadUrl( p_menu->p_image, psz_file,
// Create a new subpicture region
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('Y','U','V','A');
+ fmt.i_chroma = VLC_CODEC_YUVA;
fmt.i_aspect = 0;
fmt.i_width = fmt.i_visible_width = i_width;
fmt.i_height = fmt.i_visible_height = i_textblock_height + VERTICAL_MARGIN * 2;
switch( p_fmt->i_codec )
{
- case VLC_FOURCC( 's', '1', '6', 'b' ):
+ case VLC_CODEC_S16B:
if( p_fmt->audio.i_channels == 1 && p_fmt->audio.i_rate == 44100 )
{
p_es->i_payload_type = 11;
p_fmt->audio.i_channels ) == -1 )
p_es->psz_rtpmap = NULL;
break;
- case VLC_FOURCC( 'u', '8', ' ', ' ' ):
+ case VLC_CODEC_U8:
p_es->i_payload_type = p_media->i_payload_type++;
if( asprintf( &p_es->psz_rtpmap, "L8/%d/%d", p_fmt->audio.i_rate,
p_fmt->audio.i_channels ) == -1 )
p_es->psz_rtpmap = NULL;
break;
- case VLC_FOURCC( 'm', 'p', 'g', 'a' ):
+ case VLC_CODEC_MPGA:
case VLC_FOURCC( 'm', 'p', '3', ' ' ):
p_es->i_payload_type = 14;
p_es->psz_rtpmap = strdup( "MPA/90000" );
break;
- case VLC_FOURCC( 'm', 'p', 'g', 'v' ):
+ case VLC_CODEC_MPGV:
p_es->i_payload_type = 32;
p_es->psz_rtpmap = strdup( "MPV/90000" );
break;
- case VLC_FOURCC( 'a', '5', '2', ' ' ):
+ case VLC_CODEC_A52:
p_es->i_payload_type = p_media->i_payload_type++;
if( asprintf( &p_es->psz_rtpmap, "ac3/%d", p_fmt->audio.i_rate ) == -1 )
p_es->psz_rtpmap = NULL;
break;
- case VLC_FOURCC( 'H', '2', '6', '3' ):
+ case VLC_CODEC_H263:
p_es->i_payload_type = p_media->i_payload_type++;
p_es->psz_rtpmap = strdup( "H263-1998/90000" );
break;
- case VLC_FOURCC( 'h', '2', '6', '4' ):
+ case VLC_CODEC_H264:
p_es->i_payload_type = p_media->i_payload_type++;
p_es->psz_rtpmap = strdup( "H264/90000" );
p_es->psz_fmtp = NULL;
if( !p_es->psz_fmtp )
p_es->psz_fmtp = strdup( "packetization-mode=1" );
break;
- case VLC_FOURCC( 'm', 'p', '4', 'v' ):
+ case VLC_CODEC_MP4V:
p_es->i_payload_type = p_media->i_payload_type++;
p_es->psz_rtpmap = strdup( "MP4V-ES/90000" );
if( p_fmt->i_extra > 0 )
free( p_hexa );
}
break;
- case VLC_FOURCC( 'm', 'p', '4', 'a' ):
+ case VLC_CODEC_MP4A:
p_es->i_payload_type = p_media->i_payload_type++;
if( asprintf( &p_es->psz_rtpmap, "mpeg4-generic/%d", p_fmt->audio.i_rate ) == -1 )
p_es->psz_rtpmap = NULL;
p_es->i_payload_type = p_media->i_payload_type++;
p_es->psz_rtpmap = strdup( "MP2P/90000" );
break;
- case VLC_FOURCC( 's', 'a', 'm', 'r' ):
+ case VLC_CODEC_AMR_NB:
p_es->i_payload_type = p_media->i_payload_type++;
p_es->psz_rtpmap = strdup( p_fmt->audio.i_channels == 2 ?
"AMR/8000/2" : "AMR/8000" );
p_es->psz_fmtp = strdup( "octet-align=1" );
break;
- case VLC_FOURCC( 's', 'a', 'w', 'b' ):
+ case VLC_CODEC_AMR_WB:
p_es->i_payload_type = p_media->i_payload_type++;
p_es->psz_rtpmap = strdup( p_fmt->audio.i_channels == 2 ?
"AMR-WB/16000/2" : "AMR-WB/16000" );
msg_Dbg( p_vout, "forcing chroma 0x%.8x (%4.4s)",
i_chroma, (char*)&i_chroma );
p_vout->output.i_chroma = i_chroma;
- if ( i_chroma == VLC_FOURCC( 'R', 'G', 'B', '2' ) )
+ if ( i_chroma == VLC_CODEC_RGB8 )
{
p_vout->output.pf_setpalette = SetPalette;
}
/* Create a new subpicture region */
memset( &fmt, 0, sizeof( video_format_t ) );
- fmt.i_chroma = VLC_FOURCC( 'Y','U','V','A' );
+ fmt.i_chroma = VLC_CODEC_YUVA;
fmt.i_aspect = VOUT_ASPECT_FACTOR;
fmt.i_width = fmt.i_visible_width = i_width;
fmt.i_height = fmt.i_visible_height = i_height;
}
p_svg->i_width = p_sys->i_width;
p_svg->i_height = p_sys->i_height;
- p_svg->i_chroma = VLC_FOURCC( 'Y','U','V','A' );
+ p_svg->i_chroma = VLC_CODEC_YUVA;
/* Render the SVG.
The input data is stored in the p_string structure,
/* Create a new subpicture region */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('Y','U','V','P');
+ fmt.i_chroma = VLC_CODEC_YUVP;
fmt.i_width = fmt.i_visible_width = i_width + (b_outline ? 4 : 0);
fmt.i_height = fmt.i_visible_height = i_height + (b_outline ? 4 : 0);
fmt.i_x_offset = fmt.i_y_offset = 0;
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_FOURCC( 'm', 'p', '4', 'v');
+ 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_FOURCC( 'm', 'p', '1', 'v' ):
- case VLC_FOURCC( 'm', 'p', '2', 'v' ):
- p_dec->fmt_out.i_codec = VLC_FOURCC( 'm', 'p', 'g', 'v' );
+ 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_FOURCC( 'D', 'I', 'V', '1' );
+ 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_FOURCC( 'D', 'I', 'V', '2' );
+ p_dec->fmt_out.i_codec = VLC_CODEC_DIV2;
break;
case VLC_FOURCC( 'd', 'i', 'v', '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_FOURCC( 'D', 'I', 'V', '3' );
+ p_dec->fmt_out.i_codec = VLC_CODEC_DIV3;
break;
- case VLC_FOURCC( 'h', '2', '6', '3' ):
+ 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_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_FOURCC( 'j', 'p', 'e', 'g' ):
+ 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_FOURCC( 'M', 'J', 'P', 'G' );
+ p_dec->fmt_out.i_codec = VLC_CODEC_MJPG;
break;
case VLC_FOURCC( 'd', 'v', 's', 'd' ):
switch( ( p_dec->fmt_in.audio.i_bitspersample + 7 ) / 8 )
{
case 1:
- p_dec->fmt_out.i_codec = VLC_FOURCC('u','8',' ',' ');
+ p_dec->fmt_out.i_codec = VLC_CODEC_U8;
break;
case 2:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','1','6','l');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S16L;
break;
case 3:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','2','4','l');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S24L;
break;
case 4:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','3','2','l');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S32L;
break;
default:
msg_Err( p_dec, "unknown raw audio sample size" );
switch( ( p_dec->fmt_in.audio.i_bitspersample + 7 ) / 8 )
{
case 1:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','8',' ',' ');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S8;
break;
case 2:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','1','6','b');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S16B;
break;
case 3:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','2','4','b');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S24B;
break;
case 4:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','3','2','b');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S32B;
break;
default:
msg_Err( p_dec, "unknown raw audio sample size" );
switch( ( p_dec->fmt_in.audio.i_bitspersample + 7 ) / 8 )
{
case 1:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','8',' ',' ');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S8;
break;
case 2:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','1','6','l');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S16L;
break;
case 3:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','2','4','l');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S24L;
break;
case 4:
- p_dec->fmt_out.i_codec = VLC_FOURCC('s','3','2','l');
+ p_dec->fmt_out.i_codec = VLC_CODEC_S32L;
break;
default:
msg_Err( p_dec, "unknown raw audio sample size" );
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC( 'd','r','a','c' ) )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_DIRAC )
return VLC_EGENERIC;
p_dec->pf_packetize = Packetize;
decoder_sys_t *p_sys;
int i;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC( 'h', '2', '6', '4') &&
+ 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') &&
/* Setup properties */
es_format_Copy( &p_dec->fmt_out, &p_dec->fmt_in );
- p_dec->fmt_out.i_codec = VLC_FOURCC( 'h', '2', '6', '4' );
+ p_dec->fmt_out.i_codec = VLC_CODEC_H264;
if( p_dec->fmt_in.i_codec == VLC_FOURCC( 'a', 'v', 'c', '1' ) )
{
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC('m','l','p',' ') )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_MLP )
return VLC_EGENERIC;
/* */
/* Set output properties */
p_dec->fmt_out.i_cat = AUDIO_ES;
- p_dec->fmt_out.i_codec = VLC_FOURCC('m','l','p',' ');
+ p_dec->fmt_out.i_codec = VLC_CODEC_MLP;
p_dec->fmt_out.audio.i_rate = 0;
/* Set callback */
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC( 'm', 'p', '4', 'a' ) )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_MP4A )
{
return VLC_EGENERIC;
}
/* Set output properties */
p_dec->fmt_out.i_cat = AUDIO_ES;
- p_dec->fmt_out.i_codec = VLC_FOURCC('m','p','4','a');
+ p_dec->fmt_out.i_codec = VLC_CODEC_MP4A;
msg_Dbg( p_dec, "running MPEG4 audio packetizer" );
case VLC_FOURCC( 'M', '4', 'S', '2'):
case VLC_FOURCC( 'm', 'p', '4', 's'):
case VLC_FOURCC( 'M', 'P', '4', 'S'):
- case VLC_FOURCC( 'm', 'p', '4', 'v'):
+ 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'):
/* Setup properties */
es_format_Copy( &p_dec->fmt_out, &p_dec->fmt_in );
- p_dec->fmt_out.i_codec = VLC_FOURCC( 'm', 'p', '4', 'v' );
+ p_dec->fmt_out.i_codec = VLC_CODEC_MP4V;
if( p_dec->fmt_in.i_extra )
{
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_FOURCC( 'm', 'p', 'g', 'v' ) )
+ p_dec->fmt_in.i_codec != VLC_CODEC_MPGV )
{
return VLC_EGENERIC;
}
- es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_FOURCC('m','p','g','v') );
+ es_format_Init( &p_dec->fmt_out, VIDEO_ES, VLC_CODEC_MPGV );
p_dec->pf_packetize = Packetize;
p_dec->pf_get_cc = GetCc;
decoder_t *p_dec = (decoder_t*)p_this;
decoder_sys_t *p_sys;
- if( p_dec->fmt_in.i_codec != VLC_FOURCC( 'W', 'V', 'C', '1' ) )
+ if( p_dec->fmt_in.i_codec != VLC_CODEC_VC1 )
return VLC_EGENERIC;
p_dec->pf_packetize = Packetize;
switch( p_filter->fmt_in.video.i_chroma )
{
- case VLC_FOURCC('Y','8','0','0'):
- p_filter->fmt_in.video.i_chroma = VLC_FOURCC('G','R','E','Y');
- case VLC_FOURCC('G','R','E','Y'):
+ case VLC_CODEC_GREY:
switch( p_filter->fmt_out.video.i_chroma )
{
- case VLC_FOURCC('I','4','2','0'):
+ case VLC_CODEC_I420:
p_filter->pf_video_filter = GREY_I420_Filter;
break;
- case VLC_FOURCC('Y','U','Y','2'):
+ case VLC_CODEC_YUYV:
p_filter->pf_video_filter = GREY_YUY2_Filter;
break;
default:
switch( p_filter->fmt_in.video.i_chroma )
{
- case VLC_FOURCC('Y','V','1','2'):
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('I','Y','U','V'):
+ case VLC_CODEC_YV12:
+ case VLC_CODEC_I420:
switch( p_filter->fmt_out.video.i_chroma )
{
#if defined (MODULE_NAME_IS_i420_rgb)
- case VLC_FOURCC('R','G','B','2'):
+ case VLC_CODEC_RGB8:
p_filter->pf_video_filter = I420_RGB8_Filter;
break;
#endif
- case VLC_FOURCC('R','V','1','5'):
- case VLC_FOURCC('R','V','1','6'):
+ case VLC_CODEC_RGB15:
+ case VLC_CODEC_RGB16:
#if ! defined (MODULE_NAME_IS_i420_rgb)
/* If we don't have support for the bitmasks, bail out */
if( ( p_filter->fmt_out.video.i_rmask == 0x7c00
#if 0
/* Hmmm, is there only X11 using 32bits per pixel for RV24 ? */
- case VLC_FOURCC('R','V','2','4'):
+ case VLC_CODEC_RGB24:
#endif
- case VLC_FOURCC('R','V','3','2'):
+ case VLC_CODEC_RGB32:
#if ! defined (MODULE_NAME_IS_i420_rgb)
/* If we don't have support for the bitmasks, bail out */
if( p_filter->fmt_out.video.i_rmask == 0x00ff0000
switch( p_filter->fmt_out.video.i_chroma )
{
#if defined (MODULE_NAME_IS_i420_rgb)
- case VLC_FOURCC('R','G','B','2'):
+ case VLC_CODEC_RGB8:
p_filter->p_sys->p_buffer = malloc( VOUT_MAX_WIDTH );
break;
#endif
- case VLC_FOURCC('R','V','1','5'):
- case VLC_FOURCC('R','V','1','6'):
+ case VLC_CODEC_RGB15:
+ case VLC_CODEC_RGB16:
p_filter->p_sys->p_buffer = malloc( VOUT_MAX_WIDTH * 2 );
break;
- case VLC_FOURCC('R','V','2','4'):
- case VLC_FOURCC('R','V','3','2'):
+ case VLC_CODEC_RGB24:
+ case VLC_CODEC_RGB32:
p_filter->p_sys->p_buffer = malloc( VOUT_MAX_WIDTH * 4 );
break;
p_filter->p_sys->p_offset = malloc( p_filter->fmt_out.video.i_width
* ( ( p_filter->fmt_out.video.i_chroma
- == VLC_FOURCC('R','G','B','2') ) ? 2 : 1 )
+ == VLC_CODEC_RGB8 ) ? 2 : 1 )
* sizeof( int ) );
if( p_filter->p_sys->p_offset == NULL )
{
#if defined (MODULE_NAME_IS_i420_rgb)
switch( p_filter->fmt_out.video.i_chroma )
{
- case VLC_FOURCC('R','G','B','2'):
+ case VLC_CODEC_RGB8:
i_tables_size = sizeof( uint8_t ) * PALETTE_TABLE_SIZE;
break;
- case VLC_FOURCC('R','V','1','5'):
- case VLC_FOURCC('R','V','1','6'):
+ case VLC_CODEC_RGB15:
+ case VLC_CODEC_RGB16:
i_tables_size = sizeof( uint16_t ) * RGB_TABLE_SIZE;
break;
default: /* RV24, RV32 */
/* Color: build red, green and blue tables */
switch( p_filter->fmt_out.video.i_chroma )
{
- case VLC_FOURCC('R','G','B','2'):
+ case VLC_CODEC_RGB8:
p_filter->p_sys->p_rgb8 = (uint8_t *)p_filter->p_sys->p_base;
Set8bppPalette( p_filter, p_filter->p_sys->p_rgb8 );
break;
- case VLC_FOURCC('R','V','1','5'):
- case VLC_FOURCC('R','V','1','6'):
+ case VLC_CODEC_RGB15:
+ case VLC_CODEC_RGB16:
p_filter->p_sys->p_rgb16 = (uint16_t *)p_filter->p_sys->p_base;
for( i_index = 0; i_index < RED_MARGIN; i_index++ )
{
}
break;
- case VLC_FOURCC('R','V','2','4'):
- case VLC_FOURCC('R','V','3','2'):
+ case VLC_CODEC_RGB24:
+ case VLC_CODEC_RGB32:
p_filter->p_sys->p_rgb32 = (uint32_t *)p_filter->p_sys->p_base;
for( i_index = 0; i_index < RED_MARGIN; i_index++ )
{
switch( p_filter->fmt_in.video.i_chroma )
{
- case VLC_FOURCC('Y','V','1','2'):
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('I','Y','U','V'):
+ case VLC_CODEC_YV12:
+ case VLC_CODEC_I420:
switch( p_filter->fmt_out.video.i_chroma )
{
- case VLC_FOURCC('Y','M','G','A'):
+ case VLC_CODEC_YMGA:
p_filter->pf_video_filter = I420_YMGA_Filter;
break;
switch( p_filter->fmt_in.video.i_chroma )
{
- case VLC_FOURCC('Y','V','1','2'):
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('I','Y','U','V'):
+ case VLC_CODEC_YV12:
+ case VLC_CODEC_I420:
switch( p_filter->fmt_out.video.i_chroma )
{
- case VLC_FOURCC('Y','U','Y','2'):
- case VLC_FOURCC('Y','U','N','V'):
+ case VLC_CODEC_YUYV:
p_filter->pf_video_filter = I420_YUY2_Filter;
break;
- case VLC_FOURCC('Y','V','Y','U'):
+ case VLC_CODEC_YVYU:
p_filter->pf_video_filter = I420_YVYU_Filter;
break;
- case VLC_FOURCC('U','Y','V','Y'):
- case VLC_FOURCC('U','Y','N','V'):
- case VLC_FOURCC('Y','4','2','2'):
+ case VLC_CODEC_UYVY:
p_filter->pf_video_filter = I420_UYVY_Filter;
break;
#if !defined (MODULE_NAME_IS_i420_yuy2_altivec)
p_filter->pf_video_filter = I420_IUYV_Filter;
break;
- case VLC_FOURCC('c','y','u','v'):
+ case VLC_CODEC_CYUV:
p_filter->pf_video_filter = I420_cyuv_Filter;
break;
#endif
#if defined (MODULE_NAME_IS_i420_yuy2)
- case VLC_FOURCC('Y','2','1','1'):
+ case VLC_CODEC_Y211:
p_filter->pf_video_filter = I420_Y211_Filter;
break;
#endif
switch( p_filter->fmt_in.video.i_chroma )
{
- case VLC_FOURCC('I','4','2','2'):
- case VLC_FOURCC('J','4','2','2'):
+ case VLC_CODEC_I422:
+ case VLC_CODEC_J422:
switch( p_filter->fmt_out.video.i_chroma )
{
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('I','Y','U','V'):
- case VLC_FOURCC('J','4','2','0'):
+ case VLC_CODEC_I420:
+ case VLC_CODEC_J420:
p_filter->pf_video_filter = I422_I420_Filter;
break;
- case VLC_FOURCC('Y','V','1','2'):
+ case VLC_CODEC_YV12:
p_filter->pf_video_filter = I422_YV12_Filter;
break;
- case VLC_FOURCC('Y','U','V','A'):
+ case VLC_CODEC_YUVA:
p_filter->pf_video_filter = I422_YUVA_Filter;
break;
switch( p_filter->fmt_in.video.i_chroma )
{
- case VLC_FOURCC('I','4','2','2'):
+ case VLC_CODEC_I422:
switch( p_filter->fmt_out.video.i_chroma )
{
- case VLC_FOURCC('Y','U','Y','2'):
- case VLC_FOURCC('Y','U','N','V'):
+ case VLC_CODEC_YUYV:
p_filter->pf_video_filter = I422_YUY2_Filter;
break;
- case VLC_FOURCC('Y','V','Y','U'):
+ case VLC_CODEC_YVYU:
p_filter->pf_video_filter = I422_YVYU_Filter;
break;
- case VLC_FOURCC('U','Y','V','Y'):
- case VLC_FOURCC('U','Y','N','V'):
- case VLC_FOURCC('Y','4','2','2'):
+ case VLC_CODEC_UYVY:
p_filter->pf_video_filter = I422_UYVY_Filter;
break;
- case VLC_FOURCC('I','U','Y','V'):
p_filter->pf_video_filter = I422_IUYV_Filter;
break;
- case VLC_FOURCC('c','y','u','v'):
+ case VLC_CODEC_CYUV:
p_filter->pf_video_filter = I422_cyuv_Filter;
break;
#if defined (MODULE_NAME_IS_i422_yuy2)
- case VLC_FOURCC('Y','2','1','1'):
+ case VLC_CODEC_Y211:
p_filter->pf_video_filter = I422_Y211_Filter;
break;
#endif
switch( p_filter->fmt_out.video.i_chroma )
{
- case VLC_FOURCC('I','4','2','0'):
+ case VLC_CODEC_I420:
switch( p_filter->fmt_in.video.i_chroma )
{
- case VLC_FOURCC('Y','U','Y','2'):
- case VLC_FOURCC('Y','U','N','V'):
+ case VLC_CODEC_YUYV:
p_filter->pf_video_filter = YUY2_I420_Filter;
break;
- case VLC_FOURCC('Y','V','Y','U'):
+ case VLC_CODEC_YVYU:
p_filter->pf_video_filter = YVYU_I420_Filter;
break;
- case VLC_FOURCC('U','Y','V','Y'):
- case VLC_FOURCC('U','Y','N','V'):
- case VLC_FOURCC('Y','4','2','2'):
+ case VLC_CODEC_UYVY:
p_filter->pf_video_filter = UYVY_I420_Filter;
break;
- case VLC_FOURCC('c','y','u','v'):
+ case VLC_CODEC_CYUV:
p_filter->pf_video_filter = cyuv_I420_Filter;
break;
switch( p_filter->fmt_out.video.i_chroma )
{
- case VLC_FOURCC('I','4','2','2'):
+ case VLC_CODEC_I422:
switch( p_filter->fmt_in.video.i_chroma )
{
- case VLC_FOURCC('Y','U','Y','2'):
- case VLC_FOURCC('Y','U','N','V'):
+ case VLC_CODEC_YUYV:
p_filter->pf_video_filter = YUY2_I422_Filter;
break;
- case VLC_FOURCC('Y','V','Y','U'):
+ case VLC_CODEC_YVYU:
p_filter->pf_video_filter = YVYU_I422_Filter;
break;
- case VLC_FOURCC('U','Y','V','Y'):
- case VLC_FOURCC('U','Y','N','V'):
- case VLC_FOURCC('Y','4','2','2'):
+ case VLC_CODEC_UYVY:
p_filter->pf_video_filter = UYVY_I422_Filter;
break;
- case VLC_FOURCC('c','y','u','v'):
+ case VLC_CODEC_CYUV:
p_filter->pf_video_filter = cyuv_I422_Filter;
break;
filter_sys_t *p_sys;
char *psz_string;
- if( p_filter->fmt_in.video.i_chroma != VLC_FOURCC('Y','U','V','A') )
+ if( p_filter->fmt_in.video.i_chroma != VLC_CODEC_YUVA )
{
msg_Err( p_filter,
"Unsupported input chroma \"%4s\". "
video_format_t fmt_in, fmt_out;
memset( &fmt_in, 0, sizeof( video_format_t ) );
memset( &fmt_out, 0, sizeof( video_format_t ) );
- fmt_out.i_chroma = VLC_FOURCC('Y','U','V','A');
+ fmt_out.i_chroma = VLC_CODEC_YUVA;
if( p_filter->p_sys->p_mask )
picture_Release( p_filter->p_sys->p_mask );
p_image = image_HandlerCreate( p_filter );
switch( p_filter->fmt_in.video.i_chroma )
{
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('I','Y','U','V'):
- case VLC_FOURCC('Y','V','1','2'):
- case VLC_FOURCC('Y','V','1','6'):
- case VLC_FOURCC('Y','V','U','9'):
+ case VLC_CODEC_I420:
+ case VLC_CODEC_YV12:
// simple enough? Dionoea?
p_sys->pf_extract_mini_image = ExtractMiniImage_YUV;
break;
int i_dummy;
};
-#define FCC_YUVA VLC_FOURCC('Y','U','V','A')
-#define FCC_YUVP VLC_FOURCC('Y','U','V','P')
-#define FCC_RGBA VLC_FOURCC('R','G','B','A')
-
-#define FCC_I420 VLC_FOURCC('I','4','2','0')
-#define FCC_YV12 VLC_FOURCC('Y','V','1','2')
-#define FCC_YUY2 VLC_FOURCC('Y','U','Y','2')
-#define FCC_UYVY VLC_FOURCC('U','Y','V','Y')
-#define FCC_YVYU VLC_FOURCC('Y','V','Y','U')
-#define FCC_RV15 VLC_FOURCC('R','V','1','5')
-#define FCC_RV16 VLC_FOURCC('R','V','1','6')
-#define FCC_RV24 VLC_FOURCC('R','V','2','4')
-#define FCC_RV32 VLC_FOURCC('R','V','3','2')
+#define FCC_YUVA VLC_CODEC_YUVA
+#define FCC_YUVP VLC_CODEC_YUVP
+#define FCC_RGBA VLC_CODEC_RGBA
+
+#define FCC_I420 VLC_CODEC_I420
+#define FCC_YV12 VLC_CODEC_YV12
+#define FCC_YUY2 VLC_CODEC_YUYV
+#define FCC_UYVY VLC_CODEC_UYVY
+#define FCC_YVYU VLC_CODEC_YVYU
+#define FCC_RV15 VLC_CODEC_RGB15
+#define FCC_RV16 VLC_CODEC_RGB16
+#define FCC_RV24 VLC_CODEC_RGB24
+#define FCC_RV32 VLC_CODEC_RGB32
/****************************************************************************
* Local prototypes
filter_t *p_filter = (filter_t *)p_this;
filter_sys_t *p_sys;
- if( p_filter->fmt_in.video.i_chroma != VLC_FOURCC('Y','U','V','A') )
+ if( p_filter->fmt_in.video.i_chroma != VLC_CODEC_YUVA )
{
msg_Err( p_filter,
"Unsupported input chroma \"%4s\". "
uint8_t *p_v = p_pic->p[ V_PLANE ].p_pixels;
uint8_t umin, umax, vmin, vmax;
- if( p_pic->format.i_chroma != VLC_FOURCC('Y','U','V','A') )
+ if( p_pic->format.i_chroma != VLC_CODEC_YUVA )
{
msg_Err( p_filter,
"Unsupported input chroma \"%4s\". "
const es_format_t *p_size );
static const vlc_fourcc_t pi_allowed_chromas[] = {
- VLC_FOURCC('I','4','2','0'),
- VLC_FOURCC('I','4','2','2'),
- VLC_FOURCC('R','V','3','2'),
- VLC_FOURCC('R','V','2','4'),
+ VLC_CODEC_I420,
+ VLC_CODEC_I422,
+ VLC_CODEC_RGB32,
+ VLC_CODEC_RGB24,
0
};
switch(i_chroma)
{
// planar YUV
- case VLC_FOURCC('I','4','4','4'):
- case VLC_FOURCC('I','4','2','2'):
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('Y','V','1','2'):
- case VLC_FOURCC('I','Y','U','V'):
- case VLC_FOURCC('I','4','1','1'):
- case VLC_FOURCC('I','4','1','0'):
- case VLC_FOURCC('Y','V','U','9'):
- case VLC_FOURCC('Y','U','V','A'):
+ case VLC_CODEC_I444:
+ case VLC_CODEC_I422:
+ case VLC_CODEC_I420:
+ case VLC_CODEC_YV12:
+ case VLC_CODEC_I411:
+ case VLC_CODEC_I410:
+ case VLC_CODEC_YUVA:
i_skipCount = (i_pitch * i_skipCountPercent) / 100;
for (i_index = i_col/2 + i_skipCount/2;
i_index <= i_visible_pitch/2 + i_col/2 - i_skipCount/2;
}
break;
// packed RGB
- case VLC_FOURCC('R','G','B','2'): // packed by 1
+ case VLC_CODEC_RGB8: // packed by 1
i_skipCount = (i_pitch * i_skipCountPercent) / 100;
for (i_index = i_col/2 + i_skipCount/2;
i_index <= i_visible_pitch/2 + i_col/2 - i_skipCount/2;
if (i_count > i_nonBlackPixel) break;
}
break;
- case VLC_FOURCC('R','V','1','5'): // packed by 2
- case VLC_FOURCC('R','V','1','6'): // packed by 2
+ case VLC_CODEC_RGB15: // packed by 2
+ case VLC_CODEC_RGB16: // packed by 2
i_skipCount = (i_pitch * i_skipCountPercent) / 100;
for (i_index = i_col/2 + i_skipCount/2 -
(i_col/2 + i_skipCount/2) % 2;
if (i_count > i_nonBlackPixel) break;
}
break;
- case VLC_FOURCC('R','V','2','4'): // packed by 3
+ case VLC_CODEC_RGB24: // packed by 3
i_skipCount = (i_pitch * i_skipCountPercent) / 100;
for (i_index = i_col/2 + i_skipCount/2 - (i_col/2 + i_skipCount/2) % 3; i_index <= i_visible_pitch/2 + i_col/2 - i_skipCount/2; i_index+=3)
{
if (i_count > i_nonBlackPixel) break;
}
break;
- case VLC_FOURCC('R','V','3','2'): // packed by 4
+ case VLC_CODEC_RGB32: // packed by 4
i_skipCount = (i_pitch * i_skipCountPercent) / 100;
for (i_index = i_col/2 + i_skipCount/2 - (i_col/2 + i_skipCount/2) % 4; i_index <= i_visible_pitch/2 + i_col/2 - i_skipCount/2; i_index+=4)
{
}
break;
// packed YUV
- case VLC_FOURCC('Y','U','Y','2'): // packed by 2
- case VLC_FOURCC('Y','U','N','V'): // packed by 2
- case VLC_FOURCC('U','Y','V','Y'): // packed by 2
- case VLC_FOURCC('U','Y','N','V'): // packed by 2
- case VLC_FOURCC('Y','4','2','2'): // packed by 2
+ case VLC_CODEC_YUYV: // packed by 2
+ case VLC_CODEC_UYVY: // packed by 2
i_skipCount = (i_pitch * i_skipCountPercent) / 100;
for (i_index = (i_col/2 + i_skipCount/2) -
(i_col/2 + i_skipCount/2) % 2;
/* Determine where black borders are */
switch( p_vout->output.i_chroma )
{
- case VLC_FOURCC('I','4','2','0'):
+ case VLC_CODEC_I420:
/* XXX: Do not laugh ! I know this is very naive. But it's just a
* proof of concept code snippet... */
for( i = i_lines ; i-- ; )
}
else
{
- const bool b_i422 = p_vout->render.i_chroma == VLC_FOURCC('I','4','2','2');
+ const bool b_i422 = p_vout->render.i_chroma == VLC_CODEC_I422;
if( strcmp( psz_method, "discard" ) )
msg_Err( p_vout, "no valid deinterlace mode provided, "
"using \"discard\"" );
p_dst->i_sar_den *= 2;
}
- if( p_src->i_chroma == VLC_FOURCC('I','4','2','2') )
+ if( p_src->i_chroma == VLC_CODEC_I422 )
{
switch( p_vout->p_sys->i_mode )
{
case DEINTERLACE_MEAN:
case DEINTERLACE_LINEAR:
case DEINTERLACE_X:
- p_dst->i_chroma = VLC_FOURCC('I','4','2','2');
+ p_dst->i_chroma = VLC_CODEC_I422;
break;
default:
- p_dst->i_chroma = VLC_FOURCC('I','4','2','0');
+ p_dst->i_chroma = VLC_CODEC_I420;
break;
}
}
static bool IsChromaSupported( vlc_fourcc_t i_chroma )
{
- return i_chroma == VLC_FOURCC('I','4','2','0') ||
- i_chroma == VLC_FOURCC('I','Y','U','V') ||
- i_chroma == VLC_FOURCC('Y','V','1','2') ||
- i_chroma == VLC_FOURCC('I','4','2','2');
+ return i_chroma == VLC_CODEC_I420 ||
+ i_chroma == VLC_CODEC_YV12 ||
+ i_chroma == VLC_CODEC_I422;
}
/*****************************************************************************
switch( p_vout->render.i_chroma )
{
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('I','Y','U','V'):
- case VLC_FOURCC('Y','V','1','2'):
+ case VLC_CODEC_I420:
+ case VLC_CODEC_YV12:
for( ; p_out < p_out_end ; )
{
}
break;
- case VLC_FOURCC('I','4','2','2'):
+ case VLC_CODEC_I422:
i_increment = 2 * p_pic->p[i_plane].i_pitch;
switch( p_vout->render.i_chroma )
{
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('I','Y','U','V'):
- case VLC_FOURCC('Y','V','1','2'):
+ case VLC_CODEC_I420:
+ case VLC_CODEC_YV12:
/* For BOTTOM field we need to add the first line */
if( i_field == 1 )
{
}
break;
- case VLC_FOURCC('I','4','2','2'):
+ case VLC_CODEC_I422:
/* For BOTTOM field we need to add the first line */
if( i_field == 1 )
{
switch( p_vout->render.i_chroma )
{
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('I','Y','U','V'):
- case VLC_FOURCC('Y','V','1','2'):
+ case VLC_CODEC_I420:
+ case VLC_CODEC_YV12:
/* First line: simple copy */
vlc_memcpy( p_out, p_in, p_pic->p[i_plane].i_pitch );
p_out += p_outpic->p[i_plane].i_pitch;
}
break;
- case VLC_FOURCC('I','4','2','2'):
+ case VLC_CODEC_I422:
/* First line: simple copy */
vlc_memcpy( p_out, p_in, p_pic->p[i_plane].i_pitch );
p_out += p_outpic->p[i_plane].i_pitch;
(char*)&p_overlay->format.i_chroma, p_overlay->i_x, p_overlay->i_y,
p_overlay->i_alpha );
- if( p_overlay->format.i_chroma == VLC_FOURCC('T','E','X','T') )
+ if( p_overlay->format.i_chroma == VLC_CODEC_TEXT )
{
p_region->psz_text = strdup( p_overlay->data.p_text );
p_region->p_style = text_style_Duplicate( p_overlay->p_fontstyle );
}
i_size = shminfo.shm_segsz;
- if( p_params->fourcc == VLC_FOURCC('T','E','X','T') )
+ if( p_params->fourcc == VLC_CODEC_TEXT )
{
char *p_data;
return VLC_ENOMEM;
}
- vout_InitFormat( &p_ovl->format, VLC_FOURCC('T','E','X','T'),
+ vout_InitFormat( &p_ovl->format, VLC_CODEC_TEXT,
0, 0, 0 );
p_data = shmat( p_params->i_shmid, NULL, SHM_RDONLY );
picture_t *p_old_mask = p_filter->p_sys->p_mask;
memset( &fmt_in, 0, sizeof( video_format_t ) );
memset( &fmt_out, 0, sizeof( video_format_t ) );
- fmt_out.i_chroma = VLC_FOURCC('Y','U','V','A');
+ fmt_out.i_chroma = VLC_CODEC_YUVA;
p_image = image_HandlerCreate( p_filter );
p_filter->p_sys->p_mask =
image_ReadUrl( p_image, psz_filename, &fmt_in, &fmt_out );
switch( p_filter->fmt_in.video.i_chroma )
{
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('I','Y','U','V'):
- case VLC_FOURCC('J','4','2','0'):
- case VLC_FOURCC('Y','V','1','2'):
+ case VLC_CODEC_I420:
+ case VLC_CODEC_J420:
+ case VLC_CODEC_YV12:
- case VLC_FOURCC('I','4','2','2'):
- case VLC_FOURCC('J','4','2','2'):
+ case VLC_CODEC_I422:
+ case VLC_CODEC_J422:
break;
default:
int i_width = i_mask_visible_pitch;
const bool b_line_factor = ( i_plane /* U_PLANE or V_PLANE */ &&
- !( p_inpic->format.i_chroma == VLC_FOURCC('I','4','2','2')
- || p_inpic->format.i_chroma == VLC_FOURCC('J','4','2','2') ) );
+ !( p_inpic->format.i_chroma == VLC_CODEC_I422
+ || p_inpic->format.i_chroma == VLC_CODEC_J422 ) );
if( i_plane ) /* U_PLANE or V_PLANE */
{
switch( p_filter->fmt_in.video.i_chroma )
{
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('I','Y','U','V'):
- case VLC_FOURCC('J','4','2','0'):
- case VLC_FOURCC('Y','V','1','2'):
+ case VLC_CODEC_I420:
+ case VLC_CODEC_J420:
+ case VLC_CODEC_YV12:
- case VLC_FOURCC('I','4','2','2'):
- case VLC_FOURCC('J','4','2','2'):
+ case VLC_CODEC_I422:
+ case VLC_CODEC_J422:
CASE_PACKED_YUV_422
break;
switch( p_pic->format.i_chroma )
{
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('I','Y','U','V'):
- case VLC_FOURCC('J','4','2','0'):
- case VLC_FOURCC('Y','V','1','2'):
+ case VLC_CODEC_I420:
+ case VLC_CODEC_J420:
+ case VLC_CODEC_YV12:
switch( p_filter->p_sys->i_color )
{
case RED:
}
break;
- case VLC_FOURCC('I','4','2','2'):
- case VLC_FOURCC('J','4','2','2'):
+ case VLC_CODEC_I422:
+ case VLC_CODEC_J422:
switch( p_filter->p_sys->i_color )
{
case RED:
/* FIXME: do all of these really have square pixels? */
#define CASE_PLANAR_YUV_SQUARE \
- case VLC_FOURCC('I','4','2','0'): \
- case VLC_FOURCC('I','Y','U','V'): \
- case VLC_FOURCC('J','4','2','0'): \
- case VLC_FOURCC('Y','V','1','2'): \
- case VLC_FOURCC('I','4','1','1'): \
- case VLC_FOURCC('I','4','1','0'): \
- case VLC_FOURCC('Y','V','U','9'): \
- case VLC_FOURCC('I','4','4','4'): \
- case VLC_FOURCC('J','4','4','4'): \
- case VLC_FOURCC('Y','U','V','A'):
+ case VLC_CODEC_I420: \
+ case VLC_CODEC_J420: \
+ case VLC_CODEC_YV12: \
+ case VLC_CODEC_I411: \
+ case VLC_CODEC_I410: \
+ case VLC_CODEC_I444: \
+ case VLC_CODEC_J444: \
+ case VLC_CODEC_YUVA:
#define CASE_PLANAR_YUV_NONSQUARE \
- case VLC_FOURCC('I','4','2','2'): \
- case VLC_FOURCC('J','4','2','2'):
+ case VLC_CODEC_I422: \
+ case VLC_CODEC_J422:
#define CASE_PLANAR_YUV \
CASE_PLANAR_YUV_SQUARE \
CASE_PLANAR_YUV_NONSQUARE \
#define CASE_PACKED_YUV_422 \
- case VLC_FOURCC('U','Y','V','Y'): \
- case VLC_FOURCC('U','Y','N','V'): \
- case VLC_FOURCC('Y','4','2','2'): \
- case VLC_FOURCC('c','y','u','v'): \
- case VLC_FOURCC('Y','U','Y','2'): \
- case VLC_FOURCC('Y','U','N','V'): \
- case VLC_FOURCC('Y','V','Y','U'):
+ case VLC_CODEC_UYVY: \
+ case VLC_CODEC_CYUV: \
+ case VLC_CODEC_YUYV: \
+ case VLC_CODEC_YVYU:
static inline int GetPackedYuvOffsets( vlc_fourcc_t i_chroma,
int *i_y_offset, int *i_u_offset, int *i_v_offset )
{
switch( i_chroma )
{
- case VLC_FOURCC('U','Y','V','Y'):
- case VLC_FOURCC('U','Y','N','V'):
- case VLC_FOURCC('Y','4','2','2'):
- case VLC_FOURCC('c','y','u','v'): /* <-- FIXME: reverted, whatever that means */
+ case VLC_CODEC_UYVY:
+ case VLC_CODEC_CYUV: /* <-- FIXME: reverted, whatever that means */
/* UYVY */
*i_y_offset = 1;
*i_u_offset = 0;
*i_v_offset = 2;
return VLC_SUCCESS;
- case VLC_FOURCC('Y','U','Y','2'):
- case VLC_FOURCC('Y','U','N','V'):
+ case VLC_CODEC_YUYV:
/* YUYV */
*i_y_offset = 0;
*i_u_offset = 1;
*i_v_offset = 3;
return VLC_SUCCESS;
- case VLC_FOURCC('Y','V','Y','U'):
+ case VLC_CODEC_YVYU:
/* YVYU */
*i_y_offset = 0;
*i_u_offset = 3;
{
filter_t *p_filter = (filter_t *)p_this;
- if( p_filter->fmt_in.video.i_chroma != VLC_FOURCC('I','4','2','0')
- && p_filter->fmt_in.video.i_chroma != VLC_FOURCC('I','Y','U','V')
- && p_filter->fmt_in.video.i_chroma != VLC_FOURCC('J','4','2','0')
- && p_filter->fmt_in.video.i_chroma != VLC_FOURCC('Y','V','1','2')
+ if( p_filter->fmt_in.video.i_chroma != VLC_CODEC_I420
+ && p_filter->fmt_in.video.i_chroma != VLC_CODEC_J420
+ && p_filter->fmt_in.video.i_chroma != VLC_CODEC_YV12
- && p_filter->fmt_in.video.i_chroma != VLC_FOURCC('I','4','2','2')
- && p_filter->fmt_in.video.i_chroma != VLC_FOURCC('J','4','2','2')
+ && p_filter->fmt_in.video.i_chroma != VLC_CODEC_I422
+ && p_filter->fmt_in.video.i_chroma != VLC_CODEC_J422
)
{
/* We only want planar YUV 4:2:0 or 4:2:2 */
return NULL;
}
- if( p_pic->format.i_chroma == VLC_FOURCC('Y','U','V','A') )
+ if( p_pic->format.i_chroma == VLC_CODEC_YUVA )
{
/* We don't want to invert the alpha plane */
i_planes = p_pic->i_planes - 1;
memset( &fmt_in, 0, sizeof(video_format_t) );
memset( &fmt_out, 0, sizeof(video_format_t) );
- fmt_out.i_chroma = VLC_FOURCC('Y','U','V','A');
+ fmt_out.i_chroma = VLC_CODEC_YUVA;
p_image = image_HandlerCreate( p_this );
p_pic = image_ReadUrl( p_image, psz_filename, &fmt_in, &fmt_out );
image_HandlerDelete( p_image );
p_sys->p_blend->fmt_in.video.i_y_offset = 0;
p_sys->p_blend->fmt_out.video.i_aspect = p_vout->render.i_aspect;
p_sys->p_blend->fmt_out.video.i_chroma = p_vout->output.i_chroma;
- p_sys->p_blend->fmt_in.video.i_chroma = VLC_FOURCC('Y','U','V','A');
+ p_sys->p_blend->fmt_in.video.i_chroma = VLC_CODEC_YUVA;
p_sys->p_blend->fmt_in.video.i_aspect = VOUT_ASPECT_FACTOR;
p_sys->i_width =
p_sys->p_blend->fmt_in.video.i_width =
/* Create new SPU region */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('Y','U','V','A');
+ fmt.i_chroma = VLC_CODEC_YUVA;
fmt.i_aspect = VOUT_ASPECT_FACTOR;
fmt.i_sar_num = fmt.i_sar_den = 1;
fmt.i_width = fmt.i_visible_width = p_pic->p[Y_PLANE].i_visible_pitch;
switch( p_vout->fmt_in.i_chroma )
{
CASE_PLANAR_YUV
- case VLC_FOURCC('G','R','E','Y'):
+ case VLC_CODEC_GREY:
break;
default:
msg_Err( p_vout, "Unsupported chroma" );
goto out;
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('T','E','X','T');
+ fmt.i_chroma = VLC_CODEC_TEXT;
fmt.i_aspect = 0;
fmt.i_width = fmt.i_height = 0;
fmt.i_x_offset = 0;
fmt_in.i_height = p_es->p_picture->format.i_height;
fmt_in.i_width = p_es->p_picture->format.i_width;
- if( fmt_in.i_chroma == VLC_FOURCC('Y','U','V','A') ||
- fmt_in.i_chroma == VLC_FOURCC('R','G','B','A') )
- fmt_out.i_chroma = VLC_FOURCC('Y','U','V','A');
+ if( fmt_in.i_chroma == VLC_CODEC_YUVA ||
+ fmt_in.i_chroma == VLC_CODEC_RGBA )
+ fmt_out.i_chroma = VLC_CODEC_YUVA;
else
- fmt_out.i_chroma = VLC_FOURCC('I','4','2','0');
+ fmt_out.i_chroma = VLC_CODEC_I420;
fmt_out.i_width = col_inner_width;
fmt_out.i_height = row_inner_height;
int i_chroma_dy;
switch( p_inpic->format.i_chroma )
{
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('I','Y','U','V'):
- case VLC_FOURCC('J','4','2','0'):
- case VLC_FOURCC('Y','V','1','2'):
+ case VLC_CODEC_I420:
+ case VLC_CODEC_J420:
+ case VLC_CODEC_YV12:
i_chroma_dx = 2;
i_chroma_dy = 2;
break;
- case VLC_FOURCC('I','4','2','2'):
- case VLC_FOURCC('J','4','2','2'):
+ case VLC_CODEC_I422:
+ case VLC_CODEC_J422:
i_chroma_dx = 2;
i_chroma_dy = 1;
break;
msg_Err( p_filter, "no image" );
return NULL;
}
- if ((p_pic->format.i_chroma != VLC_FOURCC('I','4','2','0')))
+ if ((p_pic->format.i_chroma != VLC_CODEC_I420))
{
msg_Err( p_filter, "wrong chroma - use I420" );
return NULL;
fmt.i_y_offset = fmt.i_y_offset * p_sys->f_scale;
if (p_sys->i_internal_chroma == GREY)
- fmt.i_chroma = VLC_FOURCC('I','4','2','0');
+ fmt.i_chroma = VLC_CODEC_I420;
else if (p_sys->i_internal_chroma == RGB)
- fmt.i_chroma = VLC_FOURCC('R','V','3','2');
+ fmt.i_chroma = VLC_CODEC_RGB32;
}
/* Load the internal opencv filter */
//rgb2 gives 3 separate planes, this gives 1 interleaved plane
//rv24 gives is about 20% faster but gives r&b the wrong way round
//and I cant think of an easy way to fix this
- fmt_out.i_chroma = VLC_FOURCC('R','V','3','2');
+ fmt_out.i_chroma = VLC_CODEC_RGB32;
}
else if (p_sys->i_internal_chroma == GREY)
{
//take the I (gray) plane (video seems to commonly be in this fmt so usually the
//conversion does nothing)
- fmt_out.i_chroma = VLC_FOURCC('I','4','2','0');
+ fmt_out.i_chroma = VLC_CODEC_I420;
}
//convert from the input image
MouseEvent, p_sys );
}
- es_format_Init( &p_filter->fmt_out, SPU_ES, VLC_FOURCC( 's','p','u',' ' ) );
+ es_format_Init( &p_filter->fmt_out, SPU_ES, VLC_CODEC_SPU );
p_filter->fmt_out.i_priority = 0;
return VLC_SUCCESS;
/* Create new SPU region */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC( 'T','E','X','T' );
+ fmt.i_chroma = VLC_CODEC_TEXT;
fmt.i_aspect = VOUT_ASPECT_FACTOR;
fmt.i_sar_num = fmt.i_sar_den = 1;
fmt.i_width = fmt.i_visible_width = i_width;
/* Create new SPU region */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = (p_pic == NULL) ? VLC_FOURCC('Y','U','V','P') : VLC_FOURCC('Y','U','V','A');
+ fmt.i_chroma = (p_pic == NULL) ? VLC_CODEC_YUVP : VLC_CODEC_YUVA;
fmt.i_aspect = VOUT_ASPECT_FACTOR;
fmt.i_sar_num = fmt.i_sar_den = 1;
fmt.i_width = fmt.i_visible_width = i_width;
fmt.i_height = fmt.i_visible_height = i_height;
fmt.i_x_offset = fmt.i_y_offset = 0;
- if( fmt.i_chroma == VLC_FOURCC('Y','U','V','P') )
+ if( fmt.i_chroma == VLC_CODEC_YUVP )
{
fmt.p_palette = &palette;
fmt.p_palette->i_entries = 0;
p_vout->pf_manage = NULL;
/* Color Format not supported
// Planar Y, packed UV
-case VLC_FOURCC('Y','M','G','A'):
+case VLC_CODEC_YMGA:
// Packed YUV 4:2:2, U:Y:V:Y, interlaced
case VLC_FOURCC('I','U','Y','V'): // packed by 2
// Packed YUV 2:1:1, Y:U:Y:V
-case VLC_FOURCC('Y','2','1','1'): // packed by 4
+case VLC_CODEC_Y211: // packed by 4
// Packed YUV Reverted
-case VLC_FOURCC('c','y','u','v'): // packed by 2
+case VLC_CODEC_CYUV: // packed by 2
*/
switch (p_vout->render.i_chroma)
{
// planar YUV
- case VLC_FOURCC('I','4','4','4'):
- case VLC_FOURCC('I','4','2','2'):
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('Y','V','1','2'):
- case VLC_FOURCC('I','Y','U','V'):
- case VLC_FOURCC('I','4','1','1'):
- case VLC_FOURCC('I','4','1','0'):
- case VLC_FOURCC('Y','V','U','9'):
- case VLC_FOURCC('Y','U','V','A'):
+ case VLC_CODEC_I444:
+ case VLC_CODEC_I422:
+ case VLC_CODEC_I420:
+ case VLC_CODEC_YV12:
+ case VLC_CODEC_I411:
+ case VLC_CODEC_I410:
+ case VLC_CODEC_YUVA:
p_vout->pf_render = RenderPlanarYUV;
break;
// packed RGB
- case VLC_FOURCC('R','G','B','2'): // packed by 1
- case VLC_FOURCC('R','V','1','5'): // packed by 2
- case VLC_FOURCC('R','V','1','6'): // packed by 2
- case VLC_FOURCC('R','V','2','4'): // packed by 3
- case VLC_FOURCC('R','V','3','2'): // packed by 4
+ case VLC_CODEC_RGB8: // packed by 1
+ case VLC_CODEC_RGB15: // packed by 2
+ case VLC_CODEC_RGB16: // packed by 2
+ case VLC_CODEC_RGB24: // packed by 3
+ case VLC_CODEC_RGB32: // packed by 4
p_vout->pf_render = RenderPackedRGB;
break;
#ifdef PACKED_YUV
// packed YUV
- case VLC_FOURCC('Y','U','Y','2'): // packed by 2
- case VLC_FOURCC('Y','U','N','V'): // packed by 2
- case VLC_FOURCC('U','Y','V','Y'): // packed by 2
- case VLC_FOURCC('U','Y','N','V'): // packed by 2
- case VLC_FOURCC('Y','4','2','2'): // packed by 2
+ case VLC_CODEC_YUYV: // packed by 2
+ case VLC_CODEC_UYVY: // packed by 2
p_vout->pf_render = RenderPackedYUV;
break;
#endif
switch (p_vout->render.i_chroma)
{
// planar YVU
- case VLC_FOURCC('Y','V','1','2'):
- case VLC_FOURCC('Y','V','U','9'):
+ case VLC_CODEC_YV12:
// packed UYV
- case VLC_FOURCC('U','Y','V','Y'): // packed by 2
- case VLC_FOURCC('U','Y','N','V'): // packed by 2
- case VLC_FOURCC('Y','4','2','2'): // packed by 2
- // case VLC_FOURCC('c','y','u','v'): // packed by 2
+ case VLC_CODEC_UYVY: // packed by 2
+ // case VLC_CODEC_CYUV: // packed by 2
VLC_XCHG( float, p_vout->p_sys->f_gamma[1], p_vout->p_sys->f_gamma[2] );
VLC_XCHG( float, f_BlackCrush[1], f_BlackCrush[2] );
VLC_XCHG( float, f_WhiteCrush[1], f_WhiteCrush[2] );
VLC_XCHG( float, f_BlackLevel[1], f_BlackLevel[2] );
VLC_XCHG( float, f_WhiteLevel[1], f_WhiteLevel[2] );
// planar YUV
- case VLC_FOURCC('I','4','4','4'):
- case VLC_FOURCC('I','4','2','2'):
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('I','4','1','1'):
- case VLC_FOURCC('I','4','1','0'):
- case VLC_FOURCC('I','Y','U','V'):
- case VLC_FOURCC('Y','U','V','A'):
+ case VLC_CODEC_I444:
+ case VLC_CODEC_I422:
+ case VLC_CODEC_I420:
+ case VLC_CODEC_I411:
+ case VLC_CODEC_I410:
+ case VLC_CODEC_YUVA:
// packed YUV
- case VLC_FOURCC('Y','U','Y','2'): // packed by 2
- case VLC_FOURCC('Y','U','N','V'): // packed by 2
+ case VLC_CODEC_YUYV: // packed by 2
for (i_index = 0; i_index < 256; i_index++)
for (i_index2 = 0; i_index2 <= ACCURACY; i_index2++)
for (i_plane = 0; i_plane < VOUT_MAX_PLANES; i_plane++)
}
break;
// packed RGB
- case VLC_FOURCC('R','G','B','2'): // packed by 1
- case VLC_FOURCC('R','V','1','5'): // packed by 2
- case VLC_FOURCC('R','V','1','6'): // packed by 2
- case VLC_FOURCC('R','V','2','4'): // packed by 3
- case VLC_FOURCC('R','V','3','2'): // packed by 4
+ case VLC_CODEC_RGB8: // packed by 1
+ case VLC_CODEC_RGB15: // packed by 2
+ case VLC_CODEC_RGB16: // packed by 2
+ case VLC_CODEC_RGB24: // packed by 3
+ case VLC_CODEC_RGB32: // packed by 4
for (i_index = 0; i_index < 256; i_index++)
for (i_index2 = 0; i_index2 <= ACCURACY; i_index2++)
for (i_plane = 0; i_plane < VOUT_MAX_PLANES; i_plane++)
#endif
switch (p_vout->output.i_chroma)
{
- case VLC_FOURCC('Y','U','Y','2'): // packed by 2
- case VLC_FOURCC('Y','U','N','V'): // packed by 2
+ case VLC_CODEC_YUYV: // packed by 2
Denom = F2(length / p_pic->p->i_pixel_pitch);
a_2 = p_vout->p_sys->a_2 * (ACCURACY / 100);
a_1 = p_vout->p_sys->a_1 * 2 * p_vout->p_sys->i_halfLength * (ACCURACY / 100);
p_vout->p_sys->cstYUV[i_col][1][i_index + 1] = p_vout->p_sys->cstYUV[i_col][1][i_index];
}
break;
- case VLC_FOURCC('U','Y','V','Y'): // packed by 2
- case VLC_FOURCC('U','Y','N','V'): // packed by 2
- case VLC_FOURCC('Y','4','2','2'): // packed by 2
+ case VLC_CODEC_UYVY: // packed by 2
Denom = F2(length / p_pic->p->i_pixel_pitch);
a_2 = p_vout->p_sys->a_2 * (ACCURACY / 100);
a_1 = p_vout->p_sys->a_1 * 2 * p_vout->p_sys->i_halfLength * (ACCURACY / 100);
#endif
switch (p_vout->output.i_chroma)
{
- case VLC_FOURCC('Y','U','Y','2'): // packed by 2
- case VLC_FOURCC('Y','U','N','V'): // packed by 2
+ case VLC_CODEC_YUYV: // packed by 2
Denom = F2(length / p_pic->p->i_pixel_pitch);
a_2 = p_vout->p_sys->a_2 * (ACCURACY / 100);
a_1 = p_vout->p_sys->a_1 * 2 * p_vout->p_sys->i_halfHeight * (ACCURACY / 100);
p_vout->p_sys->cstYUV2[i_row][1][i_index + 1] = p_vout->p_sys->cstYUV2[i_row][1][i_index];
}
break;
- case VLC_FOURCC('U','Y','V','Y'): // packed by 2
- case VLC_FOURCC('U','Y','N','V'): // packed by 2
- case VLC_FOURCC('Y','4','2','2'): // packed by 2
+ case VLC_CODEC_UYVY: // packed by 2
Denom = F2(length / p_pic->p->i_pixel_pitch);
a_2 = p_vout->p_sys->a_2 * (ACCURACY / 100);
a_1 = p_vout->p_sys->a_1 * 2 * p_vout->p_sys->i_halfHeight * (ACCURACY / 100);
switch( p_filter->fmt_in.video.i_chroma )
{
- case VLC_FOURCC('I','4','4','4'):
- case VLC_FOURCC('J','4','4','4'):
- /* case VLC_FOURCC('Y','U','V','A'): FIXME Should work but alpha plane needs to be copied manually and I'm kind of feeling too lazy to write the code to do that ATM (i_pitch vs i_visible_pitch...). */
+ case VLC_CODEC_I444:
+ case VLC_CODEC_J444:
+ /* case VLC_CODEC_YUVA: FIXME Should work but alpha plane needs to be copied manually and I'm kind of feeling too lazy to write the code to do that ATM (i_pitch vs i_visible_pitch...). */
i_flags |= PP_FORMAT_444;
break;
- case VLC_FOURCC('I','4','2','2'):
- case VLC_FOURCC('J','4','2','2'):
+ case VLC_CODEC_I422:
+ case VLC_CODEC_J422:
i_flags |= PP_FORMAT_422;
break;
- case VLC_FOURCC('I','4','1','1'):
+ case VLC_CODEC_I411:
i_flags |= PP_FORMAT_411;
break;
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('I','Y','U','V'):
- case VLC_FOURCC('J','4','2','0'):
- case VLC_FOURCC('Y','V','1','2'):
+ case VLC_CODEC_I420:
+ case VLC_CODEC_J420:
+ case VLC_CODEC_YV12:
i_flags |= PP_FORMAT_420;
break;
default:
KeyEvent, p_this );
}
- es_format_Init( &p_filter->fmt_out, SPU_ES, VLC_FOURCC( 's','p','u',' ' ) );
+ es_format_Init( &p_filter->fmt_out, SPU_ES, VLC_CODEC_SPU );
p_filter->fmt_out.i_priority = 0;
vlc_gcrypt_init();
/* Create an empty picture for VNC the data */
vlc_mutex_lock( &p_sys->lock );
- p_sys->p_pic = picture_New( VLC_FOURCC('Y','U','V','A'),
+ p_sys->p_pic = picture_New( VLC_CODEC_YUVA,
p_sys->i_vnc_width, p_sys->i_vnc_height, VOUT_ASPECT_FACTOR );
if( !p_sys->p_pic )
{
/* Create new SPU region */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('Y','U','V','A');
+ fmt.i_chroma = VLC_CODEC_YUVA;
fmt.i_aspect = VOUT_ASPECT_FACTOR;
fmt.i_sar_num = fmt.i_sar_den = 1;
fmt.i_width = fmt.i_visible_width = p_pic->p[Y_PLANE].i_visible_pitch;
return NULL;
}
- fmt.i_chroma = VLC_FOURCC('T','E','X','T');
+ fmt.i_chroma = VLC_CODEC_TEXT;
p_spu->p_region = subpicture_region_New( &fmt );
if( !p_spu->p_region )
memset( &fmt_out, 0, sizeof(video_format_t) );
- fmt_out.i_chroma = VLC_FOURCC('Y','U','V','A');
+ fmt_out.i_chroma = VLC_CODEC_YUVA;
fmt_out.i_aspect = VOUT_ASPECT_FACTOR;
fmt_out.i_sar_num = fmt_out.i_sar_den = 1;
fmt_out.i_width =
memset( &fmt_in, 0, sizeof(video_format_t) );
memset( &fmt_out, 0, sizeof(video_format_t) );
- fmt_out.i_chroma = VLC_FOURCC('Y','U','V','A');
+ fmt_out.i_chroma = VLC_CODEC_YUVA;
p_orig = image_ReadUrl( p_handler, psz_url, &fmt_in, &fmt_out );
if( !p_orig )
else if( p_sys->p_style->i_font_size > 0 )
{
- fmt_in.i_chroma = VLC_FOURCC('Y','U','V','A');
+ fmt_in.i_chroma = VLC_CODEC_YUVA;
fmt_in.i_height = p_orig->p[Y_PLANE].i_visible_lines;
fmt_in.i_width = p_orig->p[Y_PLANE].i_visible_pitch;
fmt_out.i_width = p_orig->p[Y_PLANE].i_visible_pitch
filter_sys_t *p_sys;
/* XXX Only support RV24 -> RV32 conversion */
- if( p_filter->fmt_in.video.i_chroma != VLC_FOURCC('R','V','2','4') ||
- (p_filter->fmt_out.video.i_chroma != VLC_FOURCC('R', 'V', '3', '2') &&
- p_filter->fmt_out.video.i_chroma != VLC_FOURCC('R', 'G', 'B', 'A')) )
+ if( p_filter->fmt_in.video.i_chroma != VLC_CODEC_RGB24 ||
+ (p_filter->fmt_out.video.i_chroma != VLC_CODEC_RGB32 &&
+ p_filter->fmt_out.video.i_chroma != VLC_CODEC_RGBA) )
{
return VLC_EGENERIC;
}
filter_t *p_filter = (filter_t*)p_this;
filter_sys_t *p_sys;
- if( ( p_filter->fmt_in.video.i_chroma != VLC_FOURCC('Y','U','V','P') &&
- p_filter->fmt_in.video.i_chroma != VLC_FOURCC('Y','U','V','A') &&
- p_filter->fmt_in.video.i_chroma != VLC_FOURCC('I','4','2','0') &&
- p_filter->fmt_in.video.i_chroma != VLC_FOURCC('Y','V','1','2') &&
- p_filter->fmt_in.video.i_chroma != VLC_FOURCC('R','V','3','2') &&
- p_filter->fmt_in.video.i_chroma != VLC_FOURCC('R','G','B','A') ) ||
+ if( ( p_filter->fmt_in.video.i_chroma != VLC_CODEC_YUVP &&
+ p_filter->fmt_in.video.i_chroma != VLC_CODEC_YUVA &&
+ p_filter->fmt_in.video.i_chroma != VLC_CODEC_I420 &&
+ p_filter->fmt_in.video.i_chroma != VLC_CODEC_YV12 &&
+ p_filter->fmt_in.video.i_chroma != VLC_CODEC_RGB32 &&
+ p_filter->fmt_in.video.i_chroma != VLC_CODEC_RGBA ) ||
p_filter->fmt_in.video.i_chroma != p_filter->fmt_out.video.i_chroma )
{
return VLC_EGENERIC;
return NULL;
}
- if( p_filter->fmt_in.video.i_chroma != VLC_FOURCC('R','G','B','A') &&
- p_filter->fmt_in.video.i_chroma != VLC_FOURCC('R','V','3','2') )
+ if( p_filter->fmt_in.video.i_chroma != VLC_CODEC_RGBA &&
+ p_filter->fmt_in.video.i_chroma != VLC_CODEC_RGB32 )
{
for( i_plane = 0; i_plane < p_pic_dst->i_planes; i_plane++ )
{
if( p_fmti->i_chroma == p_fmto->i_chroma )
{
- if( p_fmti->i_chroma == VLC_FOURCC( 'Y', 'U', 'V', 'P' ) && ALLOW_YUVP )
+ if( p_fmti->i_chroma == VLC_CODEC_YUVP && ALLOW_YUVP )
{
i_fmti = i_fmto = PIX_FMT_GRAY8;
i_sws_flags = SWS_POINT;
}
}
- if( p_fmti->i_chroma == VLC_FOURCC( 'Y', 'U', 'V', 'A' ) )
+ if( p_fmti->i_chroma == VLC_CODEC_YUVA )
{
i_fmti = PIX_FMT_YUV444P;
b_has_ai = true;
}
- else if( p_fmti->i_chroma == VLC_FOURCC( 'R', 'G', 'B', 'A' ) )
+ else if( p_fmti->i_chroma == VLC_CODEC_RGBA )
{
i_fmti = PIX_FMT_BGR32;
b_has_ai = true;
}
- if( p_fmto->i_chroma == VLC_FOURCC( 'Y', 'U', 'V', 'A' ) )
+ if( p_fmto->i_chroma == VLC_CODEC_YUVA )
{
i_fmto = PIX_FMT_YUV444P;
b_has_ao = true;
}
- else if( p_fmto->i_chroma == VLC_FOURCC( 'R', 'G', 'B', 'A' ) )
+ else if( p_fmto->i_chroma == VLC_CODEC_RGBA )
{
i_fmto = PIX_FMT_BGR32;
b_has_ao = true;
}
if( p_sys->ctxA )
{
- p_sys->p_src_a = picture_New( VLC_FOURCC( 'G', 'R', 'E', 'Y' ), i_fmti_width, p_fmti->i_height, 0 );
- p_sys->p_dst_a = picture_New( VLC_FOURCC( 'G', 'R', 'E', 'Y' ), i_fmto_width, p_fmto->i_height, 0 );
+ p_sys->p_src_a = picture_New( VLC_CODEC_GREY, i_fmti_width, p_fmti->i_height, 0 );
+ p_sys->p_dst_a = picture_New( VLC_CODEC_GREY, i_fmto_width, p_fmto->i_height, 0 );
}
if( p_sys->i_extend_factor != 1 )
{
uint8_t *dst[3]; int dst_stride[3];
GetPixels( src, src_stride, p_src, i_plane_start, i_plane_count );
- if( p_filter->fmt_in.video.i_chroma == VLC_FOURCC( 'R', 'G', 'B', 'P' ) )
+ if( p_filter->fmt_in.video.i_chroma == VLC_CODEC_RGBP )
{
memset( palette, 0, sizeof(palette) );
if( p_filter->fmt_in.video.p_palette )
if( p_sys->ctxA )
{
/* We extract the A plane to rescale it, and then we reinject it. */
- if( p_fmti->i_chroma == VLC_FOURCC( 'R', 'G', 'B', 'A' ) )
+ if( p_fmti->i_chroma == VLC_CODEC_RGBA )
ExtractA( p_sys->p_src_a, p_src, p_fmti->i_width * p_sys->i_extend_factor, p_fmti->i_height );
else
plane_CopyPixels( p_sys->p_src_a->p, p_src->p+A_PLANE );
Convert( p_filter, p_sys->ctxA, p_sys->p_dst_a, p_sys->p_src_a, p_fmti->i_height, 0, 1 );
- if( p_fmto->i_chroma == VLC_FOURCC( 'R', 'G', 'B', 'A' ) )
+ if( p_fmto->i_chroma == VLC_CODEC_RGBA )
InjectA( p_dst, p_sys->p_dst_a, p_fmto->i_width * p_sys->i_extend_factor, p_fmto->i_height );
else
plane_CopyPixels( p_dst->p+A_PLANE, p_sys->p_dst_a->p );
else if( p_sys->b_add_a )
{
/* We inject a complete opaque alpha plane */
- if( p_fmto->i_chroma == VLC_FOURCC( 'R', 'G', 'B', 'A' ) )
+ if( p_fmto->i_chroma == VLC_CODEC_RGBA )
FillA( &p_dst->p[0], OFFSET_A );
else
FillA( &p_dst->p[A_PLANE], 0 );
return VLC_SUCCESS;
}
- if( ( p_filter->fmt_in.video.i_chroma != VLC_FOURCC('I','4','2','0') &&
- p_filter->fmt_in.video.i_chroma != VLC_FOURCC('I','Y','U','V') &&
- p_filter->fmt_in.video.i_chroma != VLC_FOURCC('Y','V','1','2') ) ||
+ if( ( p_filter->fmt_in.video.i_chroma != VLC_CODEC_I420 &&
+ p_filter->fmt_in.video.i_chroma != VLC_CODEC_YV12 ) ||
p_filter->fmt_out.video.i_chroma != VLC_FOURCC('Y','4','2','0') )
{
msg_Err( p_filter, "format not supported" );
switch( p_vout->fmt_in.i_chroma )
{
CASE_PLANAR_YUV_SQUARE
- case VLC_FOURCC('G','R','E','Y'):
+ case VLC_CODEC_GREY:
p_vout->p_sys->pf_filter = FilterPlanar;
break;
- case VLC_FOURCC('I','4','2','2'):
- case VLC_FOURCC('J','4','2','2'):
+ case VLC_CODEC_I422:
+ case VLC_CODEC_J422:
p_vout->p_sys->pf_filter = FilterI422;
break;
/* It only supports YUVP to YUVA/RGBA without scaling
* (if scaling is required another filter can do it) */
- if( p_filter->fmt_in.video.i_chroma != VLC_FOURCC('Y','U','V','P') ||
- ( p_filter->fmt_out.video.i_chroma != VLC_FOURCC('Y','U','V','A') &&
- p_filter->fmt_out.video.i_chroma != VLC_FOURCC('R','G','B','A') ) ||
+ if( p_filter->fmt_in.video.i_chroma != VLC_CODEC_YUVP ||
+ ( p_filter->fmt_out.video.i_chroma != VLC_CODEC_YUVA &&
+ p_filter->fmt_out.video.i_chroma != VLC_CODEC_RGBA ) ||
p_filter->fmt_in.video.i_width != p_filter->fmt_out.video.i_width ||
p_filter->fmt_in.video.i_height != p_filter->fmt_out.video.i_height )
{
const video_palette_t *p_yuvp = p_filter->fmt_in.video.p_palette;
assert( p_yuvp != NULL );
- assert( p_filter->fmt_in.video.i_chroma == VLC_FOURCC('Y','U','V','P') );
+ assert( p_filter->fmt_in.video.i_chroma == VLC_CODEC_YUVP );
assert( p_filter->fmt_in.video.i_width == p_filter->fmt_out.video.i_width );
assert( p_filter->fmt_in.video.i_height == p_filter->fmt_out.video.i_height );
return NULL;
}
- if( p_filter->fmt_out.video.i_chroma == VLC_FOURCC('Y','U','V','A') )
+ if( p_filter->fmt_out.video.i_chroma == VLC_CODEC_YUVA )
{
for( unsigned int y = 0; y < p_filter->fmt_in.video.i_height; y++ )
{
}
else
{
- assert( p_filter->fmt_out.video.i_chroma == VLC_FOURCC('R','G','B','A') );
+ assert( p_filter->fmt_out.video.i_chroma == VLC_CODEC_RGBA );
/* Create a RGBA palette */
video_palette_t rgbp;
I_OUTPUTPICTURES = 0;
- p_vout->output.i_chroma = VLC_FOURCC('R','G','B','2');
+ p_vout->output.i_chroma = VLC_CODEC_RGB8;
p_vout->output.i_width = p_vout->p_sys->i_width;
p_vout->output.i_height = p_vout->p_sys->i_height;
p_vout->output.i_aspect = p_vout->p_sys->i_width
I_OUTPUTPICTURES = 0;
- p_vout->output.i_chroma = VLC_FOURCC('R','V','3','2');
+ p_vout->output.i_chroma = VLC_CODEC_RGB32;
p_vout->output.i_width = p_vout->render.i_width;
p_vout->output.i_height = p_vout->render.i_height;
p_vout->output.i_aspect = p_vout->render.i_aspect;
i_goffset = 2;
i_blength = 2;
i_boffset = 0;
- p_vout->output.i_chroma = VLC_FOURCC('R','G','B','2');
+ p_vout->output.i_chroma = VLC_CODEC_RGB8;
break;
case DSPF_RGB16:
i_goffset = 5;
i_blength = 5;
i_boffset = 0;
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','6');
+ p_vout->output.i_chroma = VLC_CODEC_RGB16
break;
case DSPF_RGB24:
i_goffset = 8;
i_blength = 8;
i_boffset = 0;
- p_vout->output.i_chroma = VLC_FOURCC('R','V','2','4');
+ p_vout->output.i_chroma = VLC_CODEC_RGB24;
break;
case DSPF_RGB32:
i_goffset = 8;
i_blength = 8;
i_boffset = 0;
- p_vout->output.i_chroma = VLC_FOURCC('R','V','3','2');
+ p_vout->output.i_chroma = VLC_CODEC_RGB32;
break;
default:
{
if( strlen( psz_chroma ) == 4 )
{
- p_sys->i_chroma = VLC_FOURCC( psz_chroma[0],
- psz_chroma[1],
- psz_chroma[2],
- psz_chroma[3] );
+ p_sys->i_chroma = vlc_fourcc_GetCodec( VIDEO_ES,
+ VLC_FOURCC( psz_chroma[0],
+ psz_chroma[1],
+ psz_chroma[2],
+ psz_chroma[3] ) );
msg_Dbg( p_vout, "forcing chroma '%s'", psz_chroma );
}
else
switch( p_sys->var_info.bits_per_pixel )
{
case 8: /* FIXME: set the palette */
- p_vout->output.i_chroma = VLC_FOURCC('R','G','B','2'); break;
+ p_vout->output.i_chroma = VLC_CODEC_RGB8; break;
case 15:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','5'); break;
+ p_vout->output.i_chroma = VLC_CODEC_RGB15; break;
case 16:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','6'); break;
+ p_vout->output.i_chroma = VLC_CODEC_RGB16; break;
case 24:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','2','4'); break;
+ p_vout->output.i_chroma = VLC_CODEC_RGB24; break;
case 32:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','3','2'); break;
+ p_vout->output.i_chroma = VLC_CODEC_RGB32; break;
default:
msg_Err( p_vout, "unknown screen depth %i",
p_vout->p_sys->var_info.bits_per_pixel );
switch( p_vout->p_sys->i_bits_per_pixel )
{
case 8:
- p_vout->output.i_chroma = VLC_FOURCC('R','G','B','2');
+ p_vout->output.i_chroma = VLC_CODEC_RGB8;
p_vout->output.pf_setpalette = SetPalette;
break;
case 15:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','5'); break;
+ p_vout->output.i_chroma = VLC_CODEC_RGB15; break;
case 16:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','6'); break;
+ p_vout->output.i_chroma = VLC_CODEC_RGB16; break;
case 24:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','2','4'); break;
+ p_vout->output.i_chroma = VLC_CODEC_RGB24; break;
case 32:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','3','2'); break;
+ p_vout->output.i_chroma = VLC_CODEC_RGB32; break;
default:
msg_Err( p_vout, "unknown screen depth %i",
p_vout->p_sys->i_bits_per_pixel );
I_OUTPUTPICTURES = 0;
- p_vout->output.i_chroma = VLC_FOURCC('R','G','B','2');
+ p_vout->output.i_chroma = VLC_CODEC_RGB8;
p_vout->output.i_width = p_vout->p_sys->i_width;
p_vout->output.i_height = p_vout->p_sys->i_height;
p_vout->output.i_aspect = p_vout->p_sys->i_width
switch( p_vout->p_sys->i_screen_depth )
{
case 8: /* FIXME: set the palette */
- p_vout->output.i_chroma = VLC_FOURCC('R','G','B','2'); break;
+ p_vout->output.i_chroma = VLC_CODEC_RGB8; break;
case 15:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','5'); break;
+ p_vout->output.i_chroma = VLC_CODEC_RGB15; break;
case 16:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','6'); break;
+ p_vout->output.i_chroma = VLC_CODEC_RGB16; break;
case 24:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','2','4'); break;
+ p_vout->output.i_chroma = VLC_CODEC_RGB24; break;
case 32:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','3','2'); break;
+ p_vout->output.i_chroma = VLC_CODEC_RGB32; break;
default:
msg_Err( p_vout, "unknown screen depth %i",
p_vout->p_sys->i_screen_depth );
/* Assume we only do YMGA for the moment. XXX: mga_vid calls this
* YV12, but it's actually some strange format with packed UV. */
- p_vout->output.i_chroma = VLC_FOURCC('Y','M','G','A');
+ p_vout->output.i_chroma = VLC_CODEC_YMGA;
p_vout->p_sys->mga.format = MGA_VID_FORMAT_YV12;
if( ioctl(p_vout->p_sys->i_fd, MGA_VID_CONFIG, &p_vout->p_sys->mga) )
/* it sounds like vista does not support YUV surfaces at all */
switch( i_chroma )
{
- case VLC_FOURCC('U','Y','V','Y'):
- case VLC_FOURCC('U','Y','N','V'):
- case VLC_FOURCC('Y','4','2','2'):
+ case VLC_CODEC_UYVY:
{
static const D3DFORMAT formats[] =
{ D3DFMT_UYVY, D3DFMT_YUY2, D3DFMT_X8R8G8B8, D3DFMT_A8R8G8B8, D3DFMT_R5G6B5, D3DFMT_X1R5G5B5 };
return Direct3DVoutSelectFormat(p_vout, target, formats, sizeof(formats)/sizeof(D3DFORMAT));
}
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('I','4','2','2'):
- case VLC_FOURCC('Y','V','1','2'):
+ case VLC_CODEC_I420:
+ case VLC_CODEC_I422:
+ case VLC_CODEC_YV12:
{
/* typically 3D textures don't support planar format
** fallback to packed version and use CPU for the conversion
{ D3DFMT_YUY2, D3DFMT_UYVY, D3DFMT_X8R8G8B8, D3DFMT_A8R8G8B8, D3DFMT_R5G6B5, D3DFMT_X1R5G5B5 };
return Direct3DVoutSelectFormat(p_vout, target, formats, sizeof(formats)/sizeof(D3DFORMAT));
}
- case VLC_FOURCC('Y','U','Y','2'):
- case VLC_FOURCC('Y','U','N','V'):
+ case VLC_CODEC_YUYV:
{
static const D3DFORMAT formats[] =
{ D3DFMT_YUY2, D3DFMT_UYVY, D3DFMT_X8R8G8B8, D3DFMT_A8R8G8B8, D3DFMT_R5G6B5, D3DFMT_X1R5G5B5 };
switch( i_chroma )
{
- case VLC_FOURCC('R', 'V', '1', '5'):
+ case VLC_CODEC_RGB15:
{
static const D3DFORMAT formats[] =
{ D3DFMT_X1R5G5B5 };
return Direct3DVoutSelectFormat(p_vout, target, formats, sizeof(formats)/sizeof(D3DFORMAT));
}
- case VLC_FOURCC('R', 'V', '1', '6'):
+ case VLC_CODEC_RGB16:
{
static const D3DFORMAT formats[] =
{ D3DFMT_R5G6B5 };
return Direct3DVoutSelectFormat(p_vout, target, formats, sizeof(formats)/sizeof(D3DFORMAT));
}
- case VLC_FOURCC('R', 'V', '2', '4'):
+ case VLC_CODEC_RGB24:
{
static const D3DFORMAT formats[] =
{ D3DFMT_R8G8B8, D3DFMT_X8R8G8B8, D3DFMT_A8R8G8B8 };
return Direct3DVoutSelectFormat(p_vout, target, formats, sizeof(formats)/sizeof(D3DFORMAT));
}
- case VLC_FOURCC('R', 'V', '3', '2'):
+ case VLC_CODEC_RGB32:
{
static const D3DFORMAT formats[] =
{ D3DFMT_A8R8G8B8, D3DFMT_X8R8G8B8 };
switch( format )
{
case D3DFMT_YUY2:
- p_vout->output.i_chroma = VLC_FOURCC('Y', 'U', 'Y', '2');
+ p_vout->output.i_chroma = VLC_CODEC_YUYV;
break;
case D3DFMT_UYVY:
- p_vout->output.i_chroma = VLC_FOURCC('U', 'Y', 'V', 'Y');
+ p_vout->output.i_chroma = VLC_CODEC_UYVY;
break;
case D3DFMT_R8G8B8:
- p_vout->output.i_chroma = VLC_FOURCC('R', 'V', '2', '4');
+ p_vout->output.i_chroma = VLC_CODEC_RGB24;
p_vout->output.i_rmask = 0xff0000;
p_vout->output.i_gmask = 0x00ff00;
p_vout->output.i_bmask = 0x0000ff;
break;
case D3DFMT_X8R8G8B8:
case D3DFMT_A8R8G8B8:
- p_vout->output.i_chroma = VLC_FOURCC('R', 'V', '3', '2');
+ p_vout->output.i_chroma = VLC_CODEC_RGB32;
p_vout->output.i_rmask = 0x00ff0000;
p_vout->output.i_gmask = 0x0000ff00;
p_vout->output.i_bmask = 0x000000ff;
break;
case D3DFMT_R5G6B5:
- p_vout->output.i_chroma = VLC_FOURCC('R', 'V', '1', '6');
+ p_vout->output.i_chroma = VLC_CODEC_RGB16;
p_vout->output.i_rmask = (0x1fL)<<11;
p_vout->output.i_gmask = (0x3fL)<<5;
p_vout->output.i_bmask = (0x1fL)<<0;
break;
case D3DFMT_X1R5G5B5:
- p_vout->output.i_chroma = VLC_FOURCC('R', 'V', '1', '5');
+ p_vout->output.i_chroma = VLC_CODEC_RGB15;
p_vout->output.i_rmask = (0x1fL)<<10;
p_vout->output.i_gmask = (0x1fL)<<5;
p_vout->output.i_bmask = (0x1fL)<<0;
* picture_t structures */
switch( p_vout->output.i_chroma )
{
- case VLC_FOURCC('R','G','B','2'):
+ case VLC_CODEC_RGB8:
p_pic->p->i_lines = p_vout->output.i_height;
p_pic->p->i_visible_lines = p_vout->output.i_height;
p_pic->p->i_pixel_pitch = 1;
p_pic->p->i_pixel_pitch;
p_pic->i_planes = 1;
break;
- case VLC_FOURCC('R','V','1','5'):
- case VLC_FOURCC('R','V','1','6'):
+ case VLC_CODEC_RGB15:
+ case VLC_CODEC_RGB16:
p_pic->p->i_lines = p_vout->output.i_height;
p_pic->p->i_visible_lines = p_vout->output.i_height;
p_pic->p->i_pixel_pitch = 2;
p_pic->p->i_pixel_pitch;
p_pic->i_planes = 1;
break;
- case VLC_FOURCC('R','V','2','4'):
+ case VLC_CODEC_RGB24:
p_pic->p->i_lines = p_vout->output.i_height;
p_pic->p->i_visible_lines = p_vout->output.i_height;
p_pic->p->i_pixel_pitch = 3;
p_pic->p->i_pixel_pitch;
p_pic->i_planes = 1;
break;
- case VLC_FOURCC('R','V','3','2'):
+ case VLC_CODEC_RGB32:
p_pic->p->i_lines = p_vout->output.i_height;
p_pic->p->i_visible_lines = p_vout->output.i_height;
p_pic->p->i_pixel_pitch = 4;
p_pic->p->i_pixel_pitch;
p_pic->i_planes = 1;
break;
- case VLC_FOURCC('U','Y','V','Y'):
- case VLC_FOURCC('Y','U','Y','2'):
+ case VLC_CODEC_UYVY:
+ case VLC_CODEC_YUYV:
p_pic->p->i_lines = p_vout->output.i_height;
p_pic->p->i_visible_lines = p_vout->output.i_height;
p_pic->p->i_pixel_pitch = 2;
/* Choose the chroma we will try first. */
switch( p_vout->render.i_chroma )
{
- case VLC_FOURCC('Y','U','Y','2'):
- case VLC_FOURCC('Y','U','N','V'):
- p_vout->output.i_chroma = VLC_FOURCC('Y','U','Y','2');
+ case VLC_CODEC_YUYV:
+ p_vout->output.i_chroma = VLC_CODEC_YUYV;
break;
- case VLC_FOURCC('U','Y','V','Y'):
- case VLC_FOURCC('U','Y','N','V'):
- case VLC_FOURCC('Y','4','2','2'):
- p_vout->output.i_chroma = VLC_FOURCC('U','Y','V','Y');
+ case VLC_CODEC_UYVY:
+ p_vout->output.i_chroma = VLC_CODEC_UYVY;
break;
- case VLC_FOURCC('Y','V','Y','U'):
- p_vout->output.i_chroma = VLC_FOURCC('Y','V','Y','U');
+ case VLC_CODEC_YVYU:
+ p_vout->output.i_chroma = VLC_CODEC_YVYU;
break;
default:
- p_vout->output.i_chroma = VLC_FOURCC('Y','V','1','2');
+ p_vout->output.i_chroma = VLC_CODEC_YV12;
break;
}
if( !I_OUTPUTPICTURES )
{
/* hmmm, it didn't work! Let's try commonly supported chromas */
- if( p_vout->output.i_chroma != VLC_FOURCC('I','4','2','0') )
+ if( p_vout->output.i_chroma != VLC_CODEC_I420 )
{
- p_vout->output.i_chroma = VLC_FOURCC('Y','V','1','2');
+ p_vout->output.i_chroma = VLC_CODEC_YV12;
NewPictureVec( p_vout, p_vout->p_picture, MAX_DIRECTBUFFERS );
}
if( !I_OUTPUTPICTURES )
{
/* hmmm, it still didn't work! Let's try another one */
- p_vout->output.i_chroma = VLC_FOURCC('Y','U','Y','2');
+ p_vout->output.i_chroma = VLC_CODEC_YUYV;
NewPictureVec( p_vout, p_vout->p_picture, MAX_DIRECTBUFFERS );
}
}
if( !b_overlay )
{
bool b_rgb_surface =
- ( i_chroma == VLC_FOURCC('R','G','B','2') )
- || ( i_chroma == VLC_FOURCC('R','V','1','5') )
- || ( i_chroma == VLC_FOURCC('R','V','1','6') )
- || ( i_chroma == VLC_FOURCC('R','V','2','4') )
- || ( i_chroma == VLC_FOURCC('R','V','3','2') );
+ ( i_chroma == VLC_CODEC_RGB8 )
+ || ( i_chroma == VLC_CODEC_RGB15 )
+ || ( i_chroma == VLC_CODEC_RGB16 )
+ || ( i_chroma == VLC_CODEC_RGB24 )
+ || ( i_chroma == VLC_CODEC_RGB32 );
memset( &ddsd, 0, sizeof( DDSURFACEDESC ) );
ddsd.dwSize = sizeof(DDSURFACEDESC);
switch( ddpfPixelFormat.dwRGBBitCount )
{
case 8:
- p_vout->output.i_chroma = VLC_FOURCC('R','G','B','2');
+ p_vout->output.i_chroma = VLC_CODEC_RGB8;
p_vout->output.pf_setpalette = SetPalette;
break;
case 15:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','5');
+ p_vout->output.i_chroma = VLC_CODEC_RGB15;
break;
case 16:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','6');
+ p_vout->output.i_chroma = VLC_CODEC_RGB16;
break;
case 24:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','2','4');
+ p_vout->output.i_chroma = VLC_CODEC_RGB24;
break;
case 32:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','3','2');
+ p_vout->output.i_chroma = VLC_CODEC_RGB32;
break;
default:
msg_Err( p_vout, "unknown screen depth" );
{
switch( p_vout->output.i_chroma )
{
- case VLC_FOURCC('R','G','B','2'):
- case VLC_FOURCC('R','V','1','5'):
- case VLC_FOURCC('R','V','1','6'):
- case VLC_FOURCC('R','V','2','4'):
- case VLC_FOURCC('R','V','3','2'):
+ case VLC_CODEC_RGB8:
+ case VLC_CODEC_RGB15:
+ case VLC_CODEC_RGB16:
+ case VLC_CODEC_RGB24:
+ case VLC_CODEC_RGB32:
p_pic->p->p_pixels = p_pic->p_sys->ddsd.lpSurface;
p_pic->p->i_lines = p_vout->output.i_height;
p_pic->p->i_visible_lines = p_vout->output.i_height;
p_pic->p->i_pitch = p_pic->p_sys->ddsd.lPitch;
switch( p_vout->output.i_chroma )
{
- case VLC_FOURCC('R','G','B','2'):
+ case VLC_CODEC_RGB8:
p_pic->p->i_pixel_pitch = 1;
break;
- case VLC_FOURCC('R','V','1','5'):
- case VLC_FOURCC('R','V','1','6'):
+ case VLC_CODEC_RGB15:
+ case VLC_CODEC_RGB16:
p_pic->p->i_pixel_pitch = 2;
break;
- case VLC_FOURCC('R','V','2','4'):
+ case VLC_CODEC_RGB24:
p_pic->p->i_pixel_pitch = 3;
break;
- case VLC_FOURCC('R','V','3','2'):
+ case VLC_CODEC_RGB32:
p_pic->p->i_pixel_pitch = 4;
break;
default:
p_pic->i_planes = 1;
break;
- case VLC_FOURCC('Y','V','1','2'):
- case VLC_FOURCC('I','4','2','0'):
+ case VLC_CODEC_YV12:
/* U and V inverted compared to I420
* Fixme: this should be handled by the vout core */
- p_vout->output.i_chroma = VLC_FOURCC('I','4','2','0');
+ p_vout->output.i_chroma = VLC_CODEC_I420;
p_pic->Y_PIXELS = p_pic->p_sys->ddsd.lpSurface;
p_pic->p[Y_PLANE].i_lines = p_vout->output.i_height;
p_pic->i_planes = 3;
break;
- case VLC_FOURCC('I','Y','U','V'):
+ case VLC_CODEC_I420:
p_pic->Y_PIXELS = p_pic->p_sys->ddsd.lpSurface;
p_pic->p[Y_PLANE].i_lines = p_vout->output.i_height;
p_pic->i_planes = 3;
break;
- case VLC_FOURCC('U','Y','V','Y'):
- case VLC_FOURCC('Y','U','Y','2'):
+ case VLC_CODEC_UYVY:
+ case VLC_CODEC_YUYV:
p_pic->p->p_pixels = p_pic->p_sys->ddsd.lpSurface;
p_pic->p->i_lines = p_vout->output.i_height;
switch( p_vout->p_sys->i_depth )
{
case 8:
- p_vout->output.i_chroma = VLC_FOURCC('R','G','B','2');
+ p_vout->output.i_chroma = VLC_CODEC_RGB8;
p_vout->output.pf_setpalette = SetPalette;
break;
case 15:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','5');
+ p_vout->output.i_chroma = VLC_CODEC_RGB15;
p_vout->output.i_rmask = 0x7c00;
p_vout->output.i_gmask = 0x03e0;
p_vout->output.i_bmask = 0x001f;
break;
case 16:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','6');
+ p_vout->output.i_chroma = VLC_CODEC_RGB16;
p_vout->output.i_rmask = 0xf800;
p_vout->output.i_gmask = 0x07e0;
p_vout->output.i_bmask = 0x001f;
break;
case 24:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','2','4');
+ p_vout->output.i_chroma = VLC_CODEC_RGB24;
p_vout->output.i_rmask = 0x00ff0000;
p_vout->output.i_gmask = 0x0000ff00;
p_vout->output.i_bmask = 0x000000ff;
break;
case 32:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','3','2');
+ p_vout->output.i_chroma = VLC_CODEC_RGB32;
p_vout->output.i_rmask = 0x00ff0000;
p_vout->output.i_gmask = 0x0000ff00;
p_vout->output.i_bmask = 0x000000ff;
vout_thread_t *p_vout = (vout_thread_t *)p_this;
vout_sys_t *p_sys;
- if( p_vout->fmt_in.i_chroma != VLC_FOURCC('I','4','2','0') &&
- p_vout->fmt_in.i_chroma != VLC_FOURCC('I','Y','U','V') &&
- p_vout->fmt_in.i_chroma != VLC_FOURCC('Y','V','1','2') )
+ if( p_vout->fmt_in.i_chroma != VLC_CODEC_I420 &&
+ p_vout->fmt_in.i_chroma != VLC_CODEC_YV12 )
return VLC_EGENERIC;
/* Allocate instance and initialize some members */
}
p_vout->output.i_chroma =
- p_vout->fmt_out.i_chroma = VLC_FOURCC( 'Y','4','2','0' );
+ p_vout->fmt_out.i_chroma = VLC_CODEC_I420;
p_sys->i_color_format = OMAPFB_COLOR_YUV420;
// place in the framebuffer where we have to write
/* TODO: We use YCbCr on Mac which is Y422, but on OSX it seems to == YUY2. Verify */
#if ( defined( WORDS_BIGENDIAN ) && VLCGL_FORMAT == GL_YCBCR_422_APPLE ) || (VLCGL_FORMAT == YCBCR_MESA)
- p_vout->output.i_chroma = VLC_FOURCC('Y','U','Y','2');
+ p_vout->output.i_chroma = VLC_CODEC_YUYV;
i_pixel_pitch = 2;
#elif (VLCGL_FORMAT == GL_YCBCR_422_APPLE)
- p_vout->output.i_chroma = VLC_FOURCC('U','Y','V','Y');
+ p_vout->output.i_chroma = VLC_CODEC_UYVY;
i_pixel_pitch = 2;
#elif VLCGL_FORMAT == GL_RGB
# if VLCGL_TYPE == GL_UNSIGNED_BYTE
- p_vout->output.i_chroma = VLC_FOURCC('R','V','2','4');
+ p_vout->output.i_chroma = VLC_CODEC_RGB24;
# if defined( WORDS_BIGENDIAN )
p_vout->output.i_rmask = 0x00ff0000;
p_vout->output.i_gmask = 0x0000ff00;
# endif
i_pixel_pitch = 3;
# else
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','6');
+ p_vout->output.i_chroma = VLC_CODEC_RGB16;
# if defined( WORDS_BIGENDIAN )
p_vout->output.i_rmask = 0x001f;
p_vout->output.i_gmask = 0x07e0;
i_pixel_pitch = 2;
# endif
#else
- p_vout->output.i_chroma = VLC_FOURCC('R','V','3','2');
+ p_vout->output.i_chroma = VLC_CODEC_RGB32;
# if defined( WORDS_BIGENDIAN )
p_vout->output.i_rmask = 0xff000000;
p_vout->output.i_gmask = 0x00ff0000;
vlc_value_t val;
#if ( defined( WORDS_BIGENDIAN ) && VLCGL_FORMAT == GL_YCBCR_422_APPLE ) || (VLCGL_FORMAT == YCBCR_MESA)
- p_vout->output.i_chroma = VLC_FOURCC('Y','U','Y','2');
+ p_vout->output.i_chroma = VLC_CODEC_YUYV;
i_pixel_pitch = 2;
#elif (VLCGL_FORMAT == GL_YCBCR_422_APPLE)
- p_vout->output.i_chroma = VLC_FOURCC('U','Y','V','Y');
+ p_vout->output.i_chroma = VLC_CODEC_UYVY;
i_pixel_pitch = 2;
#endif
I_OUTPUTPICTURES = 0;
- p_vout->output.i_chroma = (dd == 16) ? VLC_FOURCC('R','V','1','6'): VLC_FOURCC('R','V','3','2');
+ p_vout->output.i_chroma = (dd == 16) ? VLC_CODEC_RGB16 : VLC_CODEC_RGB32;
p_vout->output.i_rmask = 0xf800;
p_vout->output.i_gmask = 0x07e0;
p_vout->output.i_bmask = 0x001f;
if( strlen( psz_chroma ) >= 4 )
{
memcpy(&i_chroma, psz_chroma, 4);
+ i_chroma = vlc_fourcc_GetCodec( VIDEO_ES, i_chroma );
msg_Dbg( p_vout, "Forcing chroma to 0x%.8x (%4.4s)", i_chroma, (char*)&i_chroma );
}
else
if( !psz_chroma ) i_chroma = 0;
switch( i_chroma ? i_chroma : p_vout->render.i_chroma )
{
- case VLC_FOURCC('Y','U','Y','2'):
- case VLC_FOURCC('Y','U','N','V'):
- p_vout->output.i_chroma = VLC_FOURCC('Y','U','Y','2');
+ case VLC_CODEC_YUYV:
+ p_vout->output.i_chroma = VLC_CODEC_YUYV;
i_sdl_chroma = SDL_YUY2_OVERLAY;
break;
- case VLC_FOURCC('U','Y','V','Y'):
- case VLC_FOURCC('U','Y','N','V'):
- case VLC_FOURCC('Y','4','2','2'):
- p_vout->output.i_chroma = VLC_FOURCC('U','Y','V','Y');
+ case VLC_CODEC_UYVY:
+ p_vout->output.i_chroma = VLC_CODEC_UYVY;
i_sdl_chroma = SDL_UYVY_OVERLAY;
break;
- case VLC_FOURCC('Y','V','Y','U'):
- p_vout->output.i_chroma = VLC_FOURCC('Y','V','Y','U');
+ case VLC_CODEC_YVYU:
+ p_vout->output.i_chroma = VLC_CODEC_YVYU;
i_sdl_chroma = SDL_YVYU_OVERLAY;
break;
- case VLC_FOURCC('Y','V','1','2'):
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('I','Y','U','V'):
+ case VLC_CODEC_YV12:
+ case VLC_CODEC_I420:
default:
- p_vout->output.i_chroma = VLC_FOURCC('Y','V','1','2');
+ p_vout->output.i_chroma = VLC_CODEC_YV12;
i_sdl_chroma = SDL_YV12_OVERLAY;
break;
}
/* If this best choice failed, fall back to other chromas */
if( p_vout->p_sys->p_overlay == NULL )
{
- p_vout->output.i_chroma = VLC_FOURCC('I','Y','U','V');
+ p_vout->output.i_chroma = VLC_CODEC_I420;
p_vout->p_sys->p_overlay =
SDL_CreateYUVOverlay( 32, 32, SDL_IYUV_OVERLAY,
p_vout->p_sys->p_display );
if( p_vout->p_sys->p_overlay == NULL )
{
- p_vout->output.i_chroma = VLC_FOURCC('Y','V','1','2');
+ p_vout->output.i_chroma = VLC_CODEC_YV12;
p_vout->p_sys->p_overlay =
SDL_CreateYUVOverlay( 32, 32, SDL_YV12_OVERLAY,
p_vout->p_sys->p_display );
if( p_vout->p_sys->p_overlay == NULL )
{
- p_vout->output.i_chroma = VLC_FOURCC('Y','U','Y','2');
+ p_vout->output.i_chroma = VLC_CODEC_YUYV;
p_vout->p_sys->p_overlay =
SDL_CreateYUVOverlay( 32, 32, SDL_YUY2_OVERLAY,
p_vout->p_sys->p_display );
switch( p_vout->p_sys->p_display->format->BitsPerPixel )
{
case 8:
- p_vout->output.i_chroma = VLC_FOURCC('R','G','B','2');
+ p_vout->output.i_chroma = VLC_CODEC_RGB8;
p_vout->output.pf_setpalette = SetPalette;
break;
case 15:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','5');
+ p_vout->output.i_chroma = VLC_CODEC_RGB15;
break;
case 16:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','6');
+ p_vout->output.i_chroma = VLC_CODEC_RGB16;
break;
case 24:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','2','4');
+ p_vout->output.i_chroma = VLC_CODEC_RGB24;
break;
case 32:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','3','2');
+ p_vout->output.i_chroma = VLC_CODEC_RGB32;
break;
default:
msg_Err( p_vout, "unknown screen depth %i",
msg_Err( p_vout, "snapshot-chroma should be 4 characters long" );
return VLC_EGENERIC;
}
- i_chroma = VLC_FOURCC( psz_chroma[0], psz_chroma[1],
- psz_chroma[2], psz_chroma[3] );
+ i_chroma = vlc_fourcc_GetCodec( VIDEO_ES,
+ VLC_FOURCC( psz_chroma[0], psz_chroma[1],
+ psz_chroma[2], psz_chroma[3] ) );
free( psz_chroma );
}
else
/* Define the bitmasks */
switch( i_chroma )
{
- case VLC_FOURCC( 'R','V','1','5' ):
+ case VLC_CODEC_RGB15;
p_vout->output.i_rmask = 0x001f;
p_vout->output.i_gmask = 0x03e0;
p_vout->output.i_bmask = 0x7c00;
break;
- case VLC_FOURCC( 'R','V','1','6' ):
+ case VLC_CODEC_RGB16;
p_vout->output.i_rmask = 0x001f;
p_vout->output.i_gmask = 0x07e0;
p_vout->output.i_bmask = 0xf800;
break;
- case VLC_FOURCC( 'R','V','2','4' ):
+ case VLC_CODEC_RGB24;
p_vout->output.i_rmask = 0xff0000;
p_vout->output.i_gmask = 0x00ff00;
p_vout->output.i_bmask = 0x0000ff;
break;
- case VLC_FOURCC( 'R','V','3','2' ):
+ case VLC_CODEC_RGB32:
p_vout->output.i_rmask = 0xff0000;
p_vout->output.i_gmask = 0x00ff00;
p_vout->output.i_bmask = 0x0000ff;
/* Initialize the output structure: RGB with square pixels, whatever
* the input format is, since it's the only format we know */
- p_vout->output.i_chroma = VLC_FOURCC('R','G','B','2');
+ p_vout->output.i_chroma = VLC_CODEC_RGB8;
p_vout->output.pf_setpalette = SetPalette;
p_vout->output.i_width = vga_getxdim();
p_vout->output.i_height = vga_getydim();
free( psz_chroma );
return VLC_EGENERIC;
}
- i_chroma = VLC_FOURCC( psz_chroma[0], psz_chroma[1],
- psz_chroma[2], psz_chroma[3] );
+ i_chroma = vlc_fourcc_GetCodec( VIDEO_ES,
+ VLC_FOURCC( psz_chroma[0], psz_chroma[1],
+ psz_chroma[2], psz_chroma[3] ) );
free( psz_chroma );
}
else
/* Define the bitmasks */
switch( i_chroma )
{
- case VLC_FOURCC( 'R','V','1','5' ):
+ case VLC_CODEC_RGB15:
p_vout->output.i_rmask = 0x001f;
p_vout->output.i_gmask = 0x03e0;
p_vout->output.i_bmask = 0x7c00;
break;
- case VLC_FOURCC( 'R','V','1','6' ):
+ case VLC_CODEC_RGB16:
p_vout->output.i_rmask = 0x001f;
p_vout->output.i_gmask = 0x07e0;
p_vout->output.i_bmask = 0xf800;
break;
- case VLC_FOURCC( 'R','V','2','4' ):
+ case VLC_CODEC_RGB24:
p_vout->output.i_rmask = 0xff0000;
p_vout->output.i_gmask = 0x00ff00;
p_vout->output.i_bmask = 0x0000ff;
break;
- case VLC_FOURCC( 'R','V','3','2' ):
+ case VLC_CODEC_RGB32:
p_vout->output.i_rmask = 0xff0000;
p_vout->output.i_gmask = 0x00ff00;
p_vout->output.i_bmask = 0x0000ff;
}
}
}
- p_vout->output.i_chroma = X112VLC_FOURCC(p_vout->output.i_chroma);
+ p_vout->output.i_chroma = vlc_fourcc_GetCodec( VIDEO_ES, X112VLC_FOURCC(p_vout->output.i_chroma) );
#elif defined(MODULE_NAME_IS_glx)
{
int i_opcode, i_evt, i_err = 0;
#if XvVersion < 2 || ( XvVersion == 2 && XvRevision < 2 )
switch( p_vout->output.i_chroma )
{
- case VLC_FOURCC('R','V','1','6'):
+ case VLC_CODEC_RGB16:
#if defined( WORDS_BIGENDIAN )
p_vout->output.i_rmask = 0xf800;
p_vout->output.i_gmask = 0x07e0;
p_vout->output.i_bmask = 0xf800;
#endif
break;
- case VLC_FOURCC('R','V','1','5'):
+ case VLC_CODEC_RGB15:
#if defined( WORDS_BIGENDIAN )
p_vout->output.i_rmask = 0x7c00;
p_vout->output.i_gmask = 0x03e0;
switch( p_vout->p_sys->i_screen_depth )
{
case 8: /* FIXME: set the palette */
- p_vout->output.i_chroma = VLC_FOURCC('R','G','B','2'); break;
+ p_vout->output.i_chroma = VLC_CODEC_RGB8; break;
case 15:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','5'); break;
+ p_vout->output.i_chroma = VLC_CODEC_RGB15; break;
case 16:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','1','6'); break;
+ p_vout->output.i_chroma = VLC_CODEC_RGB16; break;
case 24:
case 32:
- p_vout->output.i_chroma = VLC_FOURCC('R','V','3','2'); break;
+ p_vout->output.i_chroma = VLC_CODEC_RGB32; break;
default:
msg_Err( p_vout, "unknown screen depth %i",
p_vout->p_sys->i_screen_depth );
I_OUTPUTPICTURES++;
}
- if( p_vout->output.i_chroma == VLC_FOURCC('Y','V','1','2') )
+ if( p_vout->output.i_chroma == VLC_CODEC_YV12 )
{
/* U and V inverted compared to I420
* Fixme: this should be handled by the vout core */
- p_vout->output.i_chroma = VLC_FOURCC('I','4','2','0');
- p_vout->fmt_out.i_chroma = VLC_FOURCC('I','4','2','0');
+ p_vout->output.i_chroma = VLC_CODEC_I420;
+ p_vout->fmt_out.i_chroma = VLC_CODEC_I420;
}
return VLC_SUCCESS;
switch( p_vout->output.i_chroma )
{
#if defined(MODULE_NAME_IS_xvideo) || defined(MODULE_NAME_IS_xvmc)
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('Y','V','1','2'):
- case VLC_FOURCC('Y','2','1','1'):
- case VLC_FOURCC('Y','U','Y','2'):
- case VLC_FOURCC('U','Y','V','Y'):
- case VLC_FOURCC('R','V','1','5'):
- case VLC_FOURCC('R','V','1','6'):
- case VLC_FOURCC('R','V','2','4'): /* Fixme: pixel pitch == 4 ? */
- case VLC_FOURCC('R','V','3','2'):
+ case VLC_CODEC_I420:
+ case VLC_CODEC_YV12:
+ case VLC_CODEC_Y211:
+ case VLC_CODEC_YUYV:
+ case VLC_CODEC_UYVY:
+ case VLC_CODEC_RGB15:
+ case VLC_CODEC_RGB16:
+ case VLC_CODEC_RGB24: /* Fixme: pixel pitch == 4 ? */
+ case VLC_CODEC_RGB32:
for( i_plane = 0; i_plane < p_pic->p_sys->p_image->num_planes;
i_plane++ )
p_pic->p[i_plane].i_pitch =
p_pic->p_sys->p_image->pitches[i_plane];
}
- if( p_vout->output.i_chroma == VLC_FOURCC('Y','V','1','2') )
+ if( p_vout->output.i_chroma == VLC_CODEC_YV12 )
{
/* U and V inverted compared to I420
* Fixme: this should be handled by the vout core */
break;
#else
- case VLC_FOURCC('R','G','B','2'):
- case VLC_FOURCC('R','V','1','6'):
- case VLC_FOURCC('R','V','1','5'):
- case VLC_FOURCC('R','V','2','4'):
- case VLC_FOURCC('R','V','3','2'):
+ case VLC_CODEC_RGB8:
+ case VLC_CODEC_RGB16:
+ case VLC_CODEC_RGB15:
+ case VLC_CODEC_RGB24:
+ case VLC_CODEC_RGB32:
p_pic->p->i_lines = p_pic->p_sys->p_image->height;
p_pic->p->i_visible_lines = p_pic->p_sys->p_image->height;
{
case 24:
if (fmt->bits_per_pixel == 32)
- chroma = VLC_FOURCC ('R', 'V', '3', '2');
+ chroma = VLC_CODEC_RGB32;
else if (fmt->bits_per_pixel == 24)
- chroma = VLC_FOURCC ('R', 'V', '2', '4');
+ chroma = VLC_CODEC_RGB24;
else
continue;
break;
case 16:
if (fmt->bits_per_pixel != 16)
continue;
- chroma = VLC_FOURCC ('R', 'V', '1', '6');
+ chroma = VLC_CODEC_RGB16;
break;
case 15:
if (fmt->bits_per_pixel != 16)
continue;
- chroma = VLC_FOURCC ('R', 'V', '1', '5');
+ chroma = VLC_CODEC_RGB15;
break;
case 8:
if (fmt->bits_per_pixel != 8)
continue;
- chroma = VLC_FOURCC ('R', 'G', 'B', '2');
+ chroma = VLC_CODEC_RGB8;
break;
default:
continue;
if (!gray)
continue; /* Prefer color over gray scale */
vid = vt->visual_id;
- chroma = VLC_FOURCC ('G', 'R', 'E', 'Y');
+ chroma = VLC_CODEC_GREY;
}
}
{
case 32:
if (f->depth == 24)
- return VLC_FOURCC ('R', 'V', '3', '2');
+ return VLC_CODEC_RGB32;
break;
case 24:
if (f->depth == 24)
- return VLC_FOURCC ('R', 'V', '2', '4');
+ return VLC_CODEC_RGB24;
break;
case 16:
if (f->depth == 16)
- return VLC_FOURCC ('R', 'V', '1', '6');
+ return VLC_CODEC_RGB16;
if (f->depth == 15)
- return VLC_FOURCC ('R', 'V', '1', '5');
+ return VLC_CODEC_RGB15;
break;
case 8:
if (f->depth == 8)
- return VLC_FOURCC ('R', 'G', 'B', '2');
+ return VLC_CODEC_RGB8;
break;
}
break;
{
/*untested: case 24:
if (f->vhorz_u_period == 1 && f->vvert_u_period == 1)
- return VLC_FOURCC ('I', '4', '4', '4');
+ return VLC_CODEC_I444;
break;*/
case 16:
if (f->vhorz_u_period == 2 && f->vvert_u_period == 1)
{
if (!strcmp ((const char *)f->vcomp_order, "YUYV"))
- return VLC_FOURCC ('Y', 'U', 'Y', '2');
+ return VLC_CODEC_YUYV;
if (!strcmp ((const char *)f->vcomp_order, "UYVY"))
- return VLC_FOURCC ('U', 'Y', 'V', 'Y');
+ return VLC_CODEC_UYVY;
}
break;
}
if (f->vhorz_u_period == 2 && f->vvert_u_period == 2)
{
if (!strcmp ((const char *)f->vcomp_order, "YVU"))
- return VLC_FOURCC ('Y', 'V', '1', '2');
+ return VLC_CODEC_YV12;
if (!strcmp ((const char *)f->vcomp_order, "YUV"))
- return VLC_FOURCC ('I', '4', '2', '0');
+ return VLC_CODEC_I420;
}
}
break;
/* Video chroma in preference order */
const vlc_fourcc_t chromas[] = {
vout->fmt_in.i_chroma,
- VLC_FOURCC ('Y', 'U', 'Y', '2'),
- VLC_FOURCC ('R', 'V', '2', '4'),
- VLC_FOURCC ('R', 'V', '1', '5'),
+ VLC_CODEC_YUYV,
+ VLC_CODEC_RGB24,
+ VLC_CODEC_RGB15,
};
for (size_t i = 0; i < sizeof (chromas) / sizeof (chromas[0]); i++)
{
p_sys->p_fd = NULL;
p_sys->b_yuv4mpeg2 = var_CreateGetBool( p_this, CFG_PREFIX "yuv4mpeg2" );
- p_sys->i_chroma = VLC_FOURCC('I','4','2','0');
+ p_sys->i_chroma = VLC_CODEC_I420;
p_sys->psz_file =
var_CreateGetString( p_this, CFG_PREFIX "file" );
psz_fcc = var_CreateGetNonEmptyString( p_this, CFG_PREFIX "chroma" );
if( psz_fcc && (strlen( psz_fcc ) == 4) )
{
- p_sys->i_chroma = VLC_FOURCC( psz_fcc[0], psz_fcc[1],
- psz_fcc[2], psz_fcc[3] );
+ p_sys->i_chroma = vlc_fourcc_GetCodec( VIDEO_ES,
+ VLC_FOURCC( psz_fcc[0], psz_fcc[1],
+ psz_fcc[2], psz_fcc[3] ) );
}
free( psz_fcc );
{
switch( p_sys->i_chroma )
{
- case VLC_FOURCC('Y','V','1','2'):
- case VLC_FOURCC('I','4','2','0'):
- case VLC_FOURCC('I','Y','U','V'):
- case VLC_FOURCC('J','4','2','0'):
+ case VLC_CODEC_YV12:
+ case VLC_CODEC_I420:
+ case VLC_CODEC_J420:
break;
default:
msg_Err( p_this,
aout_filter_sys_t *p_sys;
galaktos_thread_t *p_thread;
- if ( p_filter->input.i_format != VLC_FOURCC('f','l','3','2' )
- || p_filter->output.i_format != VLC_FOURCC('f','l','3','2') )
+ if( p_filter->input.i_format != VLC_CODEC_FL32 ||
+ p_filter->output.i_format != VLC_CODEC_FL32 )
{
msg_Warn( p_filter, "bad input or output format" );
return VLC_EGENERIC;
/* Initialize vout parameters */
vout_InitFormat( &p_thread->p_opengl->fmt_in,
- VLC_FOURCC('R','V','3','2'),
- p_thread->i_width, p_thread->i_height, 1 );
+ VLC_CODEC_RGB32, p_thread->i_width, p_thread->i_height, 1 );
p_thread->p_opengl->i_window_width = p_thread->i_width;
p_thread->p_opengl->i_window_height = p_thread->i_height;
p_thread->p_opengl->render.i_width = p_thread->i_width;
video_format_t fmt;
- if ( p_filter->input.i_format != VLC_FOURCC('f','l','3','2' )
- || p_filter->output.i_format != VLC_FOURCC('f','l','3','2') )
+ if( p_filter->input.i_format != VLC_CODEC_FL32 ||
+ p_filter->output.i_format != VLC_CODEC_FL32 )
{
msg_Warn( p_filter, "bad input or output format" );
return VLC_EGENERIC;
}
- if ( !AOUT_FMTS_SIMILAR( &p_filter->input, &p_filter->output ) )
+ if( !AOUT_FMTS_SIMILAR( &p_filter->input, &p_filter->output ) )
{
msg_Warn( p_filter, "input and output formats are not similar" );
return VLC_EGENERIC;
fmt.i_width = fmt.i_visible_width = width;
fmt.i_height = fmt.i_visible_height = height;
- fmt.i_chroma = VLC_FOURCC('R','V','3','2');
+ fmt.i_chroma = VLC_CODEC_RGB32;
fmt.i_aspect = VOUT_ASPECT_FACTOR * width/height;
fmt.i_sar_num = fmt.i_sar_den = 1;
char *psz_effects, *psz_parser;
video_format_t fmt;
- if( ( p_filter->input.i_format != VLC_FOURCC('f','l','3','2') &&
- p_filter->input.i_format != VLC_FOURCC('f','i','3','2') ) )
+ if( ( p_filter->input.i_format != VLC_CODEC_FL32 &&
+ p_filter->input.i_format != VLC_CODEC_FI32 ) )
{
return VLC_EGENERIC;
}
fmt.i_width = fmt.i_visible_width = p_sys->i_width;
fmt.i_height = fmt.i_visible_height = p_sys->i_height;
- fmt.i_chroma = VLC_FOURCC('I','4','2','0');
+ fmt.i_chroma = VLC_CODEC_I420;
fmt.i_aspect = VOUT_ASPECT_FACTOR * p_sys->i_width/p_sys->i_height;
fmt.i_sar_num = fmt.i_sar_den = 1;
{
switch( i_format )
{
- case VLC_FOURCC('u','8',' ',' '):
- case VLC_FOURCC('s','8',' ',' '):
+ case VLC_CODEC_U8:
+ case VLC_CODEC_S8:
return 8;
- case VLC_FOURCC('u','1','6','l'):
- case VLC_FOURCC('s','1','6','l'):
- case VLC_FOURCC('u','1','6','b'):
- case VLC_FOURCC('s','1','6','b'):
+ case VLC_CODEC_U16L:
+ case VLC_CODEC_S16L:
+ case VLC_CODEC_U16B:
+ case VLC_CODEC_S16B:
return 16;
- case VLC_FOURCC('u','2','4','l'):
- case VLC_FOURCC('s','2','4','l'):
- case VLC_FOURCC('u','2','4','b'):
- case VLC_FOURCC('s','2','4','b'):
+ case VLC_CODEC_U24L:
+ case VLC_CODEC_S24L:
+ case VLC_CODEC_U24B:
+ case VLC_CODEC_S24B:
return 24;
- case VLC_FOURCC('s','3','2','l'):
- case VLC_FOURCC('s','3','2','b'):
- case VLC_FOURCC('f','l','3','2'):
- case VLC_FOURCC('f','i','3','2'):
+ case VLC_CODEC_S32L:
+ case VLC_CODEC_S32B:
+ case VLC_CODEC_FL32:
+ case VLC_CODEC_FI32:
return 32;
- case VLC_FOURCC('f','l','6','4'):
+ case VLC_CODEC_FL64:
return 64;
default:
/* Non-S/PDIF mixer only deals with float32 or fixed32. */
p_aout->mixer.mixer.i_format
= (vlc_CPU() & CPU_CAPABILITY_FPU) ?
- VLC_FOURCC('f','l','3','2') :
- VLC_FOURCC('f','i','3','2');
+ VLC_CODEC_FL32 : VLC_CODEC_FI32;
aout_FormatPrepare( &p_aout->mixer.mixer );
}
else
static void DecoderProcessSout( decoder_t *p_dec, block_t *p_block )
{
decoder_owner_sys_t *p_owner = (decoder_owner_sys_t *)p_dec->p_owner;
- const bool b_telx = p_dec->fmt_in.i_codec == VLC_FOURCC('t','e','l','x');
+ const bool b_telx = p_dec->fmt_in.i_codec == VLC_CODEC_TELETEXT;
block_t *p_sout_block;
while( ( p_sout_block =
static void DecoderProcessSpu( decoder_t *p_dec, block_t *p_block, bool b_flush )
{
decoder_owner_sys_t *p_owner = p_dec->p_owner;
- const bool b_telx = p_dec->fmt_in.i_codec == VLC_FOURCC('t','e','l','x');
+ const bool b_telx = p_dec->fmt_in.i_codec == VLC_CODEC_TELETEXT;
input_thread_t *p_input = p_owner->p_input;
vout_thread_t *p_vout;
}
static inline bool EsFmtIsTeletext( const es_format_t *p_fmt )
{
- return p_fmt->i_cat == SPU_ES && p_fmt->i_codec == VLC_FOURCC( 't', 'e', 'l', 'x' );
+ return p_fmt->i_cat == SPU_ES && p_fmt->i_codec == VLC_CODEC_TELETEXT;
}
/*****************************************************************************
input_DecoderIsCcPresent( es->p_dec, pb_cc );
for( int i = 0; i < 4; i++ )
{
- static const vlc_fourcc_t fcc[4] = {
- VLC_FOURCC('c', 'c', '1', ' '),
- VLC_FOURCC('c', 'c', '2', ' '),
- VLC_FOURCC('c', 'c', '3', ' '),
- VLC_FOURCC('c', 'c', '4', ' '),
- };
es_format_t fmt;
if( es->pb_cc_present[i] || !pb_cc[i] )
continue;
msg_Dbg( p_input, "Adding CC track %d for es[%d]", 1+i, es->i_id );
- es_format_Init( &fmt, SPU_ES, fcc[i] );
+ es_format_Init( &fmt, SPU_ES, EsOutFourccClosedCaptions[i] );
fmt.i_group = es->fmt.i_group;
if( asprintf( &fmt.psz_description,
_("Closed captions %u"), 1 + i ) == -1 )
{
switch( p_fmt->i_chroma )
{
- case VLC_FOURCC('R','V','1','5'):
+ case VLC_CODEC_RGB15:
p_fmt->i_rmask = 0x7c00;
p_fmt->i_gmask = 0x03e0;
p_fmt->i_bmask = 0x001f;
break;
- case VLC_FOURCC('R','V','1','6'):
+ case VLC_CODEC_RGB16:
p_fmt->i_rmask = 0xf800;
p_fmt->i_gmask = 0x07e0;
p_fmt->i_bmask = 0x001f;
break;
- case VLC_FOURCC('R','V','2','4'):
+ case VLC_CODEC_RGB24:
p_fmt->i_rmask = 0xff0000;
p_fmt->i_gmask = 0x00ff00;
p_fmt->i_bmask = 0x0000ff;
break;
- case VLC_FOURCC('R','V','3','2'):
+ case VLC_CODEC_RGB32:
p_fmt->i_rmask = 0x00ff0000;
p_fmt->i_gmask = 0x0000ff00;
p_fmt->i_bmask = 0x000000ff;
} ext_table[] =
{
- { VLC_FOURCC('j','p','e','g'), "jpeg" },
- { VLC_FOURCC('j','p','e','g'), "jpg" },
- { VLC_FOURCC('l','j','p','g'), "ljpg" },
- { VLC_FOURCC('p','n','g',' '), "png" },
- { VLC_FOURCC('p','g','m',' '), "pgm" },
- { VLC_FOURCC('p','g','m','y'), "pgmyuv" },
+ { VLC_CODEC_JPEG, "jpeg" },
+ { VLC_CODEC_JPEG, "jpg" },
+ { VLC_CODEC_JPEGLS, "ljpg" },
+ { VLC_CODEC_PNG, "png" },
+ { VLC_CODEC_PGM, "pgm" },
+ { VLC_CODEC_PGMYUV, "pgmyuv" },
{ VLC_FOURCC('p','b','m',' '), "pbm" },
{ VLC_FOURCC('p','a','m',' '), "pam" },
- { VLC_FOURCC('t','g','a',' '), "tga" },
- { VLC_FOURCC('b','m','p',' '), "bmp" },
- { VLC_FOURCC('p','n','m',' '), "pnm" },
+ { VLC_CODEC_TARGA, "tga" },
+ { VLC_CODEC_BMP, "bmp" },
+ { VLC_CODEC_PNM, "pnm" },
{ VLC_FOURCC('x','p','m',' '), "xpm" },
{ VLC_FOURCC('x','c','f',' '), "xcf" },
- { VLC_FOURCC('p','c','x',' '), "pcx" },
- { VLC_FOURCC('g','i','f',' '), "gif" },
- { VLC_FOURCC('t','i','f','f'), "tif" },
- { VLC_FOURCC('t','i','f','f'), "tiff" },
+ { VLC_CODEC_PCX, "pcx" },
+ { VLC_CODEC_GIF, "gif" },
+ { VLC_CODEC_TIFF, "tif" },
+ { VLC_CODEC_TIFF, "tiff" },
{ VLC_FOURCC('l','b','m',' '), "lbm" },
{ 0, NULL }
};
const char *psz_mime;
} mime_table[] =
{
- { VLC_FOURCC('b','m','p',' '), "image/bmp" },
- { VLC_FOURCC('b','m','p',' '), "image/x-bmp" },
- { VLC_FOURCC('b','m','p',' '), "image/x-bitmap" },
- { VLC_FOURCC('b','m','p',' '), "image/x-ms-bmp" },
- { VLC_FOURCC('p','n','m',' '), "image/x-portable-anymap" },
- { VLC_FOURCC('p','n','m',' '), "image/x-portable-bitmap" },
- { VLC_FOURCC('p','n','m',' '), "image/x-portable-graymap" },
- { VLC_FOURCC('p','n','m',' '), "image/x-portable-pixmap" },
- { VLC_FOURCC('g','i','f',' '), "image/gif" },
- { VLC_FOURCC('j','p','e','g'), "image/jpeg" },
- { VLC_FOURCC('p','c','x',' '), "image/pcx" },
- { VLC_FOURCC('p','n','g',' '), "image/png" },
- { VLC_FOURCC('t','i','f','f'), "image/tiff" },
- { VLC_FOURCC('t','g','a',' '), "iamge/x-tga" },
+ { VLC_CODEC_BMP, "image/bmp" },
+ { VLC_CODEC_BMP, "image/x-bmp" },
+ { VLC_CODEC_BMP, "image/x-bitmap" },
+ { VLC_CODEC_BMP, "image/x-ms-bmp" },
+ { VLC_CODEC_PNM, "image/x-portable-anymap" },
+ { VLC_CODEC_PNM, "image/x-portable-bitmap" },
+ { VLC_CODEC_PNM, "image/x-portable-graymap" },
+ { VLC_CODEC_PNM, "image/x-portable-pixmap" },
+ { VLC_CODEC_GIF, "image/gif" },
+ { VLC_CODEC_JPEG, "image/jpeg" },
+ { VLC_CODEC_PCX, "image/pcx" },
+ { VLC_CODEC_PNG, "image/png" },
+ { VLC_CODEC_TIFF, "image/tiff" },
+ { VLC_CODEC_TARGA, "iamge/x-tga" },
{ VLC_FOURCC('x','p','m',' '), "image/x-xpixmap" },
{ 0, NULL }
};
/* Create a new subpicture region */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('T','E','X','T');
+ fmt.i_chroma = VLC_CODEC_TEXT;
fmt.i_aspect = 0;
fmt.i_width = fmt.i_height = 0;
fmt.i_x_offset = fmt.i_y_offset = 0;
/* Create a new subpicture region */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('Y','U','V','A');
+ fmt.i_chroma = VLC_CODEC_YUVA;
fmt.i_aspect = 0;
fmt.i_width = fmt.i_visible_width = i_width;
fmt.i_height = fmt.i_visible_height = i_height;
if( !vout_ChromaCmp( p_output->i_chroma, p_render->i_chroma ) )
return false;
- if( p_output->i_chroma != FOURCC_RV15 &&
- p_output->i_chroma != FOURCC_RV16 &&
- p_output->i_chroma != FOURCC_RV24 &&
- p_output->i_chroma != FOURCC_RV32 )
+ if( p_output->i_chroma != VLC_CODEC_RGB15 &&
+ p_output->i_chroma != VLC_CODEC_RGB16 &&
+ p_output->i_chroma != VLC_CODEC_RGB24 &&
+ p_output->i_chroma != VLC_CODEC_RGB32 )
return true;
return p_output->i_rmask == p_render->i_rmask &&
/* Create a new subpicture region */
memset( &fmt, 0, sizeof(video_format_t) );
- fmt.i_chroma = VLC_FOURCC('T','E','X','T');
+ fmt.i_chroma = VLC_CODEC_TEXT;
fmt.i_aspect = 0;
fmt.i_width = fmt.i_height = 0;
fmt.i_x_offset = fmt.i_y_offset = 0;
/* */
memset( &fmt_out, 0, sizeof(fmt_out) );
fmt_out = fmt_in;
- fmt_out.i_chroma = VLC_FOURCC('Y','U','V','A');
+ fmt_out.i_chroma = VLC_CODEC_YUVA;
/* */
image_handler_t *p_image = image_HandlerCreate( p_vout );
if( pp_image )
{
- vlc_fourcc_t i_format = VLC_FOURCC('p','n','g',' ');
+ vlc_fourcc_t i_format = VLC_CODEC_PNG;
if( psz_format && image_Type2Fourcc( psz_format ) )
i_format = image_Type2Fourcc( psz_format );
p_format->i_aspect = 0;
#endif
- switch( i_chroma )
+ switch( vlc_fourcc_GetCodec( VIDEO_ES, i_chroma ) )
{
- case FOURCC_YUVA:
+ case VLC_CODEC_YUVA:
p_format->i_bits_per_pixel = 32;
break;
- case FOURCC_I444:
- case FOURCC_J444:
+ case VLC_CODEC_I444:
+ case VLC_CODEC_J444:
p_format->i_bits_per_pixel = 24;
break;
- case FOURCC_I422:
- case FOURCC_YUY2:
- case FOURCC_UYVY:
- case FOURCC_J422:
+ case VLC_CODEC_I422:
+ case VLC_CODEC_YUYV:
+ case VLC_CODEC_YVYU:
+ case VLC_CODEC_UYVY:
+ case VLC_CODEC_VYUY:
+ case VLC_CODEC_J422:
p_format->i_bits_per_pixel = 16;
break;
- case FOURCC_I440:
- case FOURCC_J440:
+ case VLC_CODEC_I440:
+ case VLC_CODEC_J440:
p_format->i_bits_per_pixel = 16;
break;
- case FOURCC_I411:
- case FOURCC_YV12:
- case FOURCC_I420:
- case FOURCC_J420:
- case FOURCC_IYUV:
+ case VLC_CODEC_I411:
+ case VLC_CODEC_YV12:
+ case VLC_CODEC_I420:
+ case VLC_CODEC_J420:
p_format->i_bits_per_pixel = 12;
break;
- case FOURCC_I410:
- case FOURCC_YVU9:
+ case VLC_CODEC_I410:
p_format->i_bits_per_pixel = 9;
break;
- case FOURCC_Y211:
+ case VLC_CODEC_Y211:
p_format->i_bits_per_pixel = 8;
break;
- case FOURCC_YUVP:
+ case VLC_CODEC_YUVP:
p_format->i_bits_per_pixel = 8;
break;
- case FOURCC_RV32:
- case FOURCC_RGBA:
+ case VLC_CODEC_RGB32:
+ case VLC_CODEC_RGBA:
p_format->i_bits_per_pixel = 32;
break;
- case FOURCC_RV24:
+ case VLC_CODEC_RGB24:
p_format->i_bits_per_pixel = 24;
break;
- case FOURCC_RV15:
- case FOURCC_RV16:
+ case VLC_CODEC_RGB15:
+ case VLC_CODEC_RGB16:
p_format->i_bits_per_pixel = 16;
break;
- case FOURCC_RGB2:
+ case VLC_CODEC_RGB8:
p_format->i_bits_per_pixel = 8;
break;
- case FOURCC_GREY:
- case FOURCC_Y800:
- case FOURCC_Y8:
- case FOURCC_RGBP:
+ case VLC_CODEC_GREY:
+ case VLC_CODEC_RGBP:
p_format->i_bits_per_pixel = 8;
break;
i_height_aligned = (i_height + 15) >> 4 << 4;
/* Calculate coordinates */
- switch( i_chroma )
+ switch( vlc_fourcc_GetCodec( VIDEO_ES, i_chroma ) )
{
- case FOURCC_I411:
+ case VLC_CODEC_I411:
p_pic->p[ Y_PLANE ].i_lines = i_height_aligned;
p_pic->p[ Y_PLANE ].i_visible_lines = i_height;
p_pic->p[ Y_PLANE ].i_pitch = i_width_aligned;
p_pic->i_planes = 3;
break;
- case FOURCC_I410:
- case FOURCC_YVU9:
+ case VLC_CODEC_I410:
p_pic->p[ Y_PLANE ].i_lines = i_height_aligned;
p_pic->p[ Y_PLANE ].i_visible_lines = i_height;
p_pic->p[ Y_PLANE ].i_pitch = i_width_aligned;
p_pic->i_planes = 3;
break;
- case FOURCC_YV12:
- case FOURCC_I420:
- case FOURCC_IYUV:
- case FOURCC_J420:
+ case VLC_CODEC_YV12:
+ case VLC_CODEC_I420:
+ case VLC_CODEC_J420:
p_pic->p[ Y_PLANE ].i_lines = i_height_aligned;
p_pic->p[ Y_PLANE ].i_visible_lines = i_height;
p_pic->p[ Y_PLANE ].i_pitch = i_width_aligned;
p_pic->i_planes = 3;
break;
- case FOURCC_I422:
- case FOURCC_J422:
+ case VLC_CODEC_I422:
+ case VLC_CODEC_J422:
p_pic->p[ Y_PLANE ].i_lines = i_height_aligned;
p_pic->p[ Y_PLANE ].i_visible_lines = i_height;
p_pic->p[ Y_PLANE ].i_pitch = i_width_aligned;
p_pic->i_planes = 3;
break;
- case FOURCC_I440:
- case FOURCC_J440:
+ case VLC_CODEC_I440:
+ case VLC_CODEC_J440:
p_pic->p[ Y_PLANE ].i_lines = i_height_aligned;
p_pic->p[ Y_PLANE ].i_visible_lines = i_height;
p_pic->p[ Y_PLANE ].i_pitch = i_width_aligned;
p_pic->i_planes = 3;
break;
- case FOURCC_I444:
- case FOURCC_J444:
+ case VLC_CODEC_I444:
+ case VLC_CODEC_J444:
p_pic->p[ Y_PLANE ].i_lines = i_height_aligned;
p_pic->p[ Y_PLANE ].i_visible_lines = i_height;
p_pic->p[ Y_PLANE ].i_pitch = i_width_aligned;
p_pic->i_planes = 3;
break;
- case FOURCC_YUVA:
+ case VLC_CODEC_YUVA:
p_pic->p[ Y_PLANE ].i_lines = i_height_aligned;
p_pic->p[ Y_PLANE ].i_visible_lines = i_height;
p_pic->p[ Y_PLANE ].i_pitch = i_width_aligned;
p_pic->i_planes = 4;
break;
- case FOURCC_YUVP:
+ case VLC_CODEC_YUVP:
p_pic->p->i_lines = i_height_aligned;
p_pic->p->i_visible_lines = i_height;
p_pic->p->i_pitch = i_width_aligned;
p_pic->i_planes = 1;
break;
- case FOURCC_Y211:
+ case VLC_CODEC_Y211:
p_pic->p->i_lines = i_height_aligned;
p_pic->p->i_visible_lines = i_height;
p_pic->p->i_pitch = i_width_aligned;
p_pic->i_planes = 1;
break;
- case FOURCC_UYVY:
- case FOURCC_YUY2:
+ case VLC_CODEC_UYVY:
+ case VLC_CODEC_VYUY:
+ case VLC_CODEC_YUYV:
+ case VLC_CODEC_YVYU:
p_pic->p->i_lines = i_height_aligned;
p_pic->p->i_visible_lines = i_height;
p_pic->p->i_pitch = i_width_aligned * 2;
p_pic->i_planes = 1;
break;
- case FOURCC_RGB2:
+ case VLC_CODEC_RGB8:
p_pic->p->i_lines = i_height_aligned;
p_pic->p->i_visible_lines = i_height;
p_pic->p->i_pitch = i_width_aligned;
p_pic->i_planes = 1;
break;
- case FOURCC_RV15:
+ case VLC_CODEC_RGB15:
p_pic->p->i_lines = i_height_aligned;
p_pic->p->i_visible_lines = i_height;
p_pic->p->i_pitch = i_width_aligned * 2;
p_pic->i_planes = 1;
break;
- case FOURCC_RV16:
+ case VLC_CODEC_RGB16:
p_pic->p->i_lines = i_height_aligned;
p_pic->p->i_visible_lines = i_height;
p_pic->p->i_pitch = i_width_aligned * 2;
p_pic->i_planes = 1;
break;
- case FOURCC_RV24:
+ case VLC_CODEC_RGB24:
p_pic->p->i_lines = i_height_aligned;
p_pic->p->i_visible_lines = i_height;
p_pic->p->i_pitch = i_width_aligned * 3;
p_pic->i_planes = 1;
break;
- case FOURCC_RV32:
- case FOURCC_RGBA:
+ case VLC_CODEC_RGB32:
+ case VLC_CODEC_RGBA:
p_pic->p->i_lines = i_height_aligned;
p_pic->p->i_visible_lines = i_height;
p_pic->p->i_pitch = i_width_aligned * 4;
p_pic->i_planes = 1;
break;
- case FOURCC_GREY:
- case FOURCC_Y800:
- case FOURCC_Y8:
- case FOURCC_RGBP:
+ case VLC_CODEC_GREY:
+ case VLC_CODEC_RGBP:
p_pic->p->i_lines = i_height_aligned;
p_pic->p->i_visible_lines = i_height;
p_pic->p->i_pitch = i_width_aligned;
int vout_ChromaCmp( vlc_fourcc_t i_chroma, vlc_fourcc_t i_amorhc )
{
static const vlc_fourcc_t p_I420[] = {
- FOURCC_I420, FOURCC_IYUV, FOURCC_YV12, FOURCC_J420, 0
+ VLC_CODEC_I420, VLC_CODEC_YV12, VLC_CODEC_J420, 0
};
static const vlc_fourcc_t p_I422[] = {
- FOURCC_I422, FOURCC_J422, 0
+ VLC_CODEC_I422, VLC_CODEC_J422, 0
};
static const vlc_fourcc_t p_I440[] = {
- FOURCC_I440, FOURCC_J440, 0
+ VLC_CODEC_I440, VLC_CODEC_J440, 0
};
static const vlc_fourcc_t p_I444[] = {
- FOURCC_I444, FOURCC_J444, 0
- };
- static const vlc_fourcc_t p_UYVY[] = {
- FOURCC_UYVY, FOURCC_UYNV, FOURCC_Y422, 0
- };
- static const vlc_fourcc_t p_YUYV[] = {
- FOURCC_YUY2, FOURCC_YUNV, 0
- };
- static const vlc_fourcc_t p_GREY[] = {
- FOURCC_GREY, FOURCC_Y800, FOURCC_Y8, 0
+ VLC_CODEC_I444, VLC_CODEC_J444, 0
};
static const vlc_fourcc_t *pp_fcc[] = {
- p_I420, p_I422, p_I440, p_I444, p_UYVY, p_YUYV, p_GREY, NULL
+ p_I420, p_I422, p_I440, p_I444, NULL
};
+ /* */
+ i_chroma = vlc_fourcc_GetCodec( VIDEO_ES, i_chroma );
+ i_amorhc = vlc_fourcc_GetCodec( VIDEO_ES, i_amorhc );
+
/* If they are the same, they are the same ! */
if( i_chroma == i_amorhc )
return 1;
* Fourcc definitions that we can handle internally
*****************************************************************************/
-/* Packed RGB for 8bpp */
-#define FOURCC_RGB2 VLC_FOURCC('R','G','B','2')
-
-/* Packed RGB 15bpp, usually 0x7c00, 0x03e0, 0x001f */
-#define FOURCC_RV15 VLC_FOURCC('R','V','1','5')
-
-/* Packed RGB 16bpp, usually 0xf800, 0x07e0, 0x001f */
-#define FOURCC_RV16 VLC_FOURCC('R','V','1','6')
-
-/* Packed RGB 24bpp, usually 0x00ff0000, 0x0000ff00, 0x000000ff */
-#define FOURCC_RV24 VLC_FOURCC('R','V','2','4')
-
-/* Packed RGB 32bpp, usually 0x00ff0000, 0x0000ff00, 0x000000ff */
-#define FOURCC_RV32 VLC_FOURCC('R','V','3','2')
-
-/* Packed RGBA 32bpp, like RV32 with 0xff000000 used for alpha */
-#define FOURCC_RGBA VLC_FOURCC('R','G','B','A')
-
-/* Planar YUV 4:2:0, Y:U:V */
-#define FOURCC_I420 VLC_FOURCC('I','4','2','0')
-#define FOURCC_IYUV VLC_FOURCC('I','Y','U','V')
-#define FOURCC_J420 VLC_FOURCC('J','4','2','0')
-
-/* Planar YUV 4:2:0, Y:V:U */
-#define FOURCC_YV12 VLC_FOURCC('Y','V','1','2')
-
-/* Packed YUV 4:2:2, U:Y:V:Y, interlaced */
-#define FOURCC_IUYV VLC_FOURCC('I','U','Y','V')
-
-/* Packed YUV 4:2:2, U:Y:V:Y */
-#define FOURCC_UYVY VLC_FOURCC('U','Y','V','Y')
-#define FOURCC_UYNV VLC_FOURCC('U','Y','N','V')
-#define FOURCC_Y422 VLC_FOURCC('Y','4','2','2')
-
-/* Packed YUV 4:2:2, U:Y:V:Y, reverted */
-#define FOURCC_cyuv VLC_FOURCC('c','y','u','v')
-
-/* Packed YUV 4:2:2, Y:U:Y:V */
-#define FOURCC_YUY2 VLC_FOURCC('Y','U','Y','2')
-#define FOURCC_YUNV VLC_FOURCC('Y','U','N','V')
-
-/* Packed YUV 4:2:2, Y:V:Y:U */
-#define FOURCC_YVYU VLC_FOURCC('Y','V','Y','U')
-
-/* Packed YUV 2:1:1, Y:U:Y:V */
-#define FOURCC_Y211 VLC_FOURCC('Y','2','1','1')
-
-/* Planar YUV 4:1:1, Y:U:V */
-#define FOURCC_I411 VLC_FOURCC('I','4','1','1')
-
-/* Planar YUV 4:1:0, Y:U:V */
-#define FOURCC_I410 VLC_FOURCC('I','4','1','0')
-#define FOURCC_YVU9 VLC_FOURCC('Y','V','U','9')
-
-/* Planar Y, packed UV, from Matrox */
-#define FOURCC_YMGA VLC_FOURCC('Y','M','G','A')
-
-/* Planar 4:2:2, Y:U:V */
-#define FOURCC_I422 VLC_FOURCC('I','4','2','2')
-#define FOURCC_J422 VLC_FOURCC('J','4','2','2')
-
-/* Planar 4:4:0, Y:U:V */
-#define FOURCC_I440 VLC_FOURCC('I','4','4','0')
-#define FOURCC_J440 VLC_FOURCC('J','4','4','0')
-
-/* Planar 4:4:4, Y:U:V */
-#define FOURCC_I444 VLC_FOURCC('I','4','4','4')
-#define FOURCC_J444 VLC_FOURCC('J','4','4','4')
-
-/* Planar 4:4:4:4 Y:U:V:A */
-#define FOURCC_YUVA VLC_FOURCC('Y','U','V','A')
-
-/* Palettized YUV with palette element Y:U:V:A */
-#define FOURCC_YUVP VLC_FOURCC('Y','U','V','P')
-
-/* Palettized RGB with palette element R:G:B */
-#define FOURCC_RGBP VLC_FOURCC('R','G','B','P')
-
-
-/* Planar 8-bit grayscale */
-#define FOURCC_GREY VLC_FOURCC('G','R','E','Y')
-#define FOURCC_Y800 VLC_FOURCC('Y','8','0','0')
-#define FOURCC_Y8 VLC_FOURCC('Y','8',' ',' ')
-
/* Alignment of critical dynamic data structure
*
* Not all platforms support memalign so we provide a vlc_memalign wrapper
/* Number of simultaneous subpictures */
#define VOUT_MAX_SUBPICTURES (VOUT_MAX_PICTURES)
-#define VLC_FOURCC_YUVP VLC_FOURCC('Y','U','V','P')
-#define VLC_FOURCC_YUVA VLC_FOURCC('Y','U','V','A')
-#define VLC_FOURCC_RGBA VLC_FOURCC('R','G','B','A')
-#define VLC_FOURCC_TEXT VLC_FOURCC('T','E','X','T')
-
/* */
typedef struct
{
p_region->fmt = *p_fmt;
p_region->fmt.p_palette = NULL;
- if( p_fmt->i_chroma == VLC_FOURCC_YUVP )
+ if( p_fmt->i_chroma == VLC_CODEC_YUVP )
{
p_region->fmt.p_palette = calloc( 1, sizeof(*p_region->fmt.p_palette) );
if( p_fmt->p_palette )
p_region->p_style = NULL;
p_region->p_picture = NULL;
- if( p_fmt->i_chroma == VLC_FOURCC_TEXT )
+ if( p_fmt->i_chroma == VLC_CODEC_TEXT )
return p_region;
p_region->p_picture = picture_New( p_fmt->i_chroma, p_fmt->i_width, p_fmt->i_height,
/* XXX p_spu->p_scale is used for all conversion/scaling except yuvp to
* yuva/rgba */
p_spu->p->p_scale = CreateAndLoadScale( VLC_OBJECT(p_spu),
- VLC_FOURCC_YUVA, VLC_FOURCC_YUVA, true );
+ VLC_CODEC_YUVA, VLC_CODEC_YUVA, true );
/* This one is used for YUVP to YUVA/RGBA without scaling
* FIXME rename it */
p_spu->p->p_scale_yuvp = CreateAndLoadScale( VLC_OBJECT(p_spu),
- VLC_FOURCC_YUVP, VLC_FOURCC_YUVA, false );
+ VLC_CODEC_YUVP, VLC_CODEC_YUVA, false );
}
static void SpuRenderText( spu_t *p_spu, bool *pb_rerender_text,
{
filter_t *p_text = p_spu->p->p_text;
- assert( p_region->fmt.i_chroma == VLC_FOURCC_TEXT );
+ assert( p_region->fmt.i_chroma == VLC_CODEC_TEXT );
if( !p_text || !p_text->p_module )
goto exit;
*p_area = spu_area_create( 0,0, 0,0, scale_size );
/* Render text region */
- if( p_region->fmt.i_chroma == VLC_FOURCC_TEXT )
+ if( p_region->fmt.i_chroma == VLC_CODEC_TEXT )
{
const int i_min_scale_ratio = SCALE_UNIT; /* FIXME what is the right value? (scale_size is not) */
SpuRenderText( p_spu, &b_rerender_text, p_subpic, p_region, i_min_scale_ratio );
b_restore_format = b_rerender_text;
/* Check if the rendering has failed ... */
- if( p_region->fmt.i_chroma == VLC_FOURCC_TEXT )
+ if( p_region->fmt.i_chroma == VLC_CODEC_TEXT )
goto exit;
}
* FIXME b_force_palette and b_force_crop are applied to all subpictures using palette
* instead of only the right one (being the dvd spu).
*/
- const bool b_using_palette = p_region->fmt.i_chroma == VLC_FOURCC_YUVP;
+ const bool b_using_palette = p_region->fmt.i_chroma == VLC_CODEC_YUVP;
const bool b_force_palette = b_using_palette && p_sys->b_force_palette;
const bool b_force_crop = b_force_palette && p_sys->b_force_crop;
bool b_changed_palette = false;
/* TODO converting to RGBA for RGB video output is better */
p_scale_yuvp->fmt_out.video = p_region->fmt;
- p_scale_yuvp->fmt_out.video.i_chroma = VLC_FOURCC_YUVA;
+ p_scale_yuvp->fmt_out.video.i_chroma = VLC_CODEC_YUVA;
p_picture = p_scale_yuvp->pf_video_filter( p_scale_yuvp, p_picture );
if( !p_picture )