justdan96 / tsMuxer

tsMuxer is a transport stream muxer for remuxing/muxing elementary streams, EVO/VOB/MPG, MKV/MKA, MP4/MOV, TS, M2TS to TS to M2TS. Supported video codecs H.264/AVC, H.265/HEVC, VC-1, MPEG2. Supported audio codecs AAC, AC3 / E-AC3(DD+), DTS/ DTS-HD.
Apache License 2.0
861 stars 144 forks source link

Downconvert to AC3 cannot handle the end, inserts some THD #761

Closed ValeZAA closed 1 year ago

ValeZAA commented 1 year ago

So, yeah. https://mailccsf-my.sharepoint.com/:u:/g/personal/dirizar2_mail_ccsf_edu/EYP2uEVslUBGsaq15jmKAFoB1XtcWyW1wbipAmT5kvph-w?e=7o5BSJ

Demux AC3 and you will see that in hex editor starting with 0x010c33b8604d and until the end it is actually THD data.

FFmpeg has no such bug.

You can also use FFmpeg to verify that it is indeed correct THD stream. Use FFmpeg to extract THD out of m2ts and change last byte (0x40) to 0x10, e.g. FFmpeg will complain that checksum of substream 2 is invalid.

THIS IS problematic because for AC3 ffmpeg does not like the garbage after EOF and does not decode some sound of AC3.

jcdr428 commented 1 year ago

Hi @ValeZAA , yes the last THD frame is copied ! Please try tomorrow's release -or try today's Actions.

ValeZAA commented 1 year ago

Fixed.

ValeZAA commented 1 year ago

Another such issue is in EAC3 on Blu-ray: downconvert to AC3 still leaves one last frame to be EAC3.

Hellboy00000 commented 1 year ago

@jcdr428 @ValeZAA Maybe is better if create a new issue. Probably jcdr428 don't check closed issue.

jcdr428 commented 1 year ago

Yes I received notification, no need to open new issue.

jcdr428 commented 1 year ago

@ValeZAA the few trials I have done all produce ac3 without eac3 frames. Do you have a sample that I can use to reproduce the bug ? Edit: ok, I could reproduce with the Dolby Atmos 2014 Demonstration Disc.

jcdr428 commented 1 year ago

@ValeZAA should be fixed, please try tomorrow's release.

Hellboy00000 commented 1 year ago

Not received any warning with eac3to this time. Fixed. Question, Why the extension is .ac3+ec3 and not .ac3.

yannick92, the first one to post the error in doom9 say it is fixed.

jcdr428 commented 1 year ago

The extension is based on the detection of the input, I'll see how the extension can be modified in case of downconvert.