Date: Mon, 2 Apr 2007 14:31:54 -0400 From: "Michael Johnson" <ahze@ahze.net> To: "Bill Fenner" <fenner@research.att.com> Cc: freebsd-multimedia@freebsd.org Subject: Re: ports/109379: ffmpeg-devel can't dynamically link to faad2 Message-ID: <b2203fed0704021131ma423075q86331dc7d593e916@mail.gmail.com> In-Reply-To: <200704021750.l32HoCS8083371@freefall.freebsd.org> References: <200704021750.l32HoCS8083371@freefall.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 4/2/07, Bill Fenner <fenner@research.att.com> wrote: > > The following reply was made to PR ports/109379; it has been noted by > GNATS. > > From: Bill Fenner <fenner@research.att.com> > To: ahze@FreeBSD.org > Cc: freebsd-gnats-submit@FreeBSD.org, freebsd-multimedia@FreeBSD.org > Subject: Re: ports/109379: ffmpeg-devel can't dynamically link to faad2 > Date: Mon, 2 Apr 2007 10:14:51 -0700 > > While faad 2.5,1 includes API compatability, > as I stated in the description of the problem, > the linkage that ffmpeg uses is not able to > use that API compatability. This is because > the faad API compatability is performed with > #defines, and the ffmpeg linkage happens with > fancy macros that put together the function > names in a way that doesn't allow the #defines > to work. > > (The dfaac() macro in libavcodec/faad.c > uses "faacDec" ## a to put symbols together > to get, e.g. faacDecGetErrorMessage, into > strings, which it then looks up in the shared > library with dlsym(), which never gives the > "compatability API" a chance to get in the > middle). > > Were you able to get the steps in "how-to-repeat:" > to work, or did you just close the PR because > you think it is supposed to work? I think it is > supposed to work too, but that doesn't mean it does. > > I spent an hour rebuilding faad (of which I already > had 2.5,1 installed) and ffmpeg-devel (which I upgraded > from ffmpeg-devel-0.4.9.c.2006032300_4 to > ffmpeg-devel-0.4.9.c.2006032300_5) to make sure that > the bug was still there. okay, you're right. I'll fix. frogbits% pkg_info -I ffmpeg\* faad\* > faad2-2.5,1 MPEG-2 and MPEG-4 AAC audio decoder > ffmpeg-devel-0.4.9.c.2006032300_5 Hyper fast realtime audio/video > encoder/converter, streamin > frogbits% ffmpeg -i Diego-2.mp4 /tmp/foo.mpeg > FFmpeg version CVS, Copyright (c) 2000-2004 Fabrice Bellard > configuration: --cc=cc --prefix=/usr/local --make=gmake > --disable-debug --enable-memalign-hack --enable-shared > --source-path=/usr/ports/multimedia/ffmpeg-devel/work/FFMpeg-2006032300 > --enable-a52 --enable-dts --enable-faac --enable-faad --enable-faadbin > --enable-gpl --enable-libgsm --enable-mp3lame --enable-libogg --enable-pp > --enable-pthreads --enable-vorbis --enable-x264 --enable-xvid > libavutil version: 49.0.0 > libavcodec version: 51.8.0 > libavformat version: 50.4.0 > built on Apr 2 2007 10:02:29, gcc: 3.4.4 [FreeBSD] 20050518 > > Seems that stream 0 comes from film source: 24000.00 (24000/1) -> 23.98(24000/1001) > Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Diego-2.mp4': > Duration: 00:42:45.1, start: 0.000000, bitrate: 1129 kb/s > Stream #0.0(eng), 23.98 fps(r): Video: mpeg4, yuv420p, 640x480 > Stream #0.1(eng): Audio: aac, 44100 Hz, stereo > Output #0, mpeg, to '/tmp/foo.mpeg': > Stream #0.0, 23.98 fps(c): Video: mpeg1video, yuv420p, 640x480, q=2-31, > 200 kb/s > Stream #0.1: Audio: mp2, 44100 Hz, stereo, 64 kb/s > Stream mapping: > Stream #0.0 -> #0.0 > Stream #0.1 -> #0.1 > [aac @ 0x28356028]FAAD library: cannot resolve faacDecGetErrorMessage in > libfaad.so.0! > Error while opening codec for input stream #0.1 > > > Bill > _______________________________________________ > freebsd-multimedia@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-multimedia > To unsubscribe, send any mail to " > freebsd-multimedia-unsubscribe@freebsd.org" >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?b2203fed0704021131ma423075q86331dc7d593e916>