jobrien2001 / mkvdts2ac3.py

python script for linux, windows or os x which can be used to convert the DTS in Matroska (MKV) files to AC3
0 stars 1 forks source link

What sort of enhancements? #1

Open whispy opened 6 years ago

whispy commented 6 years ago

I was testing out the original version of this script when I noticed your fork. The readme says you've added some enhancements, and I've skimmed through your commits a bit. It's not clear to me what exactly you've enhanced.

What sort of enhancements have you added? Thanks, and glad to see someone actively working on this script! 👍

whispy commented 6 years ago

Also, one thing I've been wondering — would it be an enhancement to directly use stream copying to add in the AC3 track vs the way it's done now (extracting the timecodes, extracting the DTS audio, converting DTS to AC3, and then remuxing them back in)?

whispy commented 6 years ago

Another thing I'm wondering — would you be able to add detection for DD+/EAC-3?

jobrien2001 commented 6 years ago

Hello,

I added channel detection for input and max channels of the audio output. This way the channels in output never exceeds the channels in input.

Lets say you set max channels to 6. If input is 6 or more channels the output will be 6 channels. If the input is 2 channels it will not give you a 6 channel output but 2. Before the change the script would create a 6 channel out of a 2 channel source.

Also a max bitrate (per channel). Lets say you want 2 channel 96k AAC. then set max aac channel bitrate to 48.

Encoding AC3 is so fast and the quality loss is not noticeable to my ears so i do not mind how it works now. I agree with copying the ac3 track if available instead of re-encoding but... the problem is that you do not really know if the AC3 track is the same audio content as the DTS track. What if its audio commentary? The only way would be to compare both tracks for similarities... That might take care of not reencoding the AC3 track but running the comparison might take longer or take more CPU (do not know) But my python skills are very novice.

For EAC3 try the test branch and let me know if it works, i cant test it, when you report back ill pull it to master. #2

P.S dont dorget to set eac3 to true because its false by default.

Best regards