[MacPorts] #42190: Can ffmpeg be built with libfdk_aac (--enable-libfdk-aac)?
#42190: Can ffmpeg be built with libfdk_aac (--enable-libfdk-aac)? ----------------------------+-------------------------------- Reporter: clint.olsen@… | Owner: macports-tickets@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Keywords: ffmpeg,nonfree | Port: ffmpeg ----------------------------+-------------------------------- I've downloaded what I believe to be the fdk-aac library (the ffmpeg is especially obtuse on this), and it says you must enable some configure switches in order to use this library. I noticed there is a +nonfree variant, but this just seems to include faac. I was curious if this variant is possible. If necessary, I can build it myself, but I was hoping to leverage the ports system as much as possible. Thanks... -- Ticket URL: <https://trac.macports.org/ticket/42190> MacPorts <http://www.macports.org/> Ports system for OS X
#42190: Can ffmpeg be built with libfdk_aac (--enable-libfdk-aac)? ----------------------------+---------------------- Reporter: clint.olsen@… | Owner: devans@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: Port: ffmpeg | ----------------------------+---------------------- Changes (by larryv@…): * cc: devans@…, openmaintainer@… (removed) * keywords: ffmpeg,nonfree => * owner: macports-tickets@… => devans@… -- Ticket URL: <https://trac.macports.org/ticket/42190#comment:1> MacPorts <http://www.macports.org/> Ports system for OS X
#42190: Can ffmpeg be built with libfdk_aac (--enable-libfdk-aac)? ----------------------------+---------------------- Reporter: clint.olsen@… | Owner: devans@… Type: enhancement | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: Port: ffmpeg | ----------------------------+---------------------- Changes (by devans@…): * status: new => assigned -- Ticket URL: <https://trac.macports.org/ticket/42190#comment:2> MacPorts <http://www.macports.org/> Ports system for OS X
#42190: Can ffmpeg be built with libfdk_aac (--enable-libfdk-aac)? ----------------------------+---------------------- Reporter: clint.olsen@… | Owner: devans@… Type: enhancement | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: aac Port: ffmpeg | ----------------------------+---------------------- Changes (by devans@…): * keywords: => aac Comment: This requires the [http://www.iis.fraunhofer.de/en/bf/amm/implementierungen/fdkaaccodec.html FDK AAC library developed by Fraunhofer IIS for Android] which has not yet been ported to MacPorts. Licensing also needs to be reviewed. Sources can be found here -> http://sourceforge.net/projects/opencore- amr/files/fdk-aac/ Will look into it. If you have already developed a Portfile for the library, feel free to contribute it for review (you can attach it to this ticket). Note that ffmpeg already has its own implementation of AAC (codecs aac, aac-latm) which is GPL'd as well as the non-free version based on faac. {{{ ffmpeg -decoders | grep aac ffmpeg version 2.1.git-3ca7085 Copyright (c) 2000-2014 the FFmpeg developers built on Jan 17 2014 17:30:13 with Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn) configuration: --prefix=/opt/local --enable-swscale --enable-avfilter --enable-avresample --enable-libmp3lame --enable-libvorbis --enable- libopus --enable-libtheora --enable-libschroedinger --enable-libopenjpeg --enable-libmodplug --enable-libvpx --enable-libspeex --enable-libass --enable-libbluray --enable-gnutls --enable-fontconfig --enable- libfreetype --disable-indev=jack --disable-outdev=xv --mandir=/opt/local/share/man --enable-shared --enable-pthreads --cc=/usr/bin/clang --arch=x86_64 --enable-yasm --enable-libdc1394 --enable-gpl --enable-postproc --enable-libx264 --enable-libxvid libavutil 52. 62.100 / 52. 62.100 libavcodec 55. 48.101 / 55. 48.101 libavformat 55. 23.103 / 55. 23.103 libavdevice 55. 5.102 / 55. 5.102 libavfilter 4. 1.100 / 4. 1.100 libavresample 1. 1. 0 / 1. 1. 0 libswscale 2. 5.101 / 2. 5.101 libswresample 0. 17.104 / 0. 17.104 libpostproc 52. 3.100 / 52. 3.100 A....D aac AAC (Advanced Audio Coding) A....D aac_latm AAC LATM (Advanced Audio Coding LATM syntax) }}} -- Ticket URL: <https://trac.macports.org/ticket/42190#comment:3> MacPorts <http://www.macports.org/> Ports system for OS X
#42190: Can ffmpeg be built with libfdk_aac (--enable-libfdk-aac)? ----------------------------+---------------------- Reporter: clint.olsen@… | Owner: devans@… Type: enhancement | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: aac Port: ffmpeg | ----------------------------+---------------------- Comment (by clint.olsen@…): I wouldn't mind contributing a portfile if I knew what the heck I was doing. If there's a pointer on how to modify a port, I'll see if it's within my paygrade. It seems like since libfdk_aac is not yet a port that this would be a showstopper. I just took your configure arguments and added support for libfdk_aac. The only issue is that I do get a library configuration mismatch when I try to run ffmpeg -codecs: {{{ ffmpeg version 2.1.3 Copyright (c) 2000-2013 the FFmpeg developers built on Jan 19 2014 11:34:21 with Apple LLVM version 4.2 (clang-425.0.28) (based on LLVM 3.2svn) configuration: --prefix=/opt/local --enable-swscale --enable-avfilter --enable-avresample --enable-libmp3lame --enable-libvorbis --enable- libopus --enable-libtheora --enable-libschroedinger --enable-libopenjpeg --enable-libmodplug --enable-libvpx --enable-libspeex --enable-libass --enable-libbluray --enable-gnutls --enable-fontconfig --enable- libfreetype --disable-indev=jack --disable-outdev=xv --mandir=/opt/local/share/man --enable-shared --enable-pthreads --cc=/usr/bin/clang --arch=x86_64 --enable-yasm --enable-gpl --enable- postproc --enable-libx264 --enable-libxvid --enable-nonfree --enable- libfaac --enable-libfdk-aac WARNING: library configuration mismatch avutil configuration: --prefix=/opt/local --enable-swscale --enable-avfilter --enable-avresample --enable-libmp3lame --enable- libvorbis --enable-libopus --enable-libtheora --enable-libschroedinger --enable-libopenjpeg --enable-libmodplug --enable-libvpx --enable-libspeex --enable-libass --enable-libbluray --enable-gnutls --enable-fontconfig --enable-libfreetype --disable-indev=jack --disable-outdev=xv --mandir=/opt/local/share/man --enable-shared --enable-pthreads --cc=/usr/bin/clang --arch=x86_64 --enable-yasm --enable-gpl --enable- postproc --enable-libx264 --enable-libxvid --enable-nonfree --enable- libfaac avcodec configuration: --prefix=/opt/local --enable-swscale --enable-avfilter --enable-avresample --enable-libmp3lame --enable- libvorbis --enable-libopus --enable-libtheora --enable-libschroedinger --enable-libopenjpeg --enable-libmodplug --enable-libvpx --enable-libspeex --enable-libass --enable-libbluray --enable-gnutls --enable-fontconfig --enable-libfreetype --disable-indev=jack --disable-outdev=xv --mandir=/opt/local/share/man --enable-shared --enable-pthreads --cc=/usr/bin/clang --arch=x86_64 --enable-yasm --enable-gpl --enable- postproc --enable-libx264 --enable-libxvid --enable-nonfree --enable- libfaac avformat configuration: --prefix=/opt/local --enable-swscale --enable-avfilter --enable-avresample --enable-libmp3lame --enable- libvorbis --enable-libopus --enable-libtheora --enable-libschroedinger --enable-libopenjpeg --enable-libmodplug --enable-libvpx --enable-libspeex --enable-libass --enable-libbluray --enable-gnutls --enable-fontconfig --enable-libfreetype --disable-indev=jack --disable-outdev=xv --mandir=/opt/local/share/man --enable-shared --enable-pthreads --cc=/usr/bin/clang --arch=x86_64 --enable-yasm --enable-gpl --enable- postproc --enable-libx264 --enable-libxvid --enable-nonfree --enable- libfaac avdevice configuration: --prefix=/opt/local --enable-swscale --enable-avfilter --enable-avresample --enable-libmp3lame --enable- libvorbis --enable-libopus --enable-libtheora --enable-libschroedinger --enable-libopenjpeg --enable-libmodplug --enable-libvpx --enable-libspeex --enable-libass --enable-libbluray --enable-gnutls --enable-fontconfig --enable-libfreetype --disable-indev=jack --disable-outdev=xv --mandir=/opt/local/share/man --enable-shared --enable-pthreads --cc=/usr/bin/clang --arch=x86_64 --enable-yasm --enable-gpl --enable- postproc --enable-libx264 --enable-libxvid --enable-nonfree --enable- libfaac avfilter configuration: --prefix=/opt/local --enable-swscale --enable-avfilter --enable-avresample --enable-libmp3lame --enable- libvorbis --enable-libopus --enable-libtheora --enable-libschroedinger --enable-libopenjpeg --enable-libmodplug --enable-libvpx --enable-libspeex --enable-libass --enable-libbluray --enable-gnutls --enable-fontconfig --enable-libfreetype --disable-indev=jack --disable-outdev=xv --mandir=/opt/local/share/man --enable-shared --enable-pthreads --cc=/usr/bin/clang --arch=x86_64 --enable-yasm --enable-gpl --enable- postproc --enable-libx264 --enable-libxvid --enable-nonfree --enable- libfaac avresample configuration: --prefix=/opt/local --enable-swscale --enable-avfilter --enable-avresample --enable-libmp3lame --enable- libvorbis --enable-libopus --enable-libtheora --enable-libschroedinger --enable-libopenjpeg --enable-libmodplug --enable-libvpx --enable-libspeex --enable-libass --enable-libbluray --enable-gnutls --enable-fontconfig --enable-libfreetype --disable-indev=jack --disable-outdev=xv --mandir=/opt/local/share/man --enable-shared --enable-pthreads --cc=/usr/bin/clang --arch=x86_64 --enable-yasm --enable-gpl --enable- postproc --enable-libx264 --enable-libxvid --enable-nonfree --enable- libfaac swscale configuration: --prefix=/opt/local --enable-swscale --enable-avfilter --enable-avresample --enable-libmp3lame --enable- libvorbis --enable-libopus --enable-libtheora --enable-libschroedinger --enable-libopenjpeg --enable-libmodplug --enable-libvpx --enable-libspeex --enable-libass --enable-libbluray --enable-gnutls --enable-fontconfig --enable-libfreetype --disable-indev=jack --disable-outdev=xv --mandir=/opt/local/share/man --enable-shared --enable-pthreads --cc=/usr/bin/clang --arch=x86_64 --enable-yasm --enable-gpl --enable- postproc --enable-libx264 --enable-libxvid --enable-nonfree --enable- libfaac swresample configuration: --prefix=/opt/local --enable-swscale --enable-avfilter --enable-avresample --enable-libmp3lame --enable- libvorbis --enable-libopus --enable-libtheora --enable-libschroedinger --enable-libopenjpeg --enable-libmodplug --enable-libvpx --enable-libspeex --enable-libass --enable-libbluray --enable-gnutls --enable-fontconfig --enable-libfreetype --disable-indev=jack --disable-outdev=xv --mandir=/opt/local/share/man --enable-shared --enable-pthreads --cc=/usr/bin/clang --arch=x86_64 --enable-yasm --enable-gpl --enable- postproc --enable-libx264 --enable-libxvid --enable-nonfree --enable- libfaac postproc configuration: --prefix=/opt/local --enable-swscale --enable-avfilter --enable-avresample --enable-libmp3lame --enable- libvorbis --enable-libopus --enable-libtheora --enable-libschroedinger --enable-libopenjpeg --enable-libmodplug --enable-libvpx --enable-libspeex --enable-libass --enable-libbluray --enable-gnutls --enable-fontconfig --enable-libfreetype --disable-indev=jack --disable-outdev=xv --mandir=/opt/local/share/man --enable-shared --enable-pthreads --cc=/usr/bin/clang --arch=x86_64 --enable-yasm --enable-gpl --enable- postproc --enable-libx264 --enable-libxvid --enable-nonfree --enable- libfaac }}} I'm not entirely sure where the mismatch is happening. -- Ticket URL: <https://trac.macports.org/ticket/42190#comment:4> MacPorts <http://www.macports.org/> Ports system for OS X
#42190: Can ffmpeg be built with libfdk_aac (--enable-libfdk-aac)? ----------------------------+---------------------- Reporter: clint.olsen@… | Owner: devans@… Type: enhancement | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: aac Port: ffmpeg | ----------------------------+---------------------- Comment (by clint.olsen@…): Oh, I forgot to mention about the builtin aac and faac support. The ffmpeg documentation clearly states that the Fraunhofer codec is a superior implementation to the still experimental builtin aac and even faac. So if fidelity is a goal, then there is a compelling reason to use this codec. You can see the entire diatribe here: http://trac.ffmpeg.org/wiki/AACEncodingGuide -- Ticket URL: <https://trac.macports.org/ticket/42190#comment:5> MacPorts <http://www.macports.org/> Ports system for OS X
#42190: Can ffmpeg be built with libfdk_aac (--enable-libfdk-aac)? ----------------------------+---------------------- Reporter: clint.olsen@… | Owner: devans@… Type: enhancement | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: aac Port: ffmpeg | ----------------------------+---------------------- Comment (by mopihopi@…): devans: Is there anything else that is needed to add the libfdk-aac Portfile (attached above)? I'll attach patches for the ffmpeg and ffmpeg- devel Portfile as well. -- Ticket URL: <https://trac.macports.org/ticket/42190#comment:8> MacPorts <http://www.macports.org/> Ports system for OS X
#42190: Can ffmpeg be built with libfdk_aac (--enable-libfdk-aac)? ----------------------------+---------------------- Reporter: clint.olsen@… | Owner: devans@… Type: enhancement | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: aac Port: ffmpeg | ----------------------------+---------------------- Comment (by devans@…): I'm planning to include this as part of an upgrade to ffmpeg 2.1.4 in the next day or so. -- Ticket URL: <https://trac.macports.org/ticket/42190#comment:9> MacPorts <http://www.macports.org/> Ports system for OS X
#42190: Can ffmpeg be built with libfdk_aac (--enable-libfdk-aac)? ----------------------------+---------------------- Reporter: clint.olsen@… | Owner: devans@… Type: enhancement | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: aac Port: ffmpeg | ----------------------------+---------------------- Comment (by devans@…): Replying to [comment:8 mopihopi@…]:
devans: Is there anything else that is needed to add the libfdk-aac Portfile (attached above)? Concerning your compiler.blacklist statement: have you verified that this is sufficient on OS X 10.6 (SL) or earlier. I suspect that this should be expanded to include other gcc-4.2 versions and perhaps clang < 300 which is available on that platform and is not well behaved somethimes. I can't test this locally and would have to defer this testing to the SL buildbot.
Very minor issue: revision 0 is the default and can be omitted. -- Ticket URL: <https://trac.macports.org/ticket/42190#comment:10> MacPorts <http://www.macports.org/> Ports system for OS X
#42190: Can ffmpeg be built with libfdk_aac (--enable-libfdk-aac)? ----------------------------+---------------------- Reporter: clint.olsen@… | Owner: devans@… Type: enhancement | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: aac Port: ffmpeg | ----------------------------+---------------------- Comment (by devans@…): I don't like committing a port with nomaintainer. Since this is your creation would you be willing to accept maintainership with openmaintainer? -- Ticket URL: <https://trac.macports.org/ticket/42190#comment:11> MacPorts <http://www.macports.org/> Ports system for OS X
#42190: Can ffmpeg be built with libfdk_aac (--enable-libfdk-aac)? ----------------------------+---------------------- Reporter: clint.olsen@… | Owner: devans@… Type: enhancement | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: aac Port: ffmpeg | ----------------------------+---------------------- Comment (by mopihopi@…): Replying to [comment:10 devans@…]:[[BR]] Sounds good. libfdk-aac does build using gcc-4.2 on OS X 10.6.8, however it crashed at runtime on some samples. Blacklisting gcc-4.2 resolved the issue. llvm- gcc-4.2 and clang on OS X 10.6.8 seem to both work fine. I don't mind maintaining this Portfile with openmaintainer if you don't want to maintain it. -- Ticket URL: <https://trac.macports.org/ticket/42190#comment:12> MacPorts <http://www.macports.org/> Ports system for OS X
#42190: Can ffmpeg be built with libfdk_aac (--enable-libfdk-aac)? ----------------------------+---------------------- Reporter: clint.olsen@… | Owner: devans@… Type: enhancement | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: aac Port: ffmpeg | ----------------------------+---------------------- Comment (by devans@…): libfdk-aac committed in r117505 with modifications: * added maintainer with openmaintainer * remove port group compiler_blacklist_versions (only needed if you want to specify compiler version comparisons in compiler.blacklist) * added fix for livecheck (default livecheck fails to report current version 1.3 in this case) * reformating for readability Builds correctly on all buildbots Thanks for accepting maintainership of this new port. -- Ticket URL: <https://trac.macports.org/ticket/42190#comment:13> MacPorts <http://www.macports.org/> Ports system for OS X
#42190: Can ffmpeg be built with libfdk_aac (--enable-libfdk-aac)? ----------------------------+---------------------- Reporter: clint.olsen@… | Owner: devans@… Type: enhancement | Status: closed Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: fixed | Keywords: aac Port: ffmpeg | ----------------------------+---------------------- Changes (by devans@…): * status: assigned => closed * resolution: => fixed Comment: ffmpeg updated to version 2.1.4 with libfdk-aac support (+nonfree only) in r117554.[[BR]] ffmpeg-devel updated to recent git master with libfdk-aac support (+nonfree only) in r117555.[[BR]] -- Ticket URL: <https://trac.macports.org/ticket/42190#comment:14> MacPorts <http://www.macports.org/> Ports system for OS X
#42190: Can ffmpeg be built with libfdk_aac (--enable-libfdk-aac)? ----------------------------+---------------------- Reporter: clint.olsen@… | Owner: devans@… Type: enhancement | Status: closed Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: fixed | Keywords: aac Port: ffmpeg | ----------------------------+---------------------- Comment (by clint.olsen@…): I really appreciate the enhancement. I updated the port and ran ffmeg -codecs to confirm in fact that it's in there: {{{ % ffmpeg -codecs |& grep fdk configuration: --prefix=/opt/local --enable-swscale --enable-avfilter --enable-avresample --enable-libmp3lame --enable-libvorbis --enable- libopus --enable-libtheora --enable-libschroedinger --enable-libopenjpeg --enable-libmodplug --enable-libvpx --enable-libspeex --enable-libass --enable-libbluray --enable-gnutls --enable-fontconfig --enable- libfreetype --disable-indev=jack --disable-outdev=xv --mandir=/opt/local/share/man --enable-shared --enable-pthreads --cc=/usr/bin/clang --arch=x86_64 --enable-yasm --enable-gpl --enable- postproc --enable-libx264 --enable-libxvid --enable-nonfree --enable- libfdk-aac --enable-libfaac DEA.L. aac AAC (Advanced Audio Coding) (decoders: aac libfdk_aac ) (encoders: aac libfaac libfdk_aac ) }}} Thanks, -Clint -- Ticket URL: <https://trac.macports.org/ticket/42190#comment:15> MacPorts <http://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts