View previous topic :: View next topic |
Author |
Message |
kalle2 n00b
Joined: 18 Jan 2005 Posts: 33
|
Posted: Sat Feb 23, 2008 1:59 am Post subject: [solved] Compiling MPlayer with DVDnav |
|
|
Edit: A question about mplayer 1.0_rc2 being not able to play Sony/BMG DVDs.
I can't watch a certain DVD with my mplayer.
After looking around a bit I found the following in the Mplayer FAQ:
Quote: | Q: I can't watch any recent DVDs from Sony Pictures/BMG.
A: This is normal; you've been ripped off and sold an intentionally defective disk. The only way to play these DVDs is to circumvent the bad blocks of the disk by using DVDnav instead of mpdvdkit2. You can do so by compiling MPlayer with DVDnav support and then replacing dvd:// by dvdnav:// on the command line. DVDnav is so far mutually exclusive with mpdvdkit2, so make sure you pass --disable-mpdvdkit to the configure script. |
So I have to compile mplayer with DVDnav instead of mpdvdkit. I'd like to do, but I found no Use-Flag that enables DVDnav and disables mpdvdkit2. I looked for a matching Use-Flag in /usr/portage/profiles/use.desc, asked Google and did a forum search.
Will I have to compile mplayer myself (without emerge, with configure, make, ...) to solve the problem?
Edit: Use-Flags are not the problem.
Edit: Other DVDs play fine. The DVD in question is new.
Last edited by kalle2 on Sun Feb 24, 2008 10:22 pm; edited 2 times in total |
|
Back to top |
|
|
plastikman187 Apprentice
Joined: 15 Mar 2005 Posts: 233
|
Posted: Sat Feb 23, 2008 2:24 am Post subject: |
|
|
you could patch your ebuild for mplayer-1.0_rc2_p25993.ebuild with this patch
Code: |
--- mplayer-1.0_rc2_p25993.ebuild 2008-02-19 10:06:41.000000000 -0800
+++ mplayer-1.0_rc2_p25993.ebuild 2008-02-22 18:41:05.000000000 -0800
@@ -12,7 +12,7 @@
musepack nas nemesi unicode vorbis opengl openal oss png pnm pulseaudio
quicktime radio rar real rtc samba sdl speex srt sse sse2 ssse3 svga teletext
tga theora tivo truetype v4l v4l2 vidix win32codecs X x264 xanim xinerama
-xscreensaver xv xvid xvmc zoran"
+xscreensaver xv xvid xvmc zoran dvdnav"
VIDEO_CARDS="s3virge mga tdfx vesa"
@@ -270,8 +270,9 @@
use samba || myconf="${myconf} --disable-smb"
# DVB / Video4Linux / Radio support
- if { use dvb || use v4l || use v4l2 || use radio; }; then
+ if { use dvb || use v4l || use v4l2 || use dvdnav || use radio; }; then
use dvb || myconf="${myconf} --disable-dvb --disable-dvbhead"
+ use dvdnav || myconf="${myconf} --disable-mpdvdkit"
use v4l || myconf="${myconf} --disable-tv-v4l1"
use v4l2 || myconf="${myconf} --disable-tv-v4l2"
use teletext || myconf="${myconf} --disable-tv-teletext"
|
then just set a useflag for dvdnav
i have not tried it but it **should** work
_________________ Ubuntu -- An african word meaning 'Gentoo is too hard for me' |
|
Back to top |
|
|
cubancigar11 Guru
Joined: 10 Jan 2005 Posts: 340
|
Posted: Sat Feb 23, 2008 8:52 am Post subject: |
|
|
It is interesting: Code: | # euse -i dvdnav
global use flags (searching: dvdnav)
************************************************************
no matching entries found
local use flags (searching: dvdnav)
************************************************************
[+ C ] dvdnav (media-video/mplayer):
DVD menu navigation support (not supported) | Which means at some point of time dvdnav WAS involved. But not anymore. |
|
Back to top |
|
|
Gusar Advocate
Joined: 09 Apr 2005 Posts: 2665 Location: Slovenia
|
Posted: Sat Feb 23, 2008 10:07 am Post subject: |
|
|
mpdvdkit hasn't been a part of mplayer for a very long time now. If you want dvdnav support, you first need mplayer's fork of libdvdnav (it's in portage, but hard masked) and then you compile mplayer with --disable-dvdread-internal. |
|
Back to top |
|
|
M Guru
Joined: 12 Dec 2006 Posts: 432
|
Posted: Sat Feb 23, 2008 10:14 am Post subject: |
|
|
Yes, it was in the ebuild, now there is no use flag for dvdnav, only dvd and without it support for dvdnav is disabled. Can anyone tell me does that mean the internal libdvdnav is used or the system one, i read that mplayer support for dvdnav was buggy so they forked the dvdnav library to better suite their need. So, which is it then? |
|
Back to top |
|
|
M Guru
Joined: 12 Dec 2006 Posts: 432
|
Posted: Sat Feb 23, 2008 10:21 am Post subject: |
|
|
Aha, thx Gusar, you posted what I was interested in while I was writing post.. need time for that, english is not my native lang... Another one, does some overlay have this, I saw an mplayer ebuild in lots of them, I think... Which ebuild is recommended, I tried one of them, not sure from which overlay, but the ebuild had for example ass flag and ebuild in portage has srt... I will like to have custom ebuild but similar to portage's one... |
|
Back to top |
|
|
cubancigar11 Guru
Joined: 10 Jan 2005 Posts: 340
|
Posted: Sat Feb 23, 2008 10:23 am Post subject: |
|
|
emerge -s dvdnav shows nothing. Could you please tell me which package is related to dvdnav fork? (I would rather unmask it than not use mplayer for dvd)
Also, we should also remove dvdnav from USE flags then, since mplayer was the only package using it... |
|
Back to top |
|
|
yngwin Retired Dev
Joined: 19 Dec 2002 Posts: 4572 Location: Suzhou, China
|
Posted: Sat Feb 23, 2008 10:30 am Post subject: |
|
|
It is still unsupported, but dvdnav seems to have limited functionality in certain cases now. By unmasking libdvdnav, like this:
Code: | echo 'media-libs/libdvdnav' >> /etc/portage/package.unmask && \
echo 'media-libs/libdvdnav' >> /etc/portage/package.keywords |
you can install the latest version. When you remerge mplayer (the stable version in portage), the fact that you have libdvdnav installed will be automatically detected by the mplayer configure script. That way you will have (limited) dvdnav support in mplayer. All the useflag did and would do is to disable this automagic detection unless USE=dvdnav would be set. But because that useflag is no longer in the mplayer ebuild in portage dvdnav will not be disabled based on useflags, but it will be enabled if that library is installed.
There is also a live subversion ebuild in berkano overlay, which does have the useflag. _________________ "Those who deny freedom to others deserve it not for themselves." - Abraham Lincoln
Free Culture | Defective by Design | EFF |
|
Back to top |
|
|
cubancigar11 Guru
Joined: 10 Jan 2005 Posts: 340
|
Posted: Sat Feb 23, 2008 10:43 am Post subject: |
|
|
Ah! Thanks! I should have first looked into media-libs/libdvdnav. I was expecting some other package related to fork to be there.
As such, mplayer doesn't detect libdvdnav-0.1.10 (the old one), but it detects the new masked version. So all is good
Thanks! |
|
Back to top |
|
|
kalle2 n00b
Joined: 18 Jan 2005 Posts: 33
|
Posted: Sun Feb 24, 2008 6:13 pm Post subject: |
|
|
Thanks a lot everybody.
I did emerge the masked libdvdnav (4.1.1_p997-r1 instead of the stable 0.1.10) and re-emerged mplayer and everything works fine now:
Code: | echo 'media-libs/libdvdnav' >> /etc/portage/package.unmask
echo 'media-libs/libdvdnav' >> /etc/portage/package.keywords
emerge libdvdnav
emerge mplayer |
For me the question remains why libdvdnav (a library that enables the menu navigation in dvds if i get things right) provides support for broken DVDs. Does it also change the way the DVD-tracks are read? But whatever, it works now.
Edit: I wanted to add [solved] to the topic title but did not find the link to do so. Must it be done by a moderator? If so, can a mod do so? |
|
Back to top |
|
|
Gusar Advocate
Joined: 09 Apr 2005 Posts: 2665 Location: Slovenia
|
Posted: Sun Feb 24, 2008 7:13 pm Post subject: |
|
|
kalle2 wrote: | For me the question remains why libdvdnav (a library that enables the menu navigation in dvds if i get things right) provides support for broken DVDs. Does it also change the way the DVD-tracks are read? But whatever, it works now. | Yes, it changes the way the DVD is read. Information about which sectors are damaged is stored in the same place as menu info. Without support for menus, this information won't be read and the player won't know which sectors to skip. |
|
Back to top |
|
|
kalle2 n00b
Joined: 18 Jan 2005 Posts: 33
|
Posted: Sun Feb 24, 2008 10:18 pm Post subject: |
|
|
Ah, thanks. Now it's really completely solved
And I found out how to change the whole thread's title. (By editing the first post). |
|
Back to top |
|
|
beandog Bodhisattva
Joined: 04 May 2003 Posts: 2072 Location: /usa/utah
|
Posted: Thu Feb 28, 2008 4:22 pm Post subject: |
|
|
Gusar wrote: | mpdvdkit hasn't been a part of mplayer for a very long time now. If you want dvdnav support, you first need mplayer's fork of libdvdnav (it's in portage, but hard masked) and then you compile mplayer with --disable-dvdread-internal. |
Gusar,
Thanks for that, it finally clicked and I realized how to get it working correctly. Man, the dvd stuff can be confusing.
In short, libdvdnav provides a new version of libdvdread as well, which is why MPlayer needs to not use its own.
Anyway, if you want playback support only, use the in tree's stuff. If you want actual navigation, you'd have to hack the ebuilds. I made an overlay though where they are already fixed.
Overlay here: http://overlays.gentoo.org/dev/beandog
Details here: http://wonkabar.org/archives/405 _________________ If it ain't broke, tweak it. dvds | blurays | blog | wiki |
|
Back to top |
|
|
Gusar Advocate
Joined: 09 Apr 2005 Posts: 2665 Location: Slovenia
|
Posted: Thu Feb 28, 2008 5:11 pm Post subject: |
|
|
One additional piece of info might be interesting. Start mplayer with Code: | mplayer -mouse-movements dvdnav:// | and you can use the mouse to navigate the menus.
Also, dvdnav:// will throw you directly into the root menu. If you want to see everything (this includes the FBI warning and the "you are a thief" video all dvds seem to have nowadays), use dvdnav://-1 |
|
Back to top |
|
|
|