Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Capturing and Editing Video > VirtualDub, VDubMod & AviDemux
Register FAQ Calendar Today's Posts Search

Reply
 
Thread Tools Search this Thread Display Modes
Old 22nd June 2018, 09:09   #21  |  Link
exonx
Registered User
 
Join Date: May 2018
Posts: 8
Passthrough

Thanks for replying but I think that the command you posted re-encodes the AC3 audio and I am trying to pass through the existing Audio in order to to re-multiplex it with a re-encoded video.
exonx is offline   Reply With Quote
Old 22nd June 2018, 10:17   #22  |  Link
sneaker_ger
Registered User
 
Join Date: Dec 2002
Posts: 5,565
/EDIT: wrong information, ignore

Quote:
Originally Posted by exonx View Post
The command line I am using in FFMpeg is "-i - -vn -acodec copy".
You are trying to use this command via VirtualDub's "External Encoder" feature to copy AC3? This will never work. VirtualDub's "External Encoder" feature always outputs uncompressed video/audio data. If anything you'd have to set the audio copying in the "muxer" part of the "External Encoder" settings and point ffmpeg/mkvmerge to the original file. Unfortunately VirtualDub doesn't provide a variable/token for the source file name and path. (You could trick by e.g. predicting the name or something with a different suffix.)

Last edited by sneaker_ger; 23rd June 2018 at 11:08.
sneaker_ger is offline   Reply With Quote
Old 22nd June 2018, 14:10   #23  |  Link
exonx
Registered User
 
Join Date: May 2018
Posts: 8
Sorry to contradict you but I have always been able to pass through AC3 audio in VirtualDub using windows 7, even 5.1. I have just rechecked it with 2 A/V files. the only proviso is that within VirtualDub, audio has to be Direct stream copy and within External Encoders the audio encoder must have Raw audio data checked and Wave file and Bypass compression unchecked.
exonx is offline   Reply With Quote
Old 22nd June 2018, 14:15   #24  |  Link
sneaker_ger
Registered User
 
Join Date: Dec 2002
Posts: 5,565
/edit: WRONG, ignore

Quote:
Originally Posted by exonx View Post
the only proviso is that within VirtualDub, audio has to be Direct stream copy
I'm not arguing about "Direct stream copy", only "External encoders".

Quote:
Originally Posted by exonx View Post
Sorry to contradict you but I have always been able to pass through AC3 audio
[...]
I have just rechecked it with 2 A/V files
[...]
and within External Encoders the audio encoder must have Raw audio data checked and Wave file and Bypass compression unchecked.
How did you "recheck"? If your files have AC3 it doesn't prove the original AC3 data has been copied. It could be re-encoded AC3.


From VirtualDub help (F1):
Quote:
Bypass compression: Causes the audio compression setting in VirtualDub to be ignored, disabling any compression. If the source audio data is compressed, it is decompressed prior to being passed to the external encoder.

Last edited by sneaker_ger; 23rd June 2018 at 11:07. Reason: wrong information, ignore
sneaker_ger is offline   Reply With Quote
Old 22nd June 2018, 14:30   #25  |  Link
exonx
Registered User
 
Join Date: May 2018
Posts: 8
The audio tracks are identical ac3 5.1 tracks and the ffmpeg command for the external encoder is "-i - -vn -acodec copy"
exonx is offline   Reply With Quote
Old 22nd June 2018, 20:59   #26  |  Link
sneaker_ger
Registered User
 
Join Date: Dec 2002
Posts: 5,565
I'd love to be corrected but I have never seen that working. What input driver do you use on the Win 7 machine? Log?
sneaker_ger is offline   Reply With Quote
Old 23rd June 2018, 09:22   #27  |  Link
exonx
Registered User
 
Join Date: May 2018
Posts: 8
Pass Through

I've enclosed the relative part of the log file below

i] VideoEnc: frame= 96 fps= 62 q=21.0 size= 1123kB time=00:00:02.25
bitrate=4084.9kbits/s

[i] AudioEnc: Input #0, ac3, from 'pipe:':

[i] AudioEnc: Duration: N/A, start: 0.000000, bitrate: 384 kb/s

[i] AudioEnc: Stream #0:0: Audio: ac3, 48000 Hz, 5.1(side), fltp, 384 kb/s

[i] AudioEnc: Output #0, ac3, to 'C:\Users\exonx\Desktop\wrestler
test.mkv.ac3':

[i] AudioEnc: Metadata:

[i] AudioEnc: encoder : Lavf55.12.102

[i] AudioEnc: Stream #0:0: Audio: ac3, 48000 Hz, 5.1(side), 384 kb/s

[i] AudioEnc: Stream mapping:

[i] AudioEnc: Stream #0:0 -> #0:0 (copy)

[i] VideoEnc: frame= 120 fps= 57 q=21.0 size= 1695kB time=00:00:03.25
bitrate=4268.0kbits/s


As you can see the AC3 5.1 audio input to the external audio encoder is taken straight from the pipe from VirtualDub. It is then copied without re-encoding to the audio elementary stream.
"AudioEnc: Stream #0:0 -> #0:0 (copy)"



Below is an extract from "stephanV" in the long defunct "Unofficial VirtualDub Support Forums dated June 11 2010.
You may possibly still find this discussion on the "Internet Archive"

Direct passthrough of AC3/MP3 audio

It is possible to pass AC3 and MP3 audio through the external encoder feature without having to recompress it. It might work for other audio formats too, but this is not tested. A precondition is that VirtualDub must have direct acces to the compressed audio. If you are using for example the DirectShow plugin to open files this method will not work.

This is actually very simple to set up. First, create an audio encoder profile using ffmpeg with this command argument:
QUOTE

-i - -acodec copy "%(tempaudiofile)"



Then change the extension of the output filename to .ac3 or .mp3 (whatever is needed). In the 'Audio'-tab set the input format to Raw and keep the 'Bypass compression'-option unchecked.

This profile can be used as audio encoder in an encoder set, and when Audio is set to Direct Stream Copy (important!) the original compressed audio will be used for the new file.



I might add that I have never been able to pass through AAC audio. Don't know why. I've never researched it.

I'm afraid I don't have the time to pursue this investigation any further at the moment. I'm coming to the end of a project that must be presented in two weeks time otherwise I'm up against penalty clauses. However I hope the above has been of some assistance and will help you resolve the issue of "Pass Through".
exonx is offline   Reply With Quote
Old 23rd June 2018, 11:04   #28  |  Link
sneaker_ger
Registered User
 
Join Date: Dec 2002
Posts: 5,565
Well, what do you say, it works here. Then again, I'm on Windows 7 and don't have 10 to test.

I tested an mkv input file with the Matroska input plugin. I suspect the input plugin/driver could be responsible for the different behavior in your case. So try to copy the VirtualDub plugins from your Win7 to your Win10 machine and then when you go "File"->"Open video file" select it at the drop down on the bottom. Do you use VirtualDub 32/64 on both machines?
sneaker_ger is offline   Reply With Quote
Old 25th June 2018, 12:51   #29  |  Link
exonx
Registered User
 
Join Date: May 2018
Posts: 8
Passthrough

You were quite right sneaker_ger. I'm using VirtualDub2 on my Windows 10 machine and I hadn't noticed that the Caching Input Driver was getting priority and AC3 Passthrough was failing. I simply upped the merit on my FccHandler matroska plugin and AC3 was passed through without a problem. Many thanks for the HeadsUp
exonx is offline   Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 09:21.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.