[Ffmpeg-devel] [PATCH] MP3 decoding from RTP stream. Getting "invalid new backstep"
Michael Niedermayer
michaelni
Mon Nov 6 19:13:42 CET 2006
Hi
On Mon, Nov 06, 2006 at 06:10:28PM +0100, Guillaume POIRIER wrote:
> Hi,
>
> On 11/6/06, Michael Niedermayer <michaelni at gmx.at> wrote:
> >Hi
> >On Mon, Nov 06, 2006 at 05:44:07PM +0100, Martin wrote:
> >> Hi
> >>
> >> Michael Niedermayer wrote:
>
> [..]
>
> >> > the whole above should be replaced by a if (discard_frame) \n
> >memset(..., 0, ...)
> >> > as already said
> >> >
> >> > [...]
> >>
> >> Ok, I didn't see that. Obviously its much better that way... :)
> >> Attached the updated patch. Hope everything is finally ok now... ;)
> >
> >looks ok
> >
> >whoever applies this should test it with a damaged mp3 though
>
> I don't have one on hand. Martin, please provide the damaged mp3 that
> your patch is supposed to improve support for.
try the attached program (but make a backup first ;) )
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
In the past you could go to a library and read, borrow or copy any book
Today you'd get arrested for mere telling someone where the library is
-------------- next part --------------
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <inttypes.h>
int main(int argc, char** argv)
{
FILE *f= fopen(argv[1], "rb+");
int count= atoi(argv[2]);
int maxburst= atoi(argv[3]);
int length, i;
srand (time (0));
fseek(f, 0, SEEK_END);
length= ftell(f);
fseek(f, 0, SEEK_SET);
while(count--){
int burst= random() * (uint64_t) maxburst / RAND_MAX;
int pos= random() * (uint64_t) length / RAND_MAX;
fseek(f, pos, SEEK_SET);
while(burst--){
int val= random() * 256ULL / RAND_MAX;
fwrite(&val, 1, 1, f);
}
}
return 0;
}
More information about the ffmpeg-devel
mailing list