DolbyLaboratories / dlb_mp4base

The Dolby MP4 streaming muxer (dlb_mp4base) is a software implementation of a muxer of fragmented or unfragmented ISO base media file format (mp4). It supports muxing of Dolby Digital (AC-3), Dolby Digital Plus (E-AC-3), and Dolby AC-4 audio formats as well as Dolby Vision.
BSD 3-Clause "New" or "Revised" License
252 stars 60 forks source link

mp4muxer Gives Audio Stream Incorrect Header #24

Closed perrinpagess closed 2 years ago

perrinpagess commented 2 years ago

When using this test file:

http://media.developer.dolby.com/DolbyVision_Atmos/mp4/iOS_P5_GlassBlowing2_3840x2160%4059.94fps_15200kbps.mp4

The untouched file's metadata is:

Stream #0:0[0x1](und): Video: hevc (Main 10) (dvh1 / 0x31687664), yuv420p10le(pc), 3840x2160 [SAR 1:1 DAR 16:9], 15184 kb/s, 59.94 fps, 59.94 tbr, 60k tbn (default)

Stream #0:1[0x2](und): Audio: eac3 (ec-3 / 0x332D6365), 48000 Hz, 5.1(side), fltp, 640 kb/s (default)

My mp4muxer command:

mp4muxer -o output.mp4 -i input.hevc -i input.ec3 --dv-profile 5

After using ffmpeg or mp4demuxer to demux and mp4muxer to remux:

Stream #0:0[0x1](und): Video: hevc (Main 10) (dvhe / 0x65687664), yuv420p10le(pc), 3840x2160 [SAR 1:1 DAR 16:9], 15185 kb/s, 59.94 fps, 59.94 tbr, 60k tbn (default)

Stream #0:1[0x2](und): Audio: none (dvhe / 0x65687664), 48000 Hz, 5.1(side), 640 kb/s (default)

The resulting file after using mp4muxer has audio that is unplayable because of the incorrect header.

bpandel commented 2 years ago

I have the exact same issue. File can be played fine when I skip the audio track, otherwise players don't recognize dvhe audio codec.

perrinpagess commented 2 years ago

Any update on this? Is there something wrong with my command? An mp4 muxer that doesn't mux audio correctly is fairly useless.

XingzhaoYun commented 2 years ago

Have you got any chance to test the latest binary?

M0djO commented 2 years ago

Didn't have notifications configured properly so didn't notice there was a new binary. I will try with my files when I get home tonight.

M0djO commented 2 years ago

As far as I am able to tell the latest binary fixes the issue for me. The Codec ID field in MediaInfo now shows ec-3 instead of dvhe and my player recognizes the file and plays it back.

perrinpagess commented 2 years ago

New build fixed the issue, thanks!