On Mon, 21 Nov 2011 21:25:13 +0000 Ken Moffat <[email protected]> wrote:
> Hi Andy, > > I see you're intending to update ffmpeg, and I remember that in the > past you've disagreed with the configure flags I added. You seem to > manage to keep up to date with so many projects that you probably > know a lot more about this than I do, but nevertheless I'll offer my > (edited) notes from when I upgraded to 0.8.4 - Are you not tempted to update the page yourself? I don't mind, if you want to do it, drive on. I only offered to do it 'cos the version in the book is really old and I know a lot has changed with ffmpeg since 0.6.1. I see the latest version is 0.8.6. I've found that the new API (the 0.8 releases) has broken a few things but they're mostly fixable with seds. > > 1. For uploading certain formats (.mov, .mp4) to youtube, I need to > flatten them with qt-faststart. This was why I looked at newer > versions, because this failed to build in the 0.6 versions on the > system I was using (although it did build in older systems). > > make -C tools qt-faststart > install -m 0755 tools/qt-faststart /usr/bin I think you should put that in the book :) > > 2. A version of aac is included in ffmpeg (using it needs an > override on the command line when ffmpeg is run using the aac > acodec, [ -strict experimental ] (or, maybe only for encoding) > so libfaac is not needed. When I tried to encode an .m4a with ffmpeg it sounded terrible so I always use faac to encode them. ffplay sounds great decoding an .m4a > > 3. The internal ffacdec replaced libfaad during 0.7. > > 4. --enable-version3 on top of --enable-gpl, to use gpl version 3 : > I'm not sure if this changes what is built, or only its licence. > > 5. --enable-pthreads to use threading. andy@eccles:~$ '/home/andy/save/src/ffmpeg/configure' --help | grep pthreads --disable-pthreads disable pthreads [auto] I think --enable-pthreads is the default. > > 6. --enable-libvpx adds the libvpx decoder and encoder (there are > other vp* decoders which might perhaps do this, unsure if that > applies to encoders, I gave up noting the full list of them). ffmpeg includes a libvpx decoder and the developers are quite pleased with their decoder. --enable-libvpx adds an encoder to ffmpeg, but (my attitude is) if you've installed libvpx, which includes vpxenc, why would you need to use ffmpeg to encode a vpx video? I suppose it would be used to allow ffmpeg to convert from one format to another without piping from one application to another. > 7. --enable-libvorbis adds the libvorbis encoder as well as the > native vorbis encoder, there are claims that the libvorbis encoder > is/was better (better-quality, ISTR). > > 7. --enable-libtheora adds the libtheora encoder. > > 8. --enable-libmp3lame adds the libmp3lame encoder. > > 9. --enable-libx264 adds the libx264 encoder. > > 10. --enable-libxvid adds the libxvid (xvidcore) encoder. > > 11. I'm still using --enable-rtmp, but I have doubts if it is giving > me anything extra. > > Hope this might be helpful, and not too out of date. Thanks, it's interesting to think it through. I just use ffmpeg as a dependency for other things (lots of things use it). For me, I just use it for watching or listening to things encoded by other people but I know from your emails to the lists that you use it to encode videos. I build ffmpeg in a separate object directory and configure it: --enable-shared --disable-static --enable-postproc --enable-gpl and that does everything I need. When I rip a cd I encode it to m4a with faac and mp3 with lame. I think if I update the the ffmpeg page in BLFS I will use the options that work for me but discuss the options you've outlined above in the "Command Explanations" section; so I you want all these encoder options to be the default in the book you should update the page yourself. I think you should. I think you know more about it than me. I can help fix the breakage that ffmpeg-0.8 will introduce to other things. Andy -- http://linuxfromscratch.org/mailman/listinfo/blfs-dev FAQ: http://www.linuxfromscratch.org/blfs/faq.html Unsubscribe: See the above information page
