@ -1907,15 +1907,16 @@ static enum AVPixelFormat get_format(AVCodecContext *s, const enum AVPixelFormat
return * p ;
return * p ;
}
}
static int init_input_stream ( InputStream * ist , char * error , int error_len )
static int init_input_stream ( InputStream * ist )
{
{
int ret ;
int ret ;
if ( ist - > decoding_needed ) {
if ( ist - > decoding_needed ) {
const AVCodec * codec = ist - > dec ;
const AVCodec * codec = ist - > dec ;
if ( ! codec ) {
if ( ! codec ) {
snprintf ( error , error_len , " Decoder (codec %s) not found for input stream #%d:%d " ,
av_log ( ist , AV_LOG_ERROR ,
avcodec_get_name ( ist - > dec_ctx - > codec_id ) , ist - > file_index , ist - > st - > index ) ;
" Decoding requested, but no decoder found for: %s \n " ,
avcodec_get_name ( ist - > dec_ctx - > codec_id ) ) ;
return AVERROR ( EINVAL ) ;
return AVERROR ( EINVAL ) ;
}
}
@ -1941,9 +1942,9 @@ static int init_input_stream(InputStream *ist, char *error, int error_len)
ret = hw_device_setup_for_decode ( ist ) ;
ret = hw_device_setup_for_decode ( ist ) ;
if ( ret < 0 ) {
if ( ret < 0 ) {
snprintf ( error , error_len , " Device setup failed for "
av_log ( ist , AV_LOG_ERROR ,
" decoder on input stream #%d:%d : %s " ,
" Hardware device setup failed for decoder: %s \n " ,
ist - > file_index , ist - > st - > index , av_err2str ( ret ) ) ;
av_err2str ( ret ) ) ;
return ret ;
return ret ;
}
}
@ -1951,10 +1952,8 @@ static int init_input_stream(InputStream *ist, char *error, int error_len)
if ( ret = = AVERROR_EXPERIMENTAL )
if ( ret = = AVERROR_EXPERIMENTAL )
abort_codec_experimental ( codec , 0 ) ;
abort_codec_experimental ( codec , 0 ) ;
snprintf ( error , error_len ,
av_log ( ist , AV_LOG_ERROR , " Error while opening decoder: %s \n " ,
" Error while opening decoder for input stream "
av_err2str ( ret ) ) ;
" #%d:%d : %s " ,
ist - > file_index , ist - > st - > index , av_err2str ( ret ) ) ;
return ret ;
return ret ;
}
}
assert_avoptions ( ist - > decoder_opts ) ;
assert_avoptions ( ist - > decoder_opts ) ;
@ -1983,7 +1982,6 @@ static int init_output_stream_nofilter(OutputStream *ost)
static int transcode_init ( void )
static int transcode_init ( void )
{
{
int ret = 0 ;
int ret = 0 ;
char error [ 1024 ] = { 0 } ;
/* init framerate emulation */
/* init framerate emulation */
for ( int i = 0 ; i < nb_input_files ; i + + ) {
for ( int i = 0 ; i < nb_input_files ; i + + ) {
@ -1995,7 +1993,7 @@ static int transcode_init(void)
/* init input streams */
/* init input streams */
for ( InputStream * ist = ist_iter ( NULL ) ; ist ; ist = ist_iter ( ist ) )
for ( InputStream * ist = ist_iter ( NULL ) ; ist ; ist = ist_iter ( ist ) )
if ( ( ret = init_input_stream ( ist , error , sizeof ( error ) ) ) < 0 )
if ( ( ret = init_input_stream ( ist ) ) < 0 )
goto dump_format ;
goto dump_format ;
/*
/*
@ -2105,10 +2103,8 @@ static int transcode_init(void)
av_log ( NULL , AV_LOG_INFO , " \n " ) ;
av_log ( NULL , AV_LOG_INFO , " \n " ) ;
}
}
if ( ret ) {
if ( ret )
av_log ( NULL , AV_LOG_ERROR , " %s \n " , error ) ;
return ret ;
return ret ;
}
atomic_store ( & transcode_init_done , 1 ) ;
atomic_store ( & transcode_init_done , 1 ) ;