@ -392,13 +392,17 @@ bool UBFFmpegVideoEncoder::init()
c = mAudioStream - > codec ;
c = mAudioStream - > codec ;
c - > bit_rate = 96000 ;
c - > bit_rate = 96000 ;
c - > sample_fmt = audioCodec - > sample_fmts [ 0 ] ; // FLTP by default for AAC
c - > sample_fmt = audioCodec - > sample_fmts ? audioCodec - > sample_fmts [ 0 ] : AV_SAMPLE_FMT_FLTP ; // FLTP by default for AAC
c - > sample_rate = mAudioSampleRate ;
c - > sample_rate = mAudioSampleRate ;
c - > channels = 2 ;
c - > channel_layout = AV_CH_LAYOUT_STEREO ;
c - > channel_layout = av_get_default_channel_layout ( c - > channels ) ;
c - > channels = av_get_channel_layout_nb_channels ( c - > channel_layout ) ;
c - > profile = FF_PROFILE_AAC_MAIN ;
c - > time_base = { 1 , mAudioSampleRate } ;
//https://trac.ffmpeg.org/wiki/Encode/H.264#Profile
c - > strict_std_compliance = - 2 ; // Enable use of experimental codec
//Omit this unless your target device only supports a certain profile
//(see https://trac.ffmpeg.org/wiki/Encode/H.264#Compatibility).
//c->profile = FF_PROFILE_AAC_MAIN;
c - > time_base = { 1 , c - > sample_rate } ;
if ( mOutputFormatContext - > oformat - > flags & AVFMT_GLOBALHEADER )
if ( mOutputFormatContext - > oformat - > flags & AVFMT_GLOBALHEADER )
c - > flags | = AV_CODEC_FLAG_GLOBAL_HEADER ;
c - > flags | = AV_CODEC_FLAG_GLOBAL_HEADER ;
@ -562,11 +566,6 @@ void UBFFmpegVideoEncoder::processAudio(QByteArray &data)
}
}
// Convert to destination format
// Convert to destination format
qDebug ( ) < < mSwrContext ;
qDebug ( ) < < outSamples ;
qDebug ( ) < < outSamplesCount ;
qDebug ( ) < < inSamples ;
qDebug ( ) < < inSamplesCount ;
ret = swr_convert ( mSwrContext ,
ret = swr_convert ( mSwrContext ,
outSamples , outSamplesCount ,
outSamples , outSamplesCount ,