demux: mkv: write the actual extra data size in the ALAC extradata
authorSteve Lhomme <robux4@ycbcr.xyz>
Mon, 5 Aug 2024 09:04:09 +0000 (11:04 +0200)
committerSebastian Ramacher <sramacher@debian.org>
Tue, 21 Jan 2025 18:02:47 +0000 (19:02 +0100)
This is what avcodec/audio expects when detecting the extradata.

See InitDecoderConfig()

(cherry picked from commit d2265e981fa19a9f5f1299e968348ed3ca98ee60)

Gbp-Pq: Name 0058-demux-mkv-write-the-actual-extra-data-size-in-the-AL.patch

modules/demux/mkv/matroska_segment_parse.cpp

index 2b936749925eaaade8dadeef8d273f4ba195ee17..706733e02b6a7f919e3e07ce50a22d71e4ac71f7 100644 (file)
@@ -60,7 +60,7 @@ static inline void fill_extra_data_alac( mkv_track_t *p_tk )
        https://github.com/macosforge/alac/blob/master/ALACMagicCookieDescription.txt */
     SetDWBE( p_extra, p_tk->fmt.i_extra );
     memcpy( p_extra + 4, "alac", 4 );
-    SetDWBE( p_extra + 8, 0 );
+    SetDWBE( p_extra + 8, p_tk->i_extra_data );
     memcpy( p_extra + 12, p_tk->p_extra_data, p_tk->i_extra_data );
 }