[FFmpeg-trac] #9864(undetermined:new): DolbyED2 track cannot be decoded

FFmpeg trac at avcodec.org
Mon Aug 8 12:43:32 EEST 2022


#9864: DolbyED2 track cannot be decoded
-------------------------------------+-------------------------------------
             Reporter:  FranceBB     |                    Owner:  (none)
                 Type:  enhancement  |                   Status:  new
             Priority:  normal       |                Component:
                                     |  undetermined
              Version:  git-master   |               Resolution:
             Keywords:               |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
Description changed by FranceBB:

Old description:

> Summary of the bug: DolbyED2 5.1.4 Atmos tracks cannot be decoded, unlike
> their DolbyE 5.1 or 5.1+2.0 counterparts which can be decoded.
>
> Unlike DolbyE which is carried as 1 AES (i.e 1 fake stereo pair - so 1
> .wav - or 2 fake mono pairs - so 2 .wav), DolbyED2 is carried as 2
> separate .wav files (2 AES aka 2 fake stereo pairs) that need to be
> merged together to be decoded.
>
> If we use the same logic as DolbyE, however, the decoder doesn't
> recognize the file as a valid file and therefore doesn't decode it.
>
> How to reproduce:
> {{{
> %
> rem first we merge the 2 fake stereo pairs (2 AES) in 1:
>
> ffmpeg.exe -i "Y:\00_INGEST_MAM\DolbyED2\ED2A.wav" -i
> "Y:\00_INGEST_MAM\DolbyED2\ED2B.wav" -filter_complex
> "[0:a][1:a]join=inputs=2:channel_layout=stereo[a]" -map "[a]" -c:a
> pcm_s24le -ar 48000 -f wav -y "A:\MEDIA\temp\DolbyED2\DolbyED2.wav"
>

> rem now we save the DolbyED2 file as .u8 to decode it
>
> ffmpeg.exe -i "A:\MEDIA\temp\DolbyED2\DolbyED2.wav" -map 0:0 -acodec copy
> -f u8 -y "A:\MEDIA\temp\DolbyED2\stream1.u8"
>
> rem now we cycle through the channels of the DolbyED2 to decode it, but
> while this works with DolbyE files, unfortunately DolbyED2 ones aren't
> recognized...
>
> ffmpeg.exe  -i "A:\MEDIA\temp\DolbyED2\stream1.u8" -acodec pcm_s24le -ar
> 48000 -ac 1 -map_channel 0.0.0:0.0.0 -y "A:\MEDIA\temp\DolbyED2\Out1.wav"
>
> ffmpeg.exe  -i "A:\MEDIA\temp\DolbyED2\stream1.u8" -acodec pcm_s24le -ar
> 48000 -ac 1 -map_channel 0.0.1:0.0.0 -y "A:\MEDIA\temp\DolbyED2\Out2.wav"
>
> ffmpeg.exe  -i "A:\MEDIA\temp\DolbyED2\stream1.u8" -acodec pcm_s24le -ar
> 48000 -ac 1 -map_channel 0.0.2:0.0.0 -y "A:\MEDIA\temp\DolbyED2\Out3.wav"
>
> ffmpeg.exe  -i "A:\MEDIA\temp\DolbyED2\stream1.u8" -acodec pcm_s24le -ar
> 48000 -ac 1 -map_channel 0.0.3:0.0.0 -y "A:\MEDIA\temp\DolbyED2\Out4.wav"
>
> ffmpeg.exe  -i "A:\MEDIA\temp\DolbyED2\stream1.u8" -acodec pcm_s24le -ar
> 48000 -ac 1 -map_channel 0.0.4:0.0.0 -y "A:\MEDIA\temp\DolbyED2\Out5.wav"
>
> ffmpeg.exe  -i "A:\MEDIA\temp\DolbyED2\stream1.u8" -acodec pcm_s24le -ar
> 48000 -ac 1 -map_channel 0.0.5:0.0.0 -y "A:\MEDIA\temp\DolbyED2\Out6.wav"
>
> ffmpeg version n5.2-dev-2022-08-01
> built on 2022-08-01
> }}}
>
> Expected result: .u8 is recognized and decoded
> Actual result: A:\MEDIA\temp\DolbyED2\stream1.u8: Invalid data found when
> processing input
>
> With normal DolbyE tracks decoding works:
> https://forum.doom9.org/showthread.php?t=176739
>

> The sample in attachment is DolbyED2 2 AES already coupled together,
> ready to be decoded, lasting just 1 sec due to the bug tracker
> restrictions.

New description:

 Summary of the bug: DolbyED2 5.1.4 Atmos tracks cannot be decoded, unlike
 their DolbyE 5.1 or 5.1+2.0 counterparts which can be decoded.

 Unlike DolbyE which is carried as 1 AES (i.e 1 fake stereo pair - so 1
 .wav - or 2 fake mono pairs - so 2 .wav), DolbyED2 is carried as 2 AES
 (i.e 2 fake stereo pairs) so either 2 separate fake stereo .wav files or 1
 fake quad .wav file that need to be merged together to be decoded.

 If we use the same logic as DolbyE, however, the decoder doesn't recognize
 the file as a valid file and therefore doesn't decode it.

 How to reproduce:
 {{{
 %
 rem first we merge the 2 fake stereo pairs (2 AES) in 1:

 ffmpeg.exe -i "Y:\00_INGEST_MAM\DolbyED2\ED2A.wav" -i
 "Y:\00_INGEST_MAM\DolbyED2\ED2B.wav" -filter_complex
 "[0:a][1:a]join=inputs=2:channel_layout=stereo[a]" -map "[a]" -c:a
 pcm_s24le -ar 48000 -f wav -y "A:\MEDIA\temp\DolbyED2\DolbyED2.wav"


 rem now we save the DolbyED2 file as .u8 to decode it

 ffmpeg.exe -i "A:\MEDIA\temp\DolbyED2\DolbyED2.wav" -map 0:0 -acodec copy
 -f u8 -y "A:\MEDIA\temp\DolbyED2\stream1.u8"

 rem now we cycle through the channels of the DolbyED2 to decode it, but
 while this works with DolbyE files, unfortunately DolbyED2 ones aren't
 recognized...

 ffmpeg.exe  -i "A:\MEDIA\temp\DolbyED2\stream1.u8" -acodec pcm_s24le -ar
 48000 -ac 1 -map_channel 0.0.0:0.0.0 -y "A:\MEDIA\temp\DolbyED2\Out1.wav"

 ffmpeg.exe  -i "A:\MEDIA\temp\DolbyED2\stream1.u8" -acodec pcm_s24le -ar
 48000 -ac 1 -map_channel 0.0.1:0.0.0 -y "A:\MEDIA\temp\DolbyED2\Out2.wav"

 ffmpeg.exe  -i "A:\MEDIA\temp\DolbyED2\stream1.u8" -acodec pcm_s24le -ar
 48000 -ac 1 -map_channel 0.0.2:0.0.0 -y "A:\MEDIA\temp\DolbyED2\Out3.wav"

 ffmpeg.exe  -i "A:\MEDIA\temp\DolbyED2\stream1.u8" -acodec pcm_s24le -ar
 48000 -ac 1 -map_channel 0.0.3:0.0.0 -y "A:\MEDIA\temp\DolbyED2\Out4.wav"

 ffmpeg.exe  -i "A:\MEDIA\temp\DolbyED2\stream1.u8" -acodec pcm_s24le -ar
 48000 -ac 1 -map_channel 0.0.4:0.0.0 -y "A:\MEDIA\temp\DolbyED2\Out5.wav"

 ffmpeg.exe  -i "A:\MEDIA\temp\DolbyED2\stream1.u8" -acodec pcm_s24le -ar
 48000 -ac 1 -map_channel 0.0.5:0.0.0 -y "A:\MEDIA\temp\DolbyED2\Out6.wav"

 ffmpeg version n5.2-dev-2022-08-01
 built on 2022-08-01
 }}}

 Expected result: .u8 is recognized and decoded
 Actual result: A:\MEDIA\temp\DolbyED2\stream1.u8: Invalid data found when
 processing input

 With normal DolbyE tracks decoding works:
 https://forum.doom9.org/showthread.php?t=176739


 The sample in attachment is DolbyED2 2 AES already coupled together, ready
 to be decoded, lasting just 1 sec due to the bug tracker restrictions.

--
-- 
Ticket URL: <https://trac.ffmpeg.org/ticket/9864#comment:1>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list