I have a mkv file to which I want to add an extra aac audio track. I synced the video and audio tracks with the delay option, but the audio file has a small logo audio in the beginning that is still partly there after syncing (this video file has a slightly longer blackscreen so they are in sync, but still has the logo audio).
Can I mute only a small part of the audio with MKVToolnix?
Or do I have to extract the audio and mute it with another software? (If so with what?) I recently wanted to do the same thing but gave up because the .aac file, when opened in Audacity, would not open it, I had tried a few other stuff that I don't remember and it either didin't work or the result was broken.
PS: I just want to mute it to not messup the syncing. I have the exact frames or time in milliseconds using videodub
Thx for any help
+ Reply to Thread
Results 1 to 6 of 6
Can be done with clever Ffmpeg-GUI.
Load your movie, click main, click convert audio stream, select your audiostream (if more as one), click continue, select fade in start: the desired mute time and duration: 0, leave all other settings as they are, click convert.
If done, click multiplex, the new created audio stream is shown in green, unselect the original audiostream and click multiplex. Done.
You could also extract the audiostream, load it as new source, cut it as you wish, then remux the cutted audiostream with your videostream.
Last edited by ProWo; 24th Jan 2022 at 01:01.
A non-re-encoding option....
Apply a negative delay to the audio stream in MKVToolnix, equivalent to the amount you wish to remove. If there's an existing audio delay, add that amount to the negative delay. There's no such thing as a negative delay for MKVs, so for audio, when a negative audio delay means the audio start time would be negative, MKVToolNix trims the begining of the audio stream instead.
So for example, if you want to remove 800ms from the audio stream itself, and the audio stream already has a delay of 350ms, you'd apply a -1150ms delay and remux (using VirtualDub the time indicated where the sound you wish to remove ends should be 1150ms for this example). Open the output MKV with MKVToolnix and this time apply a +1150ms delay. The A/V sync should be back to where it was but roughly 800ms of audio will be gone from the beginning.
If you don't like the idea of a huge audio delay, extract the audio from the new MKV with eac3to. When it extracts AAC as AAC eac3to won't re-encode, but it'll remove as much of the delay as possible by adding silent AAC frames to the beginning. It should also save a log file telling you how much delay remains (it's generally not much). It'll look something like this:
MKV, 1 video track, 1 audio track, 0:49:52, 24p /1.001 1: h264/AVC, English, 640x472 24p /1.001 (80:59) 2: AAC, English, 2.0 channels, 48kHz, 1150ms "Stereo" [a02] Extracting audio track number 2... [a02] Applying AAC delay... [a02] A remaining delay of -2ms could not be fixed. [a02] Creating file "D:\SomeVideo_T2_Audio - English.aac"... Video track 1 contains 71711 frames. eac3to processing took 7 seconds. Done.
If you're not an eac3to user or don't like using a command like, there's a couple of GUIs for it. I use MeGUI's HD Streams Extractor as it uses eac3to to do the work.