FS#27465 - ffmpeg package should have faac support enabled

Attached to Project: Arch Linux
Opened by Paul Seropian (paranoos) - Monday, 05 December 2011, 20:48 GMT
Last edited by Ionut Biru (wonder) - Sunday, 11 December 2011, 21:42 GMT
Task Type Feature Request
Category Packages: Extra
Status Closed
Assigned To Ionut Biru (wonder)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

There may or may not be a good reason why ffmpeg is compiled without faac enabled, but I would appreciate it very much.

There is apparently an AAC encoder built in to ffmpeg, but the program exits with a warning message explaining that it is "experimental and might produce bad results", and requires an extra option to force the use of this encoder, so I think the more trusty faac would be preferred.
This task depends upon

Closed by  Ionut Biru (wonder)
Sunday, 11 December 2011, 21:42 GMT
Reason for closing:  Won't fix
Comment by Ionut Biru (wonder) - Monday, 05 December 2011, 20:57 GMT
we are not allowed to redistributed ffmpeg when is compiled against faac
Comment by Paul Seropian (paranoos) - Monday, 05 December 2011, 21:09 GMT
oh, I was not aware. sorry for taking up your time then!
Comment by Ionut Biru (wonder) - Monday, 05 December 2011, 21:12 GMT
on the other hand, can you try to rebuild ffmpeg with vo-amrwbenc and vo-aacenc support and let me know if aac works fine? I think both are in aur
Comment by Paul Seropian (paranoos) - Monday, 05 December 2011, 21:28 GMT
ok i'll try that out today
Comment by Paul Seropian (paranoos) - Monday, 05 December 2011, 23:06 GMT
I downloaded the source snapshot from ffmpeg.org since the arch server is throttled hard and there don't seem to be any mirrors of the ffmpeg sources. By the way, what's different about the archlinux.org ffmpeg sources that makes the files 10x larger than the snapshot on ffmpeg.org?

ok I just got a compiler error for ffmpeg relating to libvo-amrwbenc:

/usr/bin/ld: /usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.2/../../../../lib/libvo-amrwbenc.a(wrapper.o): relocation R_X86_64_32S against `cmnMemAlloc' can not be used when making a shared object; recompile with -fPIC
/usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.2/../../../../lib/libvo-amrwbenc.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make: *** [libavcodec/libavcodec.so.53] Error 1


doing some google research for ffmpeg faac archlinux, it seems that some devs believe the ffmpeg-native aac codec is just fine despite the warning message. it seems if you want good quality aac encoding, faac is inadequate and the freeware neroaac is recommended instead and is available in aur. we can use the official ffmpeg package as it is now to just mux in audio encoded elsewhere if we want to. might not be any point adding vo-aacenc support.
Comment by Ionut Biru (wonder) - Monday, 05 December 2011, 23:07 GMT
don't do that. use abs. you should also read the comments from vo-aacenc. you need to enable shared lib.
Comment by Paul Seropian (paranoos) - Monday, 05 December 2011, 23:12 GMT
is vo-aacenc supposed to be any good anyway? i can't find much information about it. seems like very alpha software -- ffmpeg's internal aac is probably more mature. i'm not convinced it's an avenue worth pursuing, i will try neroaac instead. thanks for your help!
Comment by DrZaius (DrZaius) - Saturday, 10 December 2011, 00:54 GMT
vo-aacenc is probably as good or slightly worse than faac. FFmpeg's native AAC encoder however is still a work-in-progress. vo-aacenc in AUR is configured for ffmpeg-git in AUR, so if you do want to try vo-aacenc with ffmpeg ABS then modify the vo-aacenc PKGBUILD by removing "--enable-shared=no", as Ionut mentioned, and adding "--enable-libvo-aacenc --enable-version3" to the FFmpeg configure (and "vo-aacenc" to depends if you want to do it right).

You could also modify the FFmpeg ABS PKGBUILD to enable libfaac by installing faac and adding "--enable-nonfree --enable-libfaac" to the FFmpeg configure (and "faac" to depends).

Perceived quality is subjective, so you should try each encoder and decide for yourself what you want to use.

Loading...