diff --git a/src/AvTranscoder/Metadatas/VideoStreamProperties.hpp b/src/AvTranscoder/Metadatas/VideoStreamProperties.hpp index 93fdf382..4d3b3683 100644 --- a/src/AvTranscoder/Metadatas/VideoStreamProperties.hpp +++ b/src/AvTranscoder/Metadatas/VideoStreamProperties.hpp @@ -124,6 +124,7 @@ VideoProperties videoStreamInfo( vp.maxBitRate = codec_context->rc_max_rate; vp.minBitRate = codec_context->rc_min_rate; vp.isInterlaced = false; + vp.topFieldFirst = false; vp.ticksPerFrame = codec_context->ticks_per_frame, vp.width = codec_context->width, diff --git a/src/AvTranscoder/common.cpp b/src/AvTranscoder/common.cpp index add2780b..22e2b157 100644 --- a/src/AvTranscoder/common.cpp +++ b/src/AvTranscoder/common.cpp @@ -27,16 +27,14 @@ void ParamSet::set( const std::string& key, const std::string& flag, const bool if( ! flagOpt ) { - std::cout << flag << std::endl << " : " << flagOpt->default_val.i64 << std::endl; throw std::runtime_error( "unknown flag " + flag ); } error = av_opt_get_int( _objContext, key.c_str(), AV_OPT_SEARCH_CHILDREN, &optVal ); if( error != 0 ) { - std::string err( "", AV_ERROR_MAX_STRING_SIZE ); - //av_make_error_string( const_cast(err.c_str()), err.size(), error ); - av_strerror( error, const_cast(err.c_str()), err.size() ); + char err[AV_ERROR_MAX_STRING_SIZE]; + av_strerror( error, err, AV_ERROR_MAX_STRING_SIZE ); throw std::runtime_error( "unknown key " + key + ": " + err ); } @@ -48,9 +46,8 @@ void ParamSet::set( const std::string& key, const std::string& flag, const bool error = av_opt_set_int( _objContext, key.c_str(), optVal, AV_OPT_SEARCH_CHILDREN ); if( error != 0 ) { - std::string err( "", AV_ERROR_MAX_STRING_SIZE ); - //av_make_error_string( const_cast(err.c_str()), err.size(), error ); - av_strerror( error, const_cast(err.c_str()), err.size() ); + char err[AV_ERROR_MAX_STRING_SIZE]; + av_strerror( error, err, AV_ERROR_MAX_STRING_SIZE ); throw std::runtime_error( "setting " + key + " parameter to " + flag + ": " + err ); } } @@ -60,9 +57,8 @@ void ParamSet::set( const std::string& key, const bool value ) int error = av_opt_set_int( _objContext, key.c_str(), value, AV_OPT_SEARCH_CHILDREN ); if( error != 0 ) { - std::string err( "", AV_ERROR_MAX_STRING_SIZE ); - //av_make_error_string( const_cast(err.c_str()), err.size(), error ); - av_strerror( error, const_cast(err.c_str()), err.size() ); + char err[AV_ERROR_MAX_STRING_SIZE]; + av_strerror( error, err, AV_ERROR_MAX_STRING_SIZE ); throw std::runtime_error( "setting " + key + " parameter to " + ( value ? "true" : "false" ) + ": " + err ); } } @@ -76,9 +72,8 @@ void ParamSet::set( const std::string& key, const int value ) { std::ostringstream os; os << value; - std::string err( "", AV_ERROR_MAX_STRING_SIZE ); - //av_make_error_string( const_cast(err.c_str()), err.size(), error ); - av_strerror( error, const_cast(err.c_str()), err.size() ); + char err[AV_ERROR_MAX_STRING_SIZE]; + av_strerror( error, err, AV_ERROR_MAX_STRING_SIZE ); throw std::runtime_error( "setting " + key + " parameter to " + os.str() + ": " + err ); } } @@ -93,9 +88,8 @@ void ParamSet::set( const std::string& key, const int num, const int den ) { std::ostringstream os; os << num << "/" << den; - std::string err( "", AV_ERROR_MAX_STRING_SIZE ); - //av_make_error_string( const_cast(err.c_str()), err.size(), error ); - av_strerror( error, const_cast(err.c_str()), err.size() ); + char err[AV_ERROR_MAX_STRING_SIZE]; + av_strerror( error, err, AV_ERROR_MAX_STRING_SIZE ); throw std::runtime_error( "setting " + key + " parameter to " + os.str() + ": " + err ); } } @@ -107,9 +101,8 @@ void ParamSet::set( const std::string& key, const double value ) { std::ostringstream os; os << value; - std::string err( "", AV_ERROR_MAX_STRING_SIZE ); - //av_make_error_string( const_cast(err.c_str()), err.size(), error ); - av_strerror( error, const_cast(err.c_str()), err.size() ); + char err[AV_ERROR_MAX_STRING_SIZE]; + av_strerror( error, err, AV_ERROR_MAX_STRING_SIZE ); throw std::runtime_error( "setting " + key + " parameter to " + os.str() + ": " + err ); } } @@ -119,9 +112,8 @@ void ParamSet::set( const std::string& key, const std::string& value ) int error = av_opt_set( _objContext, key.c_str(), value.c_str(), AV_OPT_SEARCH_CHILDREN ); if( error != 0 ) { - std::string err( "", AV_ERROR_MAX_STRING_SIZE ); - //av_make_error_string( const_cast(err.c_str()), err.size(), error ); - av_strerror( error, const_cast(err.c_str()), err.size() ); + char err[AV_ERROR_MAX_STRING_SIZE]; + av_strerror( error, err, AV_ERROR_MAX_STRING_SIZE ); throw std::runtime_error( "setting " + key + " parameter to " + value + ": " + err ); } }