View Full Version : AAC Audio Encoding courses Chipmunk voices
BlockABoots
26th September 2014, 22:26
Im using OBS to capture my game gameplay seesions, i have the audio encoding codec set to ACC, i then use AvsPmod (avisynth) to edit the capture file and then Ripbot to encode the video. But the final product has the audio playing way too fast and voices sound like chipmunk's, why does ACC code cause this issue and how can i fix it within AvsPmod?
Asmodian
27th September 2014, 00:28
What sample rate is your AAC (I assume you mean AAC, not ACC)? You are probably using 22.05 kHz for capture but assuming 44.1/48kHz somewhere. It isn't that AAC is causing this issue but that something in your chain changes when you use AAC or doesn't understand your AAC(-HE?) correctly. An AssumeSampleRate(22050) or AssumeSampleRate(24000) in AviSynth might help or you could capture at 48 kHz (better quality, also don't use AAC-HE).
This quote from the Wikipedia page on AAC-HE (http://en.wikipedia.org/wiki/High-Efficiency_Advanced_Audio_Coding) might be the explanation:
MPEG-2 and MPEG-4 AAC LC decoders without SBR support will decode the AAC LC part of the audio, resulting in audio output with only half the sampling frequency, thereby reducing the audio bandwidth. This usually results in the high-end, or treble, portion of the audio signal missing from the audio product.
BlockABoots
27th September 2014, 01:36
Yeah sorry AAC, it was encoded at 48KHz and 160 bitrate, have tried AssumeSampleRate(22050) it has imroved it but its still too fast
Asmodian
27th September 2014, 01:52
Must not be an AAC-HE problem then.
What does MediaInfo say about your original file? Can you post a sample that shows the problem? :script:
filler56789
27th September 2014, 04:43
Yes, please edit the title of this thread by editing post #1 ---
--- there is no such thing as ACC audio, unless you have just invented it :p
BlockABoots
27th September 2014, 11:10
Ok heres a sample.....
https://www.youtube.com/watch?v=gpOsNYeBQcw&feature=youtu.be
Video info from AvsPmod.....
http://i.imgur.com/KoNehCp.jpg
and my script.....
video=DirectShowSource("F:\Video Captures\obs (04).mp4")
video1=AssumeSampleRate(video,22050)
video2=lanczos4resize(video1,1920,1080)
video3=DelayAudio(video2,-0.070)
video4=trim(video3,0,500)
video5=fadein(video4,50).fadeout(50)
return video5
tebasuna51
27th September 2014, 12:00
When you play the original "F:\Video Captures\obs (04).mp4" the audio is correct?
If the answer is yes, don't use video1=AssumeSampleRate(video,22050), lets AviSynth take the samplerate from DirectShowSource.
If the answer is not, the problem is from your OBS capture.
BlockABoots
27th September 2014, 15:42
When you play the original "F:\Video Captures\obs (04).mp4" the audio is correct?
Yes the audio is fine from the raw file
If the answer is yes, don't use video1=AssumeSampleRate(video,22050), lets AviSynth take the samplerate from DirectShowSource.
That what i did original, i only added 'video1=AssumeSampleRate(video,22050)' because it was suggested above. Adding that script did slow the audio down however, so maybe i need use even lower sample rate?
If the answer is not, the problem is from your OBS capture.
No OBS capture raw file seems to play fine. its nothing that RipBot is doing is it, or an option i can change in RipBot?
BlockABoots
27th September 2014, 17:39
Using, AssumeSampleRate(video,16000) has sorted the issue!
What can we take from this??
Asmodian
27th September 2014, 18:30
Your DirectShow AAC decoder is odd/broken for your source. According to AvsPmod your audio should be 22050 Hz why you would need to slow it down beyond that I don't know. Maybe try using LSMASHSource (http://avisynth.nl/index.php/LSMASHSource) instead of DirectShowSource.
Or change your capture settings to not capture in AAC-HE, given the information from AvsPmod you must be capturing the audio in AAC-HE. 160 Kbps is enough bitrate for stereo AAC-LC, for 5.1 you would need more bitrate.
I assume it sounds pretty bad after you slow it down to 16000 Hz?
Edit: YouTube links are not samples, I mean a sample of the unprocessed capture.
BlockABoots
27th September 2014, 18:56
Your DirectShow AAC decoder is odd/broken for your source. According to AvsPmod your audio should be 22050 Hz why you would need to slow it down beyond that I don't know. Maybe try using LSMASHSource (http://avisynth.nl/index.php/LSMASHSource) instead of DirectShowSource.
Or change your capture settings to not capture in AAC-HE, given the information from AvsPmod you must be capturing the audio in AAC-HE. 160 Kbps is enough bitrate for stereo AAC-LC, for 5.1 you would need more bitrate.
I assume it sounds pretty bad after you slow it down to 16000 Hz?
Edit: YouTube links are not samples, I mean a sample of the unprocessed capture.
No the audio sounds perfect after being slowed down to 16000, ill be uploading the clip to youtube soon, so ill post a link once its done
Asmodian
27th September 2014, 19:26
Another point, if you are planning on editing and re-encoding the capture using higher bitrates is a very good idea. I wouldn't like the audio from a 160 Kbps 5.1 AAC-HE re-encoded to a new 160 Kbps 5.1 AAC-HE. The generation loss at high compression ratios is very bad. If you have the hard drive speed and OBS allows capturing in pcm that would be preferred. I realize PCM would not be good for streaming so maybe OBS doesn't offer it. If that is the case set the audio bitrate as high as you can.
That holds true for the video as well, try to avoid generation loss (http://en.wikipedia.org/wiki/Generation_loss).
What is the frame rate of your final video?
BlockABoots
28th September 2014, 10:42
Another point, if you are planning on editing and re-encoding the capture using higher bitrates is a very good idea. I wouldn't like the audio from a 160 Kbps 5.1 AAC-HE re-encoded to a new 160 Kbps 5.1 AAC-HE. The generation loss at high compression ratios is very bad. If you have the hard drive speed and OBS allows capturing in pcm that would be preferred. I realize PCM would not be good for streaming so maybe OBS doesn't offer it. If that is the case set the audio bitrate as high as you can.
That holds true for the video as well, try to avoid generation loss (http://en.wikipedia.org/wiki/Generation_loss).
What is the frame rate of your final video?
OBS only offers AAC and MP3, i think ill use MP3 from now on.
Regarding the quality to be fair its only going up on YouTube so that process borks the quality more than what im going to be doing here i guess. The video is 30fps
Here's the finished article uploaded to YouTube.....
https://www.youtube.com/watch?v=sM72gjArQwQ&list=UUpi68UhqF_G5amIzFdwqrOA
Audio seems to 99% or though i do sound ever so slightly different but it sound in sync with the video so thats the main thing i guess
filler56789
28th September 2014, 10:55
OBS only offers AAC and MP3
Well, that sucks, if we have to be honest.
tebasuna51
28th September 2014, 13:04
Downloaded the 1080 version.
Your audio (AAC-LC VBR, samplerate 44100, bitrate average 127 Kb/s) seems fine until 18m 52s, after is only silence until 38m 12s.
Remember than Youtube can recode your upload.
foxyshadis
30th September 2014, 00:07
That makes sense, 16KHz is 1/3 of 48KHz, so only 1/3 of it was decoded. This is definitely a DirectShow decoder problem, use L-SMASHSource and get rid of that AssumeSampleRate.
And definitely use AAC instead of MP3 for recording, if you're doing 5.1. Even if not, AAC LC is still better than MP3, AAC HE much better at those mid-low bitrates.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.