I've written code to parse some additional fiels of the channel set
headers, and the navigation table. It's pretty hard to know if it's correct...

I get the following output for the first and the last frame in the 
"Master Audio 5.0 96khz.dts" sample file:

[dca @ 0x1ad4120] DTS-XLL: decoding XLL extension
[dca @ 0x1ad4120] xll_nch_sets = 1
[dca @ 0x1ad4120] xll_segments = 4
[dca @ 0x1ad4120] xll_smp_in_seg = 256
[dca @ 0x1ad4120] xll_bits4seg_size = 11
[dca @ 0x1ad4120] xll_banddata_crcen = 0
[dca @ 0x1ad4120] xll_scalable_lsb = 1
[dca @ 0x1ad4120] xll_bits4ch_mask = 5
[dca @ 0x1ad4120] xll_fixed_lsb_width = 0
[dca @ 0x1ad4120] xll channel set 0
[dca @ 0x1ad4120]  hdr_pos = 16464
[dca @ 0x1ad4120]  hdr_size = 47
[dca @ 0x1ad4120]  channels = 5
[dca @ 0x1ad4120]  residual_encode = 0
[dca @ 0x1ad4120]  bit_resolution = 24
[dca @ 0x1ad4120]  bit_width = 24
[dca @ 0x1ad4120]  sampling_frequency = 96000
[dca @ 0x1ad4120]  fs_interpolate = 0
[dca @ 0x1ad4120]  replacement_set = 0
[dca @ 0x1ad4120]  downmix_coeff_code_embedded = 1
[dca @ 0x1ad4120]  primary_ch_set = 1
[dca @ 0x1ad4120]  downmix_type = 1
[dca @ 0x1ad4120] XLL NAVI size table, bits per entry: 11:
[dca @ 0x1ad4120]  band 0: 3323
[dca @ 0x1ad4120]   seg 0: 966
[dca @ 0x1ad4120]    chset 0: 486
[dca @ 0x1ad4120]   seg 1: 1012
[dca @ 0x1ad4120]    chset 0: 524
[dca @ 0x1ad4120]   seg 2: 282
[dca @ 0x1ad4120]    chset 0: 192
[dca @ 0x1ad4120]   seg 3: 1063
[dca @ 0x1ad4120]    chset 0: 931


[dca @ 0x1ad4120] DTS-XLL: decoding XLL extension
[dca @ 0x1ad4120] xll_nch_sets = 1
[dca @ 0x1ad4120] xll_segments = 2
[dca @ 0x1ad4120] xll_smp_in_seg = 512
[dca @ 0x1ad4120] xll_bits4seg_size = 12
[dca @ 0x1ad4120] xll_banddata_crcen = 0
[dca @ 0x1ad4120] xll_scalable_lsb = 1
[dca @ 0x1ad4120] xll_bits4ch_mask = 5
[dca @ 0x1ad4120] xll_fixed_lsb_width = 0
[dca @ 0x1ad4120] xll channel set 0
[dca @ 0x1ad4120]  hdr_pos = 16464
[dca @ 0x1ad4120]  hdr_size = 98
[dca @ 0x1ad4120]  channels = 5
[dca @ 0x1ad4120]  residual_encode = 0
[dca @ 0x1ad4120]  bit_resolution = 24
[dca @ 0x1ad4120]  bit_width = 24
[dca @ 0x1ad4120]  sampling_frequency = 96000
[dca @ 0x1ad4120]  fs_interpolate = 0
[dca @ 0x1ad4120]  replacement_set = 0
[dca @ 0x1ad4120]  downmix_coeff_code_embedded = 1
[dca @ 0x1ad4120]  primary_ch_set = 1
[dca @ 0x1ad4120]  downmix_type = 1
[dca @ 0x1ad4120] XLL NAVI size table, bits per entry: 12:
[dca @ 0x1ad4120]  band 0: 10087
[dca @ 0x1ad4120]   seg 0: 5096
[dca @ 0x1ad4120]    chset 0: 2527
[dca @ 0x1ad4120]   seg 1: 4991
[dca @ 0x1ad4120]    chset 0: 979

At least doesn't look obviously bogus. Some frames seem to have 2
segments and 512 samples / segment, others have 4 segments with 256
samples / segment.

I've put a copy of my repo at http://www.southpole.se/~nisse/libav.git,
branch xll.

Regards,
/Niels

-- 
Niels Möller. PGP-encrypted email is preferred. Keyid C0B98E26.
Internet email is subject to wholesale government surveillance.

_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to