[FFmpeg-devel] [PATCH 2/2] avformat/mp3enc: Avoid SEEK_END as it is unsupported
Andreas Rheinhardt
andreas.rheinhardt at gmail.com
Tue May 14 15:58:00 EEST 2019
James Almer:
> On 5/14/2019 8:04 AM, Michael Niedermayer wrote:
>> Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
>> ---
>> libavformat/mp3enc.c | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/libavformat/mp3enc.c b/libavformat/mp3enc.c
>> index dd662f5473..f4814be80e 100644
>> --- a/libavformat/mp3enc.c
>> +++ b/libavformat/mp3enc.c
>> @@ -391,6 +391,7 @@ static void mp3_update_xing(AVFormatContext *s)
>> uint16_t tag_crc;
>> uint8_t *toc;
>> int i, rg_size;
>> + int64_t old_pos = avio_tell(s->pb);
>>
>> /* replace "Xing" identification string with "Info" for CBR files. */
>> if (!mp3->has_variable_bitrate)
>> @@ -450,7 +451,7 @@ static void mp3_update_xing(AVFormatContext *s)
>>
>> avio_seek(s->pb, mp3->xing_frame_offset, SEEK_SET);
>> avio_write(s->pb, mp3->xing_frame, mp3->xing_frame_size);
>> - avio_seek(s->pb, 0, SEEK_END);
>> + avio_seek(s->pb, old_pos, SEEK_SET);
>
> What do you mean unsupported?
>
avio_seek only accepts SEEK_CUR and SEEK_SET (possibly OR'ed with
AVSEEK_FORCE) as whence parameter (everything else is AVERROR(EINVAL)).
- Andreas
More information about the ffmpeg-devel
mailing list