Hello, all! ffmpeg version 4.0-static with native AAC encoder
Input file (in.mp4): CFR 30fps video with VBR AAC audio. According to MediaInfo: Duration : 4mn 10s Bit rate mode : Variable Bit rate : 192 Kbps Maximum bit rate : 201 Kbps Channel(s) : 2 channels Channel positions : Front: L R Sampling rate : 44.1 KHz Frame rate : 43.066 fps (1024 spf) I re-encode it with the same video and CBR AAC audio 192 Kbps. ------------------- Experiment #1. The simple command: ffmpeg -y -i in.mp4 -vcodec copy -acodec aac -b:a 192k out.mp4 And inexpected result (VBR): Duration : 4mn 10s Bit rate mode : Variable Bit rate : 185 Kbps Maximum bit rate : 192 Kbps Channel(s) : 2 channels Channel positions : Front: L R Sampling rate : 44.1 KHz Frame rate : 43.066 fps (1024 spf) The same with -vn. Ok, continue... ------------------- Experiment #2. ffmpeg -y -i in.mp4 -vcodec copy -acodec copy out.mp4 Again inexpected result (because '-acodec copy'): Duration : 4mn 10s Bit rate mode : Constant Bit rate : 192 Kbps Channel(s) : 2 channels Channel positions : Front: L R Sampling rate : 44.1 KHz Frame rate : 43.066 fps (1024 spf) The options are changed? I asking about because I found in my archives ffmpeg version 2.8.1-static and got exactly what i needed: ffmpeg -y -i in.mp4 -vcodec copy -acodec aac -b:a 192k -strict experimental -flags +global_header out.mp4 Duration : 4mn 10s Bit rate mode : Constant Bit rate : 196 Kbps Channel(s) : 2 channels Channel positions : Front: L R Sampling rate : 44.1 KHz Frame rate : 43.066 fps (1024 spf) ------------------- Note. When I tried open 'out.mp4' created by ffmpeg v4.0, with MP4 Inspector (https://sourceforge.net/projects/mp4-inspector/), i got an error: 'Failed on reading box header, parent box path "\moov\trak\mdia\minf\stbl\sgpd".....' By the way, input file opens without errors. File 'out.mp4' created by ffmpeg v2.8.1 - too. Let's continuing experiments... ------------------- Experiment #3. Output file opens with MP4 Inspector without errors after such trick (v4.0): ffmpeg -y -i in.mp4 -vcodec copy -acodec aac -b:a 192k -movflags +empty_moov out.mp4 But it's only trick, usually I not needed fragmented streams. In this case MediaInfo shows that audio is CBR but 185 kbps instead of 192: Duration : 4mn 10s Bit rate : 185 Kbps Channel(s) : 2 channels Channel positions : Front: L R Sampling rate : 44.1 KHz Frame rate : 43.066 fps (1024 spf) Ok, maybe reason of changing bitrate is that the input file has VBR audio. But Exp. #2 says it can be exactly 192 kbps... I'm slightly confused.... Any ideas? -- _______________________________________________ Libav-user mailing list [email protected] http://ffmpeg.org/mailman/listinfo/libav-user
