Commit 4da83b8c authored by Gildas Bazin's avatar Gildas Bazin

* modules/packetizer/copy.c, modules/stream_out/transcode.c: handle raw RV15, RV16, RV24, RV32,
GREY.
parent 183241cb
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* copy.c * copy.c
***************************************************************************** *****************************************************************************
* Copyright (C) 2001, 2002 VideoLAN * Copyright (C) 2001, 2002 VideoLAN
* $Id: copy.c,v 1.10 2003/05/16 23:02:37 gbazin Exp $ * $Id: copy.c,v 1.11 2003/07/20 23:30:07 gbazin Exp $
* *
* Authors: Laurent Aimar <fenrir@via.ecp.fr> * Authors: Laurent Aimar <fenrir@via.ecp.fr>
* Eric Petit <titer@videolan.org> * Eric Petit <titer@videolan.org>
...@@ -257,6 +257,26 @@ static int InitThread( packetizer_thread_t *p_pack ) ...@@ -257,6 +257,26 @@ static int InitThread( packetizer_thread_t *p_pack )
p_pack->output_format.i_fourcc = VLC_FOURCC( 'I', '4', '2', '2' ); p_pack->output_format.i_fourcc = VLC_FOURCC( 'I', '4', '2', '2' );
p_pack->output_format.i_cat = VIDEO_ES; p_pack->output_format.i_cat = VIDEO_ES;
break; break;
case VLC_FOURCC( 'R', 'V', '1', '5' ):
p_pack->output_format.i_fourcc = VLC_FOURCC( 'R', 'V', '1', '5' );
p_pack->output_format.i_cat = VIDEO_ES;
break;
case VLC_FOURCC( 'R', 'V', '1', '6' ):
p_pack->output_format.i_fourcc = VLC_FOURCC( 'R', 'V', '1', '6' );
p_pack->output_format.i_cat = VIDEO_ES;
break;
case VLC_FOURCC( 'R', 'V', '2', '4' ):
p_pack->output_format.i_fourcc = VLC_FOURCC( 'R', 'V', '2', '4' );
p_pack->output_format.i_cat = VIDEO_ES;
break;
case VLC_FOURCC( 'R', 'V', '3', '2' ):
p_pack->output_format.i_fourcc = VLC_FOURCC( 'R', 'V', '3', '2' );
p_pack->output_format.i_cat = VIDEO_ES;
break;
case VLC_FOURCC( 'G', 'R', 'E', 'Y' ):
p_pack->output_format.i_fourcc = VLC_FOURCC( 'G', 'R', 'E', 'Y' );
p_pack->output_format.i_cat = VIDEO_ES;
break;
/* audio */ /* audio */
case VLC_FOURCC( 'm', 'p', 'g', 'a' ): case VLC_FOURCC( 'm', 'p', 'g', 'a' ):
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* transcode.c * transcode.c
***************************************************************************** *****************************************************************************
* Copyright (C) 2001, 2002 VideoLAN * Copyright (C) 2001, 2002 VideoLAN
* $Id: transcode.c,v 1.25 2003/07/13 13:18:25 gbazin Exp $ * $Id: transcode.c,v 1.26 2003/07/20 23:30:07 gbazin Exp $
* *
* Authors: Laurent Aimar <fenrir@via.ecp.fr> * Authors: Laurent Aimar <fenrir@via.ecp.fr>
* *
...@@ -513,7 +513,10 @@ static struct ...@@ -513,7 +513,10 @@ static struct
{ VLC_FOURCC( 'I', '4', '2', '0' ), CODEC_ID_RAWVIDEO }, { VLC_FOURCC( 'I', '4', '2', '0' ), CODEC_ID_RAWVIDEO },
{ VLC_FOURCC( 'I', '4', '2', '2' ), CODEC_ID_RAWVIDEO }, { VLC_FOURCC( 'I', '4', '2', '2' ), CODEC_ID_RAWVIDEO },
{ VLC_FOURCC( 'I', '4', '4', '4' ), CODEC_ID_RAWVIDEO }, { VLC_FOURCC( 'I', '4', '4', '4' ), CODEC_ID_RAWVIDEO },
{ VLC_FOURCC( 'R', 'V', '1', '5' ), CODEC_ID_RAWVIDEO },
{ VLC_FOURCC( 'R', 'V', '1', '6' ), CODEC_ID_RAWVIDEO },
{ VLC_FOURCC( 'R', 'V', '2', '4' ), CODEC_ID_RAWVIDEO }, { VLC_FOURCC( 'R', 'V', '2', '4' ), CODEC_ID_RAWVIDEO },
{ VLC_FOURCC( 'R', 'V', '3', '2' ), CODEC_ID_RAWVIDEO },
{ VLC_FOURCC( 'Y', 'U', 'Y', '2' ), CODEC_ID_RAWVIDEO }, { VLC_FOURCC( 'Y', 'U', 'Y', '2' ), CODEC_ID_RAWVIDEO },
{ VLC_FOURCC( 0, 0, 0, 0 ), 0 } { VLC_FOURCC( 0, 0, 0, 0 ), 0 }
...@@ -544,8 +547,16 @@ static inline int get_ff_chroma( vlc_fourcc_t i_chroma ) ...@@ -544,8 +547,16 @@ static inline int get_ff_chroma( vlc_fourcc_t i_chroma )
return PIX_FMT_YUV422P; return PIX_FMT_YUV422P;
case VLC_FOURCC( 'I', '4', '4', '4' ): case VLC_FOURCC( 'I', '4', '4', '4' ):
return PIX_FMT_YUV444P; return PIX_FMT_YUV444P;
case VLC_FOURCC( 'R', 'V', '1', '5' ):
return PIX_FMT_RGB555;
case VLC_FOURCC( 'R', 'V', '1', '6' ):
return PIX_FMT_RGB565;
case VLC_FOURCC( 'R', 'V', '2', '4' ): case VLC_FOURCC( 'R', 'V', '2', '4' ):
return PIX_FMT_RGB24; return PIX_FMT_RGB24;
case VLC_FOURCC( 'R', 'V', '3', '2' ):
return PIX_FMT_RGBA32;
case VLC_FOURCC( 'G', 'R', 'E', 'Y' ):
return PIX_FMT_GRAY8;
case VLC_FOURCC( 'Y', 'U', 'Y', '2' ): case VLC_FOURCC( 'Y', 'U', 'Y', '2' ):
return PIX_FMT_YUV422; return PIX_FMT_YUV422;
default: default:
...@@ -1063,7 +1074,11 @@ static int transcode_video_ffmpeg_new( sout_stream_t *p_stream, ...@@ -1063,7 +1074,11 @@ static int transcode_video_ffmpeg_new( sout_stream_t *p_stream,
id->f_src.i_fourcc == VLC_FOURCC( 'I', '4', '2', '2' ) || id->f_src.i_fourcc == VLC_FOURCC( 'I', '4', '2', '2' ) ||
id->f_src.i_fourcc == VLC_FOURCC( 'I', '4', '4', '4' ) || id->f_src.i_fourcc == VLC_FOURCC( 'I', '4', '4', '4' ) ||
id->f_src.i_fourcc == VLC_FOURCC( 'Y', 'U', 'Y', '2' ) || id->f_src.i_fourcc == VLC_FOURCC( 'Y', 'U', 'Y', '2' ) ||
id->f_src.i_fourcc == VLC_FOURCC( 'R', 'V', '2', '4' ) ) id->f_src.i_fourcc == VLC_FOURCC( 'R', 'V', '1', '5' ) ||
id->f_src.i_fourcc == VLC_FOURCC( 'R', 'V', '1', '6' ) ||
id->f_src.i_fourcc == VLC_FOURCC( 'R', 'V', '2', '4' ) ||
id->f_src.i_fourcc == VLC_FOURCC( 'R', 'V', '3', '2' ) ||
id->f_src.i_fourcc == VLC_FOURCC( 'G', 'R', 'E', 'Y' ) )
{ {
id->ff_dec = NULL; id->ff_dec = NULL;
id->ff_dec_c = avcodec_alloc_context(); id->ff_dec_c = avcodec_alloc_context();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment