@@ -27,16 +27,14 @@ void ParamSet::set( const std::string& key, const std::string& flag, const bool
2727
2828 if ( ! flagOpt )
2929 {
30- std::cout << flag << std::endl << " : " << flagOpt->default_val .i64 << std::endl;
3130 throw std::runtime_error ( " unknown flag " + flag );
3231 }
3332
3433 error = av_opt_get_int ( _objContext, key.c_str (), AV_OPT_SEARCH_CHILDREN, &optVal );
3534 if ( error != 0 )
3635 {
37- std::string err ( " " , AV_ERROR_MAX_STRING_SIZE );
38- // av_make_error_string( const_cast<char*>(err.c_str()), err.size(), error );
39- av_strerror ( error, const_cast <char *>(err.c_str ()), err.size () );
36+ char err[AV_ERROR_MAX_STRING_SIZE];
37+ av_strerror ( error, err, AV_ERROR_MAX_STRING_SIZE );
4038 throw std::runtime_error ( " unknown key " + key + " : " + err );
4139 }
4240
@@ -48,9 +46,8 @@ void ParamSet::set( const std::string& key, const std::string& flag, const bool
4846 error = av_opt_set_int ( _objContext, key.c_str (), optVal, AV_OPT_SEARCH_CHILDREN );
4947 if ( error != 0 )
5048 {
51- std::string err ( " " , AV_ERROR_MAX_STRING_SIZE );
52- // av_make_error_string( const_cast<char*>(err.c_str()), err.size(), error );
53- av_strerror ( error, const_cast <char *>(err.c_str ()), err.size () );
49+ char err[AV_ERROR_MAX_STRING_SIZE];
50+ av_strerror ( error, err, AV_ERROR_MAX_STRING_SIZE );
5451 throw std::runtime_error ( " setting " + key + " parameter to " + flag + " : " + err );
5552 }
5653}
@@ -60,9 +57,8 @@ void ParamSet::set( const std::string& key, const bool value )
6057 int error = av_opt_set_int ( _objContext, key.c_str (), value, AV_OPT_SEARCH_CHILDREN );
6158 if ( error != 0 )
6259 {
63- std::string err ( " " , AV_ERROR_MAX_STRING_SIZE );
64- // av_make_error_string( const_cast<char*>(err.c_str()), err.size(), error );
65- av_strerror ( error, const_cast <char *>(err.c_str ()), err.size () );
60+ char err[AV_ERROR_MAX_STRING_SIZE];
61+ av_strerror ( error, err, AV_ERROR_MAX_STRING_SIZE );
6662 throw std::runtime_error ( " setting " + key + " parameter to " + ( value ? " true" : " false" ) + " : " + err );
6763 }
6864}
@@ -76,9 +72,8 @@ void ParamSet::set( const std::string& key, const int value )
7672 {
7773 std::ostringstream os;
7874 os << value;
79- std::string err ( " " , AV_ERROR_MAX_STRING_SIZE );
80- // av_make_error_string( const_cast<char*>(err.c_str()), err.size(), error );
81- av_strerror ( error, const_cast <char *>(err.c_str ()), err.size () );
75+ char err[AV_ERROR_MAX_STRING_SIZE];
76+ av_strerror ( error, err, AV_ERROR_MAX_STRING_SIZE );
8277 throw std::runtime_error ( " setting " + key + " parameter to " + os.str () + " : " + err );
8378 }
8479}
@@ -93,9 +88,8 @@ void ParamSet::set( const std::string& key, const int num, const int den )
9388 {
9489 std::ostringstream os;
9590 os << num << " /" << den;
96- std::string err ( " " , AV_ERROR_MAX_STRING_SIZE );
97- // av_make_error_string( const_cast<char*>(err.c_str()), err.size(), error );
98- av_strerror ( error, const_cast <char *>(err.c_str ()), err.size () );
91+ char err[AV_ERROR_MAX_STRING_SIZE];
92+ av_strerror ( error, err, AV_ERROR_MAX_STRING_SIZE );
9993 throw std::runtime_error ( " setting " + key + " parameter to " + os.str () + " : " + err );
10094 }
10195}
@@ -107,9 +101,8 @@ void ParamSet::set( const std::string& key, const double value )
107101 {
108102 std::ostringstream os;
109103 os << value;
110- std::string err ( " " , AV_ERROR_MAX_STRING_SIZE );
111- // av_make_error_string( const_cast<char*>(err.c_str()), err.size(), error );
112- av_strerror ( error, const_cast <char *>(err.c_str ()), err.size () );
104+ char err[AV_ERROR_MAX_STRING_SIZE];
105+ av_strerror ( error, err, AV_ERROR_MAX_STRING_SIZE );
113106 throw std::runtime_error ( " setting " + key + " parameter to " + os.str () + " : " + err );
114107 }
115108}
@@ -119,9 +112,8 @@ void ParamSet::set( const std::string& key, const std::string& value )
119112 int error = av_opt_set ( _objContext, key.c_str (), value.c_str (), AV_OPT_SEARCH_CHILDREN );
120113 if ( error != 0 )
121114 {
122- std::string err ( " " , AV_ERROR_MAX_STRING_SIZE );
123- // av_make_error_string( const_cast<char*>(err.c_str()), err.size(), error );
124- av_strerror ( error, const_cast <char *>(err.c_str ()), err.size () );
115+ char err[AV_ERROR_MAX_STRING_SIZE];
116+ av_strerror ( error, err, AV_ERROR_MAX_STRING_SIZE );
125117 throw std::runtime_error ( " setting " + key + " parameter to " + value + " : " + err );
126118 }
127119}
0 commit comments