[FFmpeg-devel] [PATCH 2/3] Support DTS-ES extension (XCh) in dca
Benjamin Larsson
banan
Mon Jun 21 14:06:54 CEST 2010
Nick Brereton skrev 2010-06-21 13:27:
> On Mon, 2010-06-21 at 10:23 +0200, Benjamin Larsson wrote:
>
>> Nick Brereton skrev 2010-06-21 00:39:
>>
>>> Index: libavcodec/dca.c
>>> ===================================================================
>>> --- libavcodec/dca.c (revision 23670)
>>> +++ libavcodec/dca.c (working copy)
>>> @@ -45,6 +45,7 @@
>>> #define DCA_SUBBANDS (32)
>>> #define DCA_ABITS_MAX (32) /* Should be 28 */
>>> #define DCA_SUBSUBFRAMES_MAX (4)
>>> +#define DCA_BLOCKS_MAX (16)
>>> #define DCA_LFE_MAX (3)
>>>
>>>
>> Ok.
>>
>>
>>
>>> enum DCAMode {
>>> @@ -237,6 +238,7 @@
>>> float add_bias; ///< output bias
>>> float scale_bias; ///< output scale
>>>
>>>
>>
>>
>>
>>> + DECLARE_ALIGNED(16, float, subband_samples)[DCA_BLOCKS_MAX][DCA_PRIM_CHANNELS_MAX][DCA_SUBBANDS][8];
>>>
>>>
>>
>>> @@ -915,7 +926,7 @@
>>> const float *quant_step_table;
>>>
>>> /* FIXME */
>>> - LOCAL_ALIGNED_16(float, subband_samples, [DCA_PRIM_CHANNELS_MAX], [DCA_SUBBANDS][8]);
>>> + float (*subband_samples)[DCA_SUBBANDS][8] = s->subband_samples[block_index];
>>> LOCAL_ALIGNED_16(int, block, [8]);
>>>
>>
>>
>> After split this is ok to be committed.
>>
>>
> I'm sorry - do you want the previous 2 hunks as a separate patch?
>
Yes.
>
>>
>>> DECLARE_ALIGNED(16, float, samples)[1536]; /* 6 * 256 = 1536, might only need 5 */
>>> const float *samples_chanptr[6];
>>>
>>> @@ -324,13 +326,85 @@
>>> *dst++ = get_bits(gb, bits);
>>> }
>>>
>>> -static int dca_parse_frame_header(DCAContext * s)
>>> +static int dca_parse_audio_coding_header(DCAContext * s)
>>> {
>>> int i, j;
>>>
> <snipped code>
>
>>> + return 0;
>>> +}
>>>
>>>
>> Move and rename in a separate patch.
>>
> I've split the dca_parse_frame_header into 2 functions, one retaining
> the original name (immediately below) - I can't really see a reasonable
> way to split this change.
>
Ok, then it is ok.
MvH
Benjamin Larsson
More information about the ffmpeg-devel
mailing list