[MPlayer-users] lavf Seg Fault

Larry Reznick lreznick at idistream.com
Mon May 12 20:13:27 CEST 2008


Larry Reznick wrote:
> Corey Hickey wrote:
>   
>> Larry Reznick wrote:
>>   
>>     
>>> I have been able to put previously encoded video and audio into MOV 
>>> containers using the following syntax:
>>>
>>> mencoder -ovc copy -oac copy input.avi -of lavf -ofps 50 -o output.mov
>>>
>>> This has worked fine for months. Other players have been able to play them.
>>>
>>> I typically run an SVN update every Monday. Yesterday's update seg 
>>> faulted. I ran another update today, and it seg faulted, too. This has 
>>> to have broken within the last week because it ran ok before my update 
>>> on Monday.
>>>     
>>>       
>> I've asked how to fix this on ffmpeg-cvslog; the problem is apparent to
>> me, but how to fix it is not. Follow along if you want:
>>
>> http://lists.mplayerhq.hu/pipermail/ffmpeg-cvslog/2008-May/013614.html
>>
>> For a temporary fix, try reverting the attached patch.
>>
>> -Corey
>>   
>> ------------------------------------------------------------------------
>>
>> Author: michael
>> Date: Mon May  5 11:17:56 2008
>> New Revision: 13061
>>
>> Log:
>> Check url_seek() in url_open().
>>
>>
>> Modified:
>>    trunk/libavformat/avio.c
>>
>> Modified: trunk/libavformat/avio.c
>> ==============================================================================
>> --- trunk/libavformat/avio.c	(original)
>> +++ trunk/libavformat/avio.c	Mon May  5 11:17:56 2008
>> @@ -113,6 +113,12 @@ int url_open(URLContext **puc, const cha
>>          *puc = NULL;
>>          return err;
>>      }
>> +
>> +    //We must be carefull here as url_seek() could be slow, for example for http
>> +    if(   (flags & (URL_WRONLY | URL_RDWR))
>> +       || !strcmp(proto_str, "file"))
>> +        if(!uc->is_streamed && url_seek(uc, 0, SEEK_SET) < 0)
>> +            uc->is_streamed= 1;
>>      *puc = uc;
>>      return 0;
>>   fail:
>> _______________________________________________
>> ffmpeg-cvslog mailing list
>> ffmpeg-cvslog at mplayerhq.hu
>> https://lists.mplayerhq.hu/mailman/listinfo/ffmpeg-cvslog
>>
>>   
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> MPlayer-users mailing list
>> MPlayer-users at mplayerhq.hu
>> https://lists.mplayerhq.hu/mailman/listinfo/mplayer-users
>>     
>
>
> Thanks, Corey. That patch is definitely the problem. Commenting that 
> code section out is sufficient to get the muxing working again.
>
> It seems to me that this patch should be backed out until someone can 
> prove the correct way to setup data structures before the url_seek() 
> call. As the patch indicates, the prior code didn't have this segment. 
> There must be some reason why opening requires a rewind, which is what 
> this seek appears to try to do.
>
> --Larry
> _______________________________________________
> MPlayer-users mailing list
> MPlayer-users at mplayerhq.hu
> https://lists.mplayerhq.hu/mailman/listinfo/mplayer-users

I've just installed SVN r26751 and the problem is now gone, even though 
the libavformat/avio.c code is patched as above. Someone fixed it 
elsewhere. Thanks!

--Larry



More information about the MPlayer-users mailing list