@ -333,6 +333,7 @@ static av_cold int ffmmal_init_decoder(AVCodecContext *avctx)
MMAL_STATUS_T status ;
MMAL_ES_FORMAT_T * format_in ;
MMAL_COMPONENT_T * decoder ;
char tmp [ 32 ] ;
int ret = 0 ;
bcm_host_init ( ) ;
@ -357,16 +358,13 @@ static av_cold int ffmmal_init_decoder(AVCodecContext *avctx)
switch ( avctx - > codec_id ) {
case AV_CODEC_ID_MPEG2VIDEO :
format_in - > encoding = MMAL_ENCODING_MP2V ;
av_log ( avctx , AV_LOG_DEBUG , " Use MMAL MP2V encoding \n " ) ;
break ;
case AV_CODEC_ID_VC1 :
format_in - > encoding = MMAL_ENCODING_WVC1 ;
av_log ( avctx , AV_LOG_DEBUG , " Use MMAL WVC1 encoding \n " ) ;
break ;
case AV_CODEC_ID_H264 :
default :
format_in - > encoding = MMAL_ENCODING_H264 ;
av_log ( avctx , AV_LOG_DEBUG , " Use MMAL H264 encoding \n " ) ;
break ;
}
format_in - > es - > video . width = FFALIGN ( avctx - > width , 32 ) ;
@ -379,6 +377,9 @@ static av_cold int ffmmal_init_decoder(AVCodecContext *avctx)
format_in - > es - > video . par . den = avctx - > sample_aspect_ratio . den ;
format_in - > flags = MMAL_ES_FORMAT_FLAG_FRAMED ;
av_get_codec_tag_string ( tmp , sizeof ( tmp ) , format_in - > encoding ) ;
av_log ( avctx , AV_LOG_DEBUG , " Using MMAL %s encoding. \n " , tmp ) ;
if ( ( status = mmal_port_format_commit ( decoder - > input [ 0 ] ) ) )
goto fail ;