Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[bug] [resolved][Can't install mpv (libav vs. FFmpeg)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Multimedia
View previous topic :: View next topic  
Author Message
biergaizi
n00b
n00b


Joined: 18 Dec 2011
Posts: 45
Location: Beijing, China

PostPosted: Wed Jul 17, 2013 1:45 pm    Post subject: [bug] [resolved][Can't install mpv (libav vs. FFmpeg) Reply with quote

Code:

These are the packages that would be merged, in order:

Calculating dependencies         ... done!                           
[ebuild  N     ] media-video/libav-9.7:0/9  USE="X aac alsa bzip2 encode gpl hardcoded-tables mmx mp3 pulseaudio ssl ssse3 theoraeads vaapi vdpau vorbis zlib -3dnow -3dnowext (-altivec) -amr -avx -bindist -cdio -cpudetection -custom-cflags -debug -doc -faac  -frei0r -gsm -ieee1394 -jack -jpeg2k -mmxext (-neon) -network -openssl -opus -oss -pic -rtmp -schroedinger -sdl -speex -static-l{-test} -tools -truetype -v4l (-vis) -vpx -x264 -xvid" 3,974 kB
[ebuild  N     ] media-video/mpv-0_p20130715  USE="X alsa cdio dvd enca iconv jpeg libass mng mp3 opengl postproc pulseaudio quviba shm threads vdpau xinerama xscreensaver xv (-aqua) -bluray -bs2b -dvb -encode -jack -joystick -ladspa -lcms -libcaca -libguessrc -openal -oss -portaudio -pvr -radio -v4l -vcd -vf-dlopen -wayland" 1,193 kB
[blocks B      ] media-video/ffmpeg ("media-video/ffmpeg" is blocking media-video/libav-9.7)

Total: 2 packages (2 new), Size of downloads: 5,167 kB
Conflict: 1 block (1 unsatisfied)

 * Error: The above package list contains packages which cannot be
 * installed at the same time on the same system.

  (media-video/ffmpeg-1.0.7::gentoo, installed) pulled in by
    media-video/ffmpeg required by (media-video/mpv-0_p20130715::gentoo, ebuild scheduled for merge)

  (media-video/libav-9.7::gentoo, ebuild scheduled for merge) pulled in by
    >=media-video/libav-9:=[encode?,threads?,vdpau?] (>=media-video/libav-9:=[threads,vdpau]) required by (media-video/mpv-0_p2015::gentoo, ebuild scheduled for merge)


For more information about Blocked Packages, please refer to the following
section of the Gentoo Linux x86 Handbook (architecture is irrelevant):

_________________
Keep It Simple, stupid.


Last edited by biergaizi on Sat Jul 20, 2013 8:51 am; edited 1 time in total
Back to top
View user's profile Send private message
ppurka
Advocate
Advocate


Joined: 26 Dec 2004
Posts: 3256

PostPosted: Wed Jul 17, 2013 1:53 pm    Post subject: Reply with quote

Sounds like a bug. The ebuild should depend on virtual/ffmpeg instead of depending on one of libav and ffpmeg directly. I think you should file a bug report in bugs.gentoo.org.
_________________
emerge --quiet redefined | E17 vids: I, II | Now using kde5 | e is unstable :-/
Back to top
View user's profile Send private message
franzf
Advocate
Advocate


Joined: 29 Mar 2005
Posts: 4565

PostPosted: Wed Jul 17, 2013 3:05 pm    Post subject: Reply with quote

No, a bugreport is not required. Just have a look at the ChangeLog of mpv:
Quote:

08 Jul 2013; Tom Wijsman <TomWij@gentoo.org> mpv-9999.ebuild:
Proxy commit by Nikoli: Explicitly depend on libav-9 and ffmpeg-1.2 instead of
virtual/ffmpeg-9, fixes bug #476222. Remove warning about CFLAGS and LDFLAGS,
we now append our flags instead of replacing upstream's flags. Removed some
configure options which upstream no longer provides, some USE flag behavior
was changed as a result. USE flag radio now has correct dependencies, it no
longer depends on oss; added threads USE flag.

IMHO the tree should be cleaned regarding deps on [virtual,media-video]/ffmpeg. If packages don't pull in the virtual you can be sure it is by intention.
Back to top
View user's profile Send private message
ppurka
Advocate
Advocate


Joined: 26 Dec 2004
Posts: 3256

PostPosted: Wed Jul 17, 2013 4:13 pm    Post subject: Reply with quote

franzf wrote:
No, a bugreport is not required. Just have a look at the ChangeLog of mpv:
Quote:

08 Jul 2013; Tom Wijsman <TomWij@gentoo.org> mpv-9999.ebuild:
Proxy commit by Nikoli: Explicitly depend on libav-9 and ffmpeg-1.2 instead of
virtual/ffmpeg-9, fixes bug #476222. Remove warning about CFLAGS and LDFLAGS,
we now append our flags instead of replacing upstream's flags. Removed some
configure options which upstream no longer provides, some USE flag behavior
was changed as a result. USE flag radio now has correct dependencies, it no
longer depends on oss; added threads USE flag.

IMHO the tree should be cleaned regarding deps on [virtual,media-video]/ffmpeg. If packages don't pull in the virtual you can be sure it is by intention.
I would consider it a bug, irrespective of what the Changelog says. When one runs "emerge mpv", this kind of blockers shouldn't crop up. It may not be a bug in mpv but a bug in portage.

Edit: Ok. I see where the blocker is coming from. It depends on >=ffmpeg-1.2 which is hard masked.
_________________
emerge --quiet redefined | E17 vids: I, II | Now using kde5 | e is unstable :-/
Back to top
View user's profile Send private message
TomWij
Retired Dev
Retired Dev


Joined: 04 Jul 2012
Posts: 1553

PostPosted: Wed Jul 17, 2013 6:17 pm    Post subject: Reply with quote

Quote:
Index: mpv-0_p20130715.ebuild
===================================================================
RCS file: /var/cvsroot/gentoo-x86/media-video/mpv/mpv-0_p20130715.ebuild,v
retrieving revision 1.1
diff -u -B -r1.1 mpv-0_p20130715.ebuild
--- mpv-0_p20130715.ebuild 15 Jul 2013 08:38:08 -0000 1.1
+++ mpv-0_p20130715.ebuild 17 Jul 2013 18:13:25 -0000
@@ -86,7 +86,7 @@
postproc? (
|| (
media-libs/libpostproc
- media-video/ffmpeg
+ >=media-video/ffmpeg-1.2[encode?,threads?,vdpau?]
)
)
pulseaudio? ( media-sound/pulseaudio )
Index: mpv-9999.ebuild
===================================================================
RCS file: /var/cvsroot/gentoo-x86/media-video/mpv/mpv-9999.ebuild,v
retrieving revision 1.13
diff -u -B -r1.13 mpv-9999.ebuild
--- mpv-9999.ebuild 15 Jul 2013 08:38:08 -0000 1.13
+++ mpv-9999.ebuild 17 Jul 2013 18:13:25 -0000
@@ -86,7 +86,7 @@
postproc? (
|| (
media-libs/libpostproc
- media-video/ffmpeg
+ >=media-video/ffmpeg-1.2[encode?,threads?,vdpau?]
)
)
pulseaudio? ( media-sound/pulseaudio )


Save yourself the trouble, that ebuild change appeared to be problematic.

+ 17 Jul 2013; Tom Wijsman <TomWij@g.o> mpv-0_p20130715.ebuild,
+ mpv-9999.ebuild:
+ Made ffmpeg dependency consistent; that way, it doesn't satisfy and block
+ itself at the same time if the user has a lower version installed. Discovered
+ in topic #964594 on the Gentoo Forums.

Please wait around an hour before syncing from the mirrors...

Thank you very much for reporting this on the forums!
Back to top
View user's profile Send private message
TomWij
Retired Dev
Retired Dev


Joined: 04 Jul 2012
Posts: 1553

PostPosted: Wed Jul 17, 2013 6:33 pm    Post subject: Reply with quote

ppurka wrote:
Edit: Ok. I see where the blocker is coming from.


No, in reality there should be no blocker for this scenario; therefore I changed the ffmpeg dependencies to match when USE has +postproc such that it will show that it really needs the >=media-video/ffmpeg-1.2 and can't satisfy that as it is masked. It would then output the typical message indicating that no satisfied dependencies would be find, alongside the mask message. But what we have seen, is that it satisfied both due to a lack of backtracking as it blocks media-video/ffmpeg (as it is installed; so, it satisfies it while it shouldn't because there is another more strict dep) against >=media-video/libav-9:=[encode?,threads?,vdpau?]. Instead of that, it is now made to do a hard dependency on >=media-video/ffmpeg-1.2[encode?,threads?,vdpau?] when USE has +postproc as it was supposed to do; but due to dependency graph resolution limitations, it did never come to that condition. It's sad but true; some blockers aren't really blockers, they are rather the consequence of the complexity and limitations involved...

ppurka wrote:
It depends on >=ffmpeg-1.2 which is hard masked.


Yes, in this scenario with +postproc in USE the only way to satisfy the dependencies is by unmasking >=media-video/ffmpeg-1.2 and giving it the same encore, threads and vdpau USE flags.
Back to top
View user's profile Send private message
ppurka
Advocate
Advocate


Joined: 26 Dec 2004
Posts: 3256

PostPosted: Thu Jul 18, 2013 12:34 am    Post subject: Reply with quote

Thanks for the fix :D
_________________
emerge --quiet redefined | E17 vids: I, II | Now using kde5 | e is unstable :-/
Back to top
View user's profile Send private message
biergaizi
n00b
n00b


Joined: 18 Dec 2011
Posts: 45
Location: Beijing, China

PostPosted: Fri Jul 19, 2013 5:44 am    Post subject: Reply with quote

Still unable to install...

Code:

These are the packages that would be merged, in order:

Calculating dependencies                       ... done!
[ebuild  N     ] media-libs/libpostproc-0.8.0.20121125  USE="mmx -3dnow (-altivec) -mmxext -pic -static-libs" 64 kB
[ebuild  N     ] media-video/libav-9.7:0/9  USE="X aac alsa bzip2 encode gpl hardcoded-tables mmx mp3 pulseaudio ssl ssse3 theora threads vaapi vdpau vorbis zlib -3dnow -3dnowext (-altivec) -amr -avx -bindist -cdio -cpudetection -custom-cflags -debug -doc -faac -fdk -frei0r -gsm -ieee1394 -jack -jpeg2k -mmxext (-neon) -network -openssl -opus -oss -pic -rtmp -schroedinger -sdl -speex -static-libs {-test} -tools -truetype -v4l (-vis) -vpx -x264 -xvid" 3,974 kB
[ebuild  N     ] media-video/mpv-0_p20130715  USE="X alsa cdio dvd enca iconv jpeg libass mng mp3 opengl postproc pulseaudio quvi samba shm threads vdpau xinerama xscreensaver xv (-aqua) -bluray -bs2b -dvb -encode -jack -joystick -ladspa -lcms -libcaca -libguess -lirc -openal -oss -portaudio -pvr -radio -v4l -vcd -vf-dlopen -wayland" 1,193 kB
[blocks B      ] media-libs/libpostproc ("media-libs/libpostproc" is blocking media-video/ffmpeg-1.0.7)
[blocks B      ] media-video/ffmpeg ("media-video/ffmpeg" is blocking media-libs/libpostproc-0.8.0.20121125)
[blocks B      ] media-video/ffmpeg ("media-video/ffmpeg" is blocking media-video/libav-9.7)

Total: 3 packages (3 new), Size of downloads: 5,230 kB
Conflict: 3 blocks (3 unsatisfied)

 * Error: The above package list contains packages which cannot be
 * installed at the same time on the same system.

  (media-video/libav-9.7::gentoo, ebuild scheduled for merge) pulled in by
    >=media-video/libav-9:=[encode?,threads?,vdpau?] (>=media-video/libav-9:=[threads,vdpau]) required by (media-video/mpv-0_p20130715::gentoo, ebuild scheduled for merge)

  (media-video/ffmpeg-1.0.7::gentoo, installed) pulled in by
    >=media-video/ffmpeg-1.0[X?,encode?,gsm?,jpeg2k?,mp3?,opus?,sdl?,speex?,theora?,threads?,truetype?,vaapi?,vdpau?,x264?] (>=media-video/ffmpeg-1.0[X,encode,mp3,sdl,theora,threads,vaapi,vdpau,x264]) required by (virtual/ffmpeg-9::gentoo, installed)

  (media-libs/libpostproc-0.8.0.20121125::gentoo, ebuild scheduled for merge) pulled in by
    media-libs/libpostproc required by (media-video/mpv-0_p20130715::gentoo, ebuild scheduled for merge)


For more information about Blocked Packages, please refer to the following
section of the Gentoo Linux x86 Handbook (architecture is irrelevant):

http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?full=1#blocked

_________________
Keep It Simple, stupid.
Back to top
View user's profile Send private message
TomWij
Retired Dev
Retired Dev


Joined: 04 Jul 2012
Posts: 1553

PostPosted: Fri Jul 19, 2013 8:51 am    Post subject: Reply with quote

Have you unmasked >=media-video/ffmpeg-1.2 already? Perhaps you can mask the whole media-video/libav so it will no longer consider that.

If unmasking and masking that doesn't help, could you obtain that output again but this time add --tree --unordered-display at the end?
Back to top
View user's profile Send private message
biergaizi
n00b
n00b


Joined: 18 Dec 2011
Posts: 45
Location: Beijing, China

PostPosted: Sat Jul 20, 2013 8:30 am    Post subject: Reply with quote

Oops.
Code:

!!! Multiple package instances within a single package slot have been pulled
!!! into the dependency graph, resulting in a slot conflict:

media-video/ffmpeg:0

  (media-video/ffmpeg-1.0.7::gentoo, installed) pulled in by
    >=media-video/ffmpeg-1.0:=[opus] required by (www-client/chromium-29.0.1547.22::gentoo, installed)
    >=media-video/ffmpeg-1.0:0/0=[opus] required by (www-client/chromium-29.0.1547.22::gentoo, installed)

  (media-video/ffmpeg-2.0::gentoo, ebuild scheduled for merge) pulled in by
    >=media-video/ffmpeg-1.2[encode?,threads?,vdpau?] required by (media-video/mpv-0_p20130715::gentoo, ebuild scheduled for merge)


I have to rebuild chromium to let it use bundled ffmpeg...
_________________
Keep It Simple, stupid.
Back to top
View user's profile Send private message
biergaizi
n00b
n00b


Joined: 18 Dec 2011
Posts: 45
Location: Beijing, China

PostPosted: Sat Jul 20, 2013 8:50 am    Post subject: Reply with quote

Thanks a lot.
Finally, I use bundled ffmpeg for Chromium and install mpv successfully.
_________________
Keep It Simple, stupid.
Back to top
View user's profile Send private message
acidrums4
Tux's lil' helper
Tux's lil' helper


Joined: 05 Feb 2009
Posts: 147
Location: Al otro lado del monitor

PostPosted: Sat Mar 08, 2014 10:34 pm    Post subject: Reply with quote

Sorry for the necrobumping, but is this fixed already? I can't install mpv without getting any blocks. Furthermore, don't know if it's safe to unblock ffmpeg>=1.2 just for install it...
Back to top
View user's profile Send private message
TomWij
Retired Dev
Retired Dev


Joined: 04 Jul 2012
Posts: 1553

PostPosted: Sat Mar 08, 2014 10:36 pm    Post subject: Reply with quote

@acidrums4: Can you show us the complete emerge output?
Back to top
View user's profile Send private message
acidrums4
Tux's lil' helper
Tux's lil' helper


Joined: 05 Feb 2009
Posts: 147
Location: Al otro lado del monitor

PostPosted: Sat Mar 08, 2014 10:48 pm    Post subject: Reply with quote

Oops... Sorry, I just figured out without unblocking >=ffmpeg.1.2 (well, actually I didn't. I just rebooted the machine and it worked, no idea why). Thanks (:

However, couldn't install mpv successfully:

Code:

Checking for libav/ffmpeg : no
Unable to find development files for some of the required Libav libraries (libavutil >= 52.3.0 libavcodec > 54.34.0 libavformat > 54.19.0 libswscale >= 2.0.0). Aborting.


The complete output is at http://pastebin.ca/2653017

I blocked libav as suggested, do I need a special change on my USE settings or something? Thanks!
Back to top
View user's profile Send private message
TomWij
Retired Dev
Retired Dev


Joined: 04 Jul 2012
Posts: 1553

PostPosted: Sat Mar 08, 2014 11:29 pm    Post subject: Reply with quote

Run `pkg-config --modversion libavutil,libavcodec,libavformat,libswscale` to see which versions you have; as you can guess, you'll need a newer ffmpeg to make sure the versions are high enough for that line you quoted to be satisfied. I think you will need >=ffmpeg-1.2...
Back to top
View user's profile Send private message
acidrums4
Tux's lil' helper
Tux's lil' helper


Joined: 05 Feb 2009
Posts: 147
Location: Al otro lado del monitor

PostPosted: Sun Mar 09, 2014 11:50 am    Post subject: Reply with quote

TomWij wrote:
I think you will need >=ffmpeg-1.2...


You were right. Thanks! Being aware with the usual command routine if anything breaks or something.

And for the record (I mean, if anyone finds this thread, has lua disabled and can't figure why the OSC feature doesn't work) it needs Lua, so enable +lua USE).

Thanks again!
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Multimedia All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum