[FFmpeg-devel] [PATCH 2/2] MxPEG decoder
Anatoly Nenashev
anatoly.nenashev
Mon Nov 8 18:12:05 CET 2010
On 08.11.2010 17:27, Anatoly Nenashev wrote:
> On 07.11.2010 16:28, Michael Niedermayer wrote:
>> On Sat, Nov 06, 2010 at 05:10:41AM +0300, Anatoly Nenashev wrote:
>> [...]
>>> + /* search for start marker - 0xff */
>>> + while (mxg->current_pos + FF_INPUT_BUFFER_PADDING_SIZE<
>>> mxg->buffer_size) {
>>> + uint32_t x;
>>> + uint8_t *p = mxg->buffer + mxg->current_pos;
>>> +
>>> + ret = get_partial_buffer(s->pb, p, 4);
>> calling this every 4 bytes is slow
>>
>>
>
> Replaced by 4-times get_byte calls.
>
>>> + if (ret< 0)
>>> + return ret;
>>> +
>>> + x = *(uint32_t*)p;
>>> + if (x& (~(x+0x01010101))& 0x80808080) {
>>> + if (p[0] == 0xff&& ret> 0) {
>>> + mxg->current_pos += 1;
>>> + url_fseek(s->pb, 1 - ret, SEEK_CUR);
>> these seek back calls can fail
>>
>>
>
> Reimplemented without url_fseek() calls.
>
>
>
Possible violation of write access is corrected.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mxg_v14.patch
Type: text/x-patch
Size: 10545 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20101108/7338ac1d/attachment.bin>
More information about the ffmpeg-devel
mailing list