[FFmpeg-devel] [PATCH] avcodec/wmaprodec: skip foreign XMA packets

Joel Linn jl at conductive.de
Wed Sep 1 00:19:03 EEST 2021


On 2021-08-31 23:13, Paul B Mahol wrote:
> On Tue, Aug 31, 2021 at 11:10 PM Joel Linn <jl at conductive.de> wrote:
> 
>> Hello,
>> 
>> On 2021-08-31 22:53, Paul B Mahol wrote:
>> > What samples this fixes?
>> 
>> No specific sample, it depends on the way the decoder is invoked.
>> 
>> It fixes using the xma1/2 decoder directly on a memory buffer and not
>> wanting to decode all channels in the stream.
>> Say the stream has 6 channels and one wants to only decode 2.
>> Previously this was not possible due to the skip logic of the channel
>> interleaving.
>> 
>> This should also make the decoder more robust because in theory it is
>> possible to have an xma stream which has chunks of 2kB junk data
>> (packets) which are expected to be skipped due to the skip_packets
>> numbers.
>> I haven't seen such streams though.
>> 
> 
> Am I correct you already use XMA parser?

In my case I was working with raw stream buffers, the XMA format (RIFF) 
headers are invisible to me.
The format is parsed and processed by guest code (inside xenia 
emulator).
ffmpeg replaces a hardware decoder dsp in this case.


More information about the ffmpeg-devel mailing list