AwsError open_codec()

in h264_encoder_core/src/h264_encoder.cpp [109:128]


  AwsError open_codec(AVCodec * codec, AVDictionary * opts) {
    if (nullptr == codec) {
      AWS_LOG_ERROR(__func__, "Invalid codec");
      return AWS_ERR_FAILURE;
    }

    AWS_LOGSTREAM_INFO(__func__, "Attempting to open codec: " << codec->name);

    if (AWS_ERR_OK != set_param(codec) || avcodec_open2(param_, codec, &opts) < 0 ) {
      AWS_LOG_ERROR(__func__, "Could not open codec");
      if (nullptr != param_) {
	      avcodec_close(param_);
	      av_free(param_);
	      param_ = nullptr;
      }
      return AWS_ERR_FAILURE;
    }
   
    return AWS_ERR_OK;
  }