On Apr 19, 2013, at 1:57 AM, Carl Eugen Hoyos <[email protected]> wrote:

> It is a ffmpeg runtime option, the equivalent is:
> avctx->strict_std_compliance = FF_COMPLIANCE_EXPERIMENTAL;


Ok, got that working, so I didn't get the error message. However, changing the 
codec to AV_CODEC_ID_AAC and the sample format to AV_SAMPLE_FMT_FLTP (the only 
changes I made or that to my knowledge are required in my working 
capture-resample-encode-write pipeline) now results in distorted audio again. 
I'm a little stumped this time though, because first, these changes were made 
on working code which produced a good FLV video (with audio), and ironically 
the captured sample format of data is the exact same as the sample format used 
by AAC, so there's no mismatch there. Does anyone know what is different about 
processing with an AAC encoder vs a ADPCM encoder, and why the output of a 
working workflow might now be bad audio where before it was good? The audio now 
sounds slow, like talking through a fan (like a kid trying to sound like Darth 
Vader), and the video is kind of chunky -- good picture, but the video plays 
then stops, plays then stops. I've checked pts, and they are bei
 ng calculated same as before and are good. Note that I've also turned off the 
video completely, so that only audio is being written, and the same distortion 
still exists in the audio. 

If anyone has any ideas, I'm all ears. One question you can help with, is how 
to properly set up an FLV output format context for use of a codec that is 
different from the one it loads by default. When I create my output format 
context for FLV, I use the following line: 

        _avOutputFormat = av_guess_format(cStreamName, cFileNameExt, cMimeType);

where the file name extension is ".flv" and the mime type is "video/x-flv", it 
defaults an audio codec of "adpcm_swf". What I do after the fact is this: 

    _avOutputFormat->audio_codec = AV_CODEC_ID_AAC;    
    audioCodec = avcodec_find_encoder(_avOutputFormat->audio_codec);

this works, but is there something else I have to do to make AAC work? Is this 
the right way to specify an AAC encoder for use in an FLV output format 
context, or is there another way? I am receiving no errors anywhere in the 
pipeline, and as stated, the pts looks right. It is all monotonically 
increasing, and evenly spaced, but the audio is bad. 

Ideas? 

Thanks, 

Brad
_______________________________________________
Libav-user mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/libav-user

Reply via email to