Hi, I'm noticing that the ffmpeg and libav condundrum is really making things impossible for me on my system. I cannot seem to to get makemkv and xine-libs (and other packages the REQUIRE ffmpeg) and handbrake, which requires libav installed -- and of course, you annot have both. This is just a request to developers to for support so that end-users can create a multi-media system that can use one or the other. I really don't care which, ffmpeg or libav, Gentoo decides to support, but the choice should be all-encompassing to avoid these types of conflicts. Perhaps you are on your way with this already, but It was suggested to me by a developer that I make a request here, so here it is :) Thanks.
For me ffmpeg works fine with all your listed programms and many, many more ... Installed on my system: [I] media-video/ffmpeg (1.2.4@06.12.2013): Complete solution to record, convert and stream audio and video. Includes libavcodec. [ebuild R ~] media-video/ffmpeg-1.2.4 USE="X aac aacplus alsa bluray bzip2 encode flite fontconfig hardcoded-tables iconv ieee1394 jpeg2k libass libcaca libv4l mmx mmxext mp3 network opus rtmp sdl truetype twolame v4l vaapi vdpau vorbis vpx x264 xvid zlib -3dnow -3dnowext (-altivec) -amr -avx -bindist -cdio (-celt) -cpudetection -debug -doc -examples -faac -fdk -frei0r -gnutls -gsm -iec61883 -jack -libsoxr -modplug (-neon) -openal -openssl -oss -pic -pulseaudio -schroedinger -speex -ssse3 -static-libs {-test} -theora -threads (-vis)" FFTOOLS="aviocat cws2fws ffescape ffeval fourcc2pixfmt graph2dot ismindex pktdumper qt-faststart trasher" 0 kB [I] virtual/ffmpeg (0.10.3@08.12.2013): Virtual package for FFmpeg implementation [I] media-libs/xine-lib (1.2.3(1)@27.10.2013): Core libraries for Xine movie player also: [I] media-video/ffmpeg (1.2.4@06.12.2013): Complete solution to record, convert and stream audio and video. Includes libavcodec. from https://bugs.gentoo.org/show_bug.cgi?id=494324
Ups Copy&Paste Error: [I] media-video/makemkv (1.8.7[1]@15.12.2013): Tool for ripping Blu-Ray, HD-DVD and DVD discs and copying content to a Matroska container from https://bugs.gentoo.org/show_bug.cgi?id=494324
I was too fast, i forgot: [I] media-video/handbrake (0.9.9@28.10.2013): Open-source, GPL-licensed, multiplatform, multithreaded video transcoder. [ebuild R ~] media-video/handbrake-0.9.9 USE="ffmpeg gtk -fdk -gstreamer" 0 kB
Usually if something appears to "force" one or the other, it's due to an unmet USE requirement, or a keyword mismatch. All of the packages you have mentioned can use ffmpeg or libav, as long as the version and USE are right. Admittedly, sometimes portage is unclear when you just need a minor USE or keyword change... and it suggests installing the alternate package, rather than fixing USE/keywords. But all of these applications DO support both.
I hear what you are saying, but here's the thing. I have removed everything from package.keywords. I have +ffmpeg in my make.conf, and -libav. I have run an emerge -uDN @world --with-bdeps=y, ran my deplcean, my revdep-rebuild etc. to make sure my system is entirely consistent -- and it is. This is what I have installed: media-video/ffmpeg-1.0.8 USE="3dnow X aac alsa amr bluray bzip2 encode hardcoded-tables mmx mp3 network oss pulseaudio sdl truetype v4l vorbis x264 xvid zlib -3dnowext -aacplus (-altivec) -avx -bindist -cdio (-celt) -cpudetection -debug -doc -examples -faac -fdk -flite -fontconfig -frei0r -gnutls -gsm -iec61883 -ieee1394 -jack -jpeg2k -libass -libcaca -libv4l -mmxext -modplug (-neon) -openal -openssl -opus -pic -rtmp -schroedinger -speex -ssse3 -static-libs {-test} -theora -threads -twolame -vaapi -vdpau (-vis) -vpx" FFTOOLS="aviocat cws2fws ffeval fourcc2pixfmt graph2dot ismindex pktdumper qt-faststart trasher" 0 kB virtual/ffmpeg-0.10.3 USE="X encode mp3 sdl truetype x264 -gsm -jpeg2k -speex -theora -threads -vaapi -vdpau" And when I go to install handbrake, I get this: emerge handbrake Calculating dependencies... done! [ebuild N ] media-libs/libmkv-0.6.5.1 [ebuild N ~] media-video/libav-9.10 USE="3dnow X aac alsa amr bzip2 encode gpl hardcoded-tables mmx mp3 oss pulseaudio sdl ssl truetype v4l vorbis x264 xvid zlib -3dnowext (-altivec) -avx -bindist -cdio -cpudetection -custom-cflags -debug -doc -faac -fdk -frei0r -gsm -ieee1394 -jack -jpeg2k -mmxext (-neon) -network -openssl -opus -pic -rtmp -schroedinger -speex -ssse3 -static-libs {-test} -theora -threads -tools -vaapi -vdpau (-vis) -vpx" [ebuild N ~] media-video/handbrake-0.9.9 USE="ffmpeg gtk -fdk -gstreamer" [blocks B ] media-video/ffmpeg:0 ("media-video/ffmpeg:0" is blocking media-video/libav-9.10) * Error: The above package list contains packages which cannot be * installed at the same time on the same system. (media-video/ffmpeg-1.0.8::gentoo, installed) pulled in by media-video/ffmpeg:0 required by (media-libs/xine-lib-1.2.3::gentoo, installed) media-video/ffmpeg:0 required by (media-video/vlc-2.0.7::gentoo, installed) media-video/ffmpeg:0 required by (media-plugins/gst-plugins-ffmpeg-0.10.13_p201211-r1::gentoo, installed) >=media-video/ffmpeg-0.10.3:0[X?,encode?,gsm?,jpeg2k?,mp3?,sdl?,speex?,theora?,threads?,truetype?,vaapi?,vdpau?,x264?] (>=media-video/ffmpeg-0.10.3:0[X,encode,mp3,sdl,truetype,x264]) required by (virtual/ffmpeg-0.10.3::gentoo, installed) (media-video/libav-9.10::gentoo, ebuild scheduled for merge) pulled in by >=media-video/libav-0.8.4[X?,encode?,gsm?,jpeg2k?,mp3?,sdl?,speex?,theora?,threads?,truetype?,vaapi?,vdpau?,x264?] (>=media-video/libav-0.8.4[X,encode,mp3,sdl,truetype,x264]) required by (virtual/ffmpeg-0.10.3::gentoo, installed) >=media-video/libav-0.8.9 required by (media-video/makemkv-1.8.6-r1::gentoo, installed) >=media-video/libav-9:= required by (media-video/handbrake-0.9.9::gentoo, ebuild scheduled for merge) I do not see any option to compile handbrake with ffmpeg support instead of libav, therefore, I do not see any use flags I can maniuplate to make handbrake happy. It always wants to pull in libav. So, I reverse my use flags, and tried to force my system to use libav instead of ffmpeg, which makes handbrake happy, butmakemkv tells me that it MUST have ffmpeg, and does not work with libav. I don't see how this can be done. What am I missing here? Thanks.
Handbrake's dep says: ffmpeg? ( || ( >=media-video/libav-9:= >=media-video/ffmpeg-1.2.1:0= ) ) You aren't allowing a new enough version on media-video/ffmpeg yet.
Analysis by Ben Kohler is correct, you need a newer ffmpeg version installed. As you can see under Comment 1, ffmpeg-1.2.4 runs fine here. It is possible that you have to add more of your installed programms to your package.accept_keywords file to get out of the "dependency hell" ;-)