* Moritz Mühlenhoff [110831 21:47 +0200]: > tags 638250 patch > thanks > > On Wed, Aug 17, 2011 at 09:22:56PM +0200, Moritz Muehlenhoff wrote: > > Package: moc-ffmpeg-plugin > > Severity: important > > > > Hi, > > the transition from ffmpeg/0.6.2 to libav/0.7 is planned soonish. > > (libav is a ffmpeg fork, to which Debian will switch, see > > http://en.wikipedia.org/wiki/FFmpeg for more information) > > > > Your package currently fails to build from source when built against > > libav/0.7.2 and needs to be adapted. You can test this yourself by > > building against the packages from experimental: > > Attached patch fixes compilation with libav 0.7 and can also be used > for current sid with libav 0.6. (moc uses deprecated API functions, > which have finally been removed in 0.7).
Upstream provides the attached one which works on i286 and amd64. Other archs I don't have handy. I determine a bug of libav 0.7.1 playing moc on arch ppc which can be reproduced by ffplay version 0.7.1-4:0.7.1-2: GNU gdb (GDB) 7.3-debian Copyright (C) 2011 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "powerpc-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /usr/bin/ffplay...(no debugging symbols found)...done. [New LWP 18580] [New LWP 18577] warning: Can't read pathname for load map: Eingabe-/Ausgabefehler. [Thread debugging using libthread_db enabled] Core was generated by `ffplay -loglevel debug -debug 6 03-G3_Live_in_Denver-Joe_Satriani-Starry_Night.'. Program terminated with signal 11, Segmentation fault. #0 0x0f6ff268 in ff_fft_calc_altivec () from /usr/lib/altivec/libavcodec.so.53 (gdb) bt #0 0x0f6ff268 in ff_fft_calc_altivec () from /usr/lib/altivec/libavcodec.so.53 #1 0x0f6fea2c in ?? () from /usr/lib/altivec/libavcodec.so.53 #2 0x0f437ce8 in ?? () from /usr/lib/altivec/libavcodec.so.53 #3 0x0f43caa8 in ?? () from /usr/lib/altivec/libavcodec.so.53 #4 0x0f43ccec in ?? () from /usr/lib/altivec/libavcodec.so.53 #5 0x0f77f1e0 in avcodec_decode_audio3 () from /usr/lib/altivec/libavcodec.so.53 #6 0x0ff3f924 in av_find_stream_info () from /usr/lib/altivec/libavformat.so.53 #7 0x10008ac8 in ?? () #8 0x0f18f63c in ?? () from /usr/lib/libSDL-1.2.so.0 #9 0x0f1d7e18 in ?? () from /usr/lib/libSDL-1.2.so.0 #10 0x0f1457a0 in start_thread () from /lib/powerpc-linux-gnu/libpthread.so.0 #11 0x0f09c9f0 in clone () from /lib/powerpc-linux-gnu/libc.so.6 Backtraces from mocp are mostly identical. libavcodec.so.53 and libavformat.so.53 are potential packages to file a bug against, isn't it? Comments are welcome. Thanks Elimar -- We all know Linux is great... it does infinite loops in 5 seconds. -- Linus Torvalds
Index: decoder_plugins/ffmpeg/ffmpeg.c =================================================================== --- decoder_plugins/ffmpeg/ffmpeg.c (Revision 2360) +++ decoder_plugins/ffmpeg/ffmpeg.c (Revision 2361) @@ -33,6 +33,9 @@ #ifndef FF_API_OLD_METADATA #define FF_API_OLD_METADATA (LIBAVFORMAT_VERSION_MAJOR < 53) #endif +#ifndef CODEC_TYPE_AUDIO +#define CODEC_TYPE_AUDIO AVMEDIA_TYPE_AUDIO +#endif /* FFmpeg also likes common names, without that, our common.h and log.h * would not be included. */