[FFmpeg-devel] [PATCH] check if bsf returns an error in ffmpeg.c

Michael Niedermayer michaelni
Mon Jan 21 14:28:07 CET 2008


On Mon, Jan 21, 2008 at 02:16:45PM +0100, Benoit Fouet wrote:
> Michael Niedermayer wrote:
> > On Mon, Jan 21, 2008 at 01:35:33PM +0100, Benoit Fouet wrote:
> >   
> >> Hello,
> >>
> >> Michael Niedermayer wrote:
> >>     
> >>> Hi
> >>>
> >>> On Fri, Jan 18, 2008 at 12:31:15PM +0100, Benoit Fouet wrote:
> >>>   
> >>>       
> >>>> Michael Niedermayer wrote:
> >>>>     
> >>>>         
> >>>>> On Fri, Jan 18, 2008 at 12:05:48PM +0100, Benoit Fouet wrote:
> >>>>>   
> >>>>>       
> >>>>>           
> >>>>>> Michael Niedermayer wrote:
> >>>>>>     
> >>>>>>         
> >>>>>>             
> >>>>>>> On Tue, Jan 15, 2008 at 05:49:21PM +0100, Benoit Fouet wrote:
> >>>>>>>   
> >>>>>>>       
> >>>>>>>           
> >>>>>>>               
> >>>>>>>> Hi,
> >>>>>>>>
> >>>>>>>> attached is a patch to $subj
> >>>>>>>>     
> >>>>>>>>         
> >>>>>>>>             
> >>>>>>>>                 
> >>>>>>> silently muxing broken data is not good
> >>>>>>>
> >>>>>>>   
> >>>>>>>       
> >>>>>>>           
> >>>>>>>               
> >>>>>> do you mean this should be done (muxing) with a message or not done at all ?
> >>>>>> if the bitstream filter returns an error, it shouldn't have touched the
> >>>>>> data IMHO, so we would mux input data unchanged
> >>>>>> (I'll have to have a look at current bitstream filters to know what they
> >>>>>> do, though)
> >>>>>>     
> >>>>>>         
> >>>>>>             
> >>>>> I think mux with error message ...
> >>>>>
> >>>>>   
> >>>>>       
> >>>>>           
> >>>> something like the attached patch then ?
> >>>> (i was wondering whether we should output the message only once or not...)
> >>>>     
> >>>>         
> >>> id say always print
> >>>
> >>> [...]
> >>>   
> >>>       
> >>>> Index: ffmpeg.c
> >>>> ===================================================================
> >>>> --- ffmpeg.c	(revision 11551)
> >>>> +++ ffmpeg.c	(working copy)
> >>>> @@ -415,10 +415,12 @@
> >>>>                                            &new_pkt.data, &new_pkt.size,
> >>>>                                            pkt->data, pkt->size,
> >>>>                                            pkt->flags & PKT_FLAG_KEY);
> >>>> -        if(a){
> >>>> +        if(a>0){
> >>>>              av_free_packet(pkt);
> >>>>              new_pkt.destruct= av_destruct_packet;
> >>>>          }
> >>>> +        else if(a<0)
> >>>> +            print_error("av_bitstream_filter_filter()", ret);
> >>>>     
> >>>>         
> >>> this has a problem, it doesnt print which stream caused the error nor
> >>> which bitstream filter, both could be quite usefull
> >>>
> >>>   
> >>>       
> >> how is this one ?
> >>     
> >
> > please also print the AVCodecContext.codec.name
> > its a lot easier than stream_index=3 to interpret for a user
> >
> >   
> 
> like that ?

ok

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Complexity theory is the science of finding the exact solution to an
approximation. Benchmarking OTOH is finding an approximation of the exact
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20080121/79d110bd/attachment.pgp>



More information about the ffmpeg-devel mailing list