Ow, it was quite easy to fix. Can anyone review the patch to fix cinelerra w/ the newer ffmpeg API? I think the fix is correct, as I got it looking at the ffmpeg svn diff.
ps: how will I version my cinelerra packages? git has no revision number! ps2: can anyone make a tag that represents the svn r1061 in the git repo? Bye, Rafael Diniz Em Saturday 27 September 2008, rafael2k escreveu: > Hello Frans, > I think we can fix the x264 and ffmpeg api changes. > In my opinion, put more outside code inside our repo is not the way to go. > > my first play w/ git (fix for quicktime/mpeg4.c): > > > --- a/quicktime/mpeg4.c > +++ b/quicktime/mpeg4.c > @@ -671,7 +671,7 @@ static int encode(quicktime_t *file, unsigned char > **row_pointers, int track) > > context->b_quant_factor = 1.25; > context->b_quant_offset = 1.25; > - context->error_resilience = FF_ER_CAREFUL; > + context->error_recognition = FF_ER_CAREFUL; > context->error_concealment = 3; > context->frame_skip_cmp = FF_CMP_DCTMAX; > context->ildct_cmp = FF_CMP_VSAD; > > > > Bye, > Rafael Diniz > > Em Wednesday 24 September 2008, Frans de Boer escreveu: > > Dear Readers, > > > > In case you have not noticed it yet, FFmpeg, x264 and maybe other > > packages have changed (and are still changing) their API/ABI as well as > > some structures. This causes that Cinelerra can't be compiled with > > FFmpeg SVN version 15262 and higher. The x264 libraries have changed > > too, but I still have to figure out which version is still usable. For > > now I am using the tarball of 20080825-2245. Note: the 2245 is probably > > a version number of some kind, but until this date, that number stays > > the same while the library is not backwards compatible anymore. > > > > Side Note: This causes also that the compilation of the most recent > > mplayer (out of SVN) will fail if you use FFmpeg SVN r15261 or younger. > > > > Q: Will there be any changes in the cinelerra SVN just to cope with > > these changes? > > Q: If not, is it not better to collect dependent libraries and place > > them in some repository - with a clear notice - to be used with the > > current SVN r1061? I know I will collect those functional sources to the > > latest working versions and probably will offer them online in the near > > future on my private server (no warranty about up-time). > > > > Kind Regards, > > Frans de Boer. > > > > PS: cinelerra-4 is affected too by these changes, so it will put more > > burden on the migration process. -- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- Ciência da Computação @ Unicamp Rádio Muda, radiolivre.org, TV Piolho, tvlivre.org, www.midiaindependente.org Chave PGP: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x2FF86098 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
diff --git a/quicktime/mpeg4.c b/quicktime/mpeg4.c index d418f66..09b7a85 100644 --- a/quicktime/mpeg4.c +++ b/quicktime/mpeg4.c @@ -671,7 +671,7 @@ static int encode(quicktime_t *file, unsigned char **row_pointers, int track) context->b_quant_factor = 1.25; context->b_quant_offset = 1.25; - context->error_resilience = FF_ER_CAREFUL; + context->error_recognition = FF_ER_CAREFUL; context->error_concealment = 3; context->frame_skip_cmp = FF_CMP_DCTMAX; context->ildct_cmp = FF_CMP_VSAD; diff --git a/quicktime/wma.c b/quicktime/wma.c index 6ceefe5..deb6056 100644 --- a/quicktime/wma.c +++ b/quicktime/wma.c @@ -187,10 +187,11 @@ printf("decode 2 %x %llx %llx\n", chunk_size, chunk_offset, chunk_offset + chunk // Decode chunk into work buffer. pthread_mutex_lock(&ffmpeg_lock); - result = avcodec_decode_audio(codec->decoder_context, + bytes_decoded = AVCODEC_MAX_AUDIO_FRAME_SIZE; + result = avcodec_decode_audio2(codec->decoder_context, (int16_t*)(codec->work_buffer + codec->output_size * sample_size), - &bytes_decoded, - codec->packet_buffer, + &bytes_decoded, + codec->packet_buffer, chunk_size); pthread_mutex_unlock(&ffmpeg_lock); if(bytes_decoded <= 0)
signature.asc
Description: This is a digitally signed message part.