DVD player not working

  Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
richardambridge Offline
Junior Member
Posts: 26
Joined: Nov 2011
Reputation: 0
Post: #1
Using GIT source:

When i try to play a dvd I get the following in log file:

14:31:30 T:140690147665824 DEBUG: ExecuteXBMCAction : Translating XBMC.PlayDVD()
14:31:30 T:140690147665824 DEBUG: ExecuteXBMCAction : To XBMC.PlayDVD()
14:31:30 T:140690147665824 DEBUG: Connecting to sqlite:/home/xbmc/.xbmc/userdata/Database/:MyVideos57.db
14:31:30 T:140690147665824 DEBUG: CPlayerCoreFactory::GetPlayers(/initrd.img)
14:31:30 T:140690147665824 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: system rules
14:31:30 T:140690147665824 DEBUG: CPlayerSelectionRule::GetPlayers: matches rule: system rules
14:31:30 T:140690147665824 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: rtv
14:31:30 T:140690147665824 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: hdhomerun/myth/rtmp/mms/udp
14:31:30 T:140690147665824 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: lastfm/shout
14:31:30 T:140690147665824 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: rtsp
14:31:30 T:140690147665824 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: streams
14:31:30 T:140690147665824 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: dvd
14:31:30 T:140690147665824 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: dvdfile
14:31:30 T:140690147665824 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: dvdimage
14:31:30 T:140690147665824 DEBUG: CPlayerSelectionRule::GetPlayers: matches rule: dvdimage
14:31:30 T:140690147665824 DEBUG: CPlayerSelectionRule::GetPlayers: adding player: videodefaultdvdplayer (1) for rule: dvdimage
14:31:30 T:140690147665824 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: sdp/asf
14:31:30 T:140690147665824 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: nsv
14:31:30 T:140690147665824 DEBUG: CPlayerCoreFactory::GetPlayers: matched 1 rules with players
14:31:30 T:140690147665824 DEBUG: CPlayerCoreFactory::GetPlayers: adding videodefaultplayer (1)
14:31:30 T:140690147665824 DEBUG: CPlayerCoreFactory::GetPlayers: for video=1, audio=0
14:31:30 T:140690147665824 DEBUG: CPlayerCoreFactory::GetPlayers: for video=1, audio=1
14:31:30 T:140690147665824 DEBUG: CPlayerCoreFactory::GetPlayers: adding player: DVDPlayer (1)
14:31:30 T:140690147665824 DEBUG: CPlayerCoreFactory::GetPlayers: added 1 players
14:31:30 T:140690147665824 NOTICE: DVDPlayer: Opening: /initrd.img
14:31:30 T:140690147665824 WARNING: CDVDMessageQueue(player)::Put MSGQ_NOT_INITIALIZED
14:31:30 T:140690147665824 DEBUG: LinuxRendererGL: Cleaning up GL resources
14:31:30 T:140689589339904 DEBUG: Thread CDVDPlayer start, auto delete: 0
14:31:30 T:140689589339904 NOTICE: Creating InputStream
14:31:30 T:140689589339904 DEBUG: SECTION:LoadDLL(special://xbmcbin/system/players/dvdplayer/libdvdnav-x86_64-linux.so)
14:31:30 T:140689589339904 DEBUG: Loading: /usr/lib/xbmc/system/players/dvdplayer/libdvdnav-x86_64-linux.so
14:31:30 T:140689589339904 INFO: msg: libdvdnav: Using dvdnav version 4.1.3
14:31:30 T:140689589339904 INFO: msg: libdvdread: Using libdvdcss version 1.2.10 for DVD access
14:31:30 T:140689589339904 INFO: msg: libdvdnav: vm: DVD Title: Confused??> 0?*??z?*???LN<ڽ6'?lt
14:31:30 T:140689589339904 INFO: msg: libdvdnav: Unable to find map file '/home/xbmc/.dvdnav/Confused??> 0?*??z?*???LN<ڽ6'?lt.map'
14:31:30 T:140689589339904 INFO: msg: libdvdnav:DVDOpenFileUDF:UDFFindFile /VIDEO_TS/VIDEO_TS.IFO failed
14:31:30 T:140689589339904 INFO: msg: libdvdnav:DVDOpenFileUDF:UDFFindFile /VIDEO_TS/VIDEO_TS.BUP failed
14:31:30 T:140689589339904 INFO: msg: libdvdread: Can't open file VIDEO_TS.IFO.
14:31:30 T:140689589339904 INFO: msg: libdvdnav: vm: failed to read VIDEO_TS.IFO
14:31:30 T:140689589339904 ERROR: Error on dvdnav_open
14:31:30 T:140689589339904 ERROR: CDVDPlayer::OpenInputStream - failed to open [/initrd.img] as DVD ISO, trying Bluray
14:31:30 T:140689589339904 DEBUG: SECTION:LoadDLL(libbluray.so.0)
14:31:30 T:140689589339904 DEBUG: Loading: libbluray.so.0
14:31:30 T:140689589339904 DEBUG: CDVDInputStreamBluray::Open - opening /initrd.img
14:31:30 T:140689589339904 DEBUG: CDVDInputStreamBluray - Opening file /initrd.img/AACS/Unit_Key_RO.inf... (0x3195300)
14:31:30 T:140689589339904 WARNING: CreateFile, error 20 opening file </initrd.img/AACS/Unit_Key_RO.inf>, flags:800, mode:124.
14:31:30 T:140689589339904 DEBUG: CDVDInputStreamBluray - Error opening file! (0x3195300)




If i try mplayer dvd:// it works fine.


Full log file:
http://pastebin.com/HM60ceDD
find quote
tusko Offline
Junior Member
Posts: 5
Joined: Jun 2010
Reputation: 0
Post: #2
Bump. I have the same problem (the weird issue about opening /initrd.img as the DVD...). Did you manage to solve it?
find quote
richardambridge Offline
Junior Member
Posts: 26
Joined: Nov 2011
Reputation: 0
Post: #3
I still get it today.. Unable to play any DVDs..

mplayer dvd:// works fine.. but CEC control of it doesn't work.
I've even tried a reinstall, still there.

I wonder if it is something to do with external USB dvd drive support.
find quote
tusko Offline
Junior Member
Posts: 5
Joined: Jun 2010
Reputation: 0
Post: #4
I found that g_mediaManager.GetDiscPath() in xbmc/interfaces/Builtins.cpp fails to give a correct "disc path". The following CLog call only prints "DISCPATH:" (that is, argument is void).

Code:
else if (execute.Equals("playdvd"))
  {
#ifdef HAS_DVD_DRIVE
    bool restart = false;
    if (params.size() > 0 && params[0].CompareNoCase("restart") == 0)
      restart = true;
    CLog::Log(LOGDEBUG, "DISCPATH: %s", g_mediaManager.GetDiscPath().c_str());
    CAutorun::PlayDisc(g_mediaManager.GetDiscPath(), restart);

When this happens, then it tries to open /initrd instead of a correct media path. Also, I'm booting XBMC from USB (XBMC Live) and I found that it lists the USB root partition contents as a video source. Weird. Seems the two issues are related.

I recreated something usable using the remote buttons and sources. "PlayMedia(cdda://local/01.cdda)" works for playing Audio-CDs and adding a video source "iso9660://VIDEO_TS/" opens my DVD contents.
find quote
joniw Offline
Junior Member
Posts: 10
Joined: Feb 2011
Reputation: 0
Post: #5
I also have this problem. But when i shutdown XBMC and insert a DVD and start up again the DVD is played without problems.

I enabled the debugging and got the following output on start:

With DVD inserted:

DEBUG: UDisks: DeviceAdded - DeviceUDI /org/freedesktop/UDisks/devices/sr0: IsFileSystem true HasFileSystem udf IsSystemInternal false IsMounted true IsRemovable true IsPartition false IsOptical true

Without DVD:

DeviceAdded - DeviceUDI /org/freedesktop/UDisks/devices/sr0: IsFileSystem false HasFileSystem IsSystemInternal false IsMounted false IsRemovable true IsPartition false IsOptical false

So it seems to me that XBMC does not recognize that the DVD-Drive is optical and does not use it to play DVD.
find quote
hannemann Offline
Junior Member
Posts: 11
Joined: May 2010
Reputation: 0
Post: #6
As an very ugly Workaround I modified xbmc/storage/MediaManager.cpp CMediaManager::getDiscPath to return 'iso9660://' constantly if driveType equals DVD and now it works.
Code:
CStdString CMediaManager::GetDiscPath()
{
#ifdef _WIN32
  return g_mediaManager.TranslateDevicePath("");
#else

  CSingleLock lock(m_CritSecStorageProvider);
  VECSOURCES drives;
  m_platformStorage->GetRemovableDrives(drives);
[color=red]char* dvdpath = "iso9660://";[/color]
  for(unsigned i = 0; i < drives.size(); ++i)
  {
    if(drives[i].m_iDriveType == CMediaSource::SOURCE_TYPE_DVD)
[color=red]return dvdpath;[/color]
[color=red]//[/color]      return drives[i].strPath;
  }

  // iso9660://, cdda://local/ or D:\ depending on disc type
  return MEDIA_DETECT::CDetectDVDMedia::GetDVDPath();
#endif
}
#endif
This works for me until the bug is fixed. If anyone knows which side-effects this workaround could have please report.

[edit]Please keep in mind that the code should only work for the first optical drive found[/edit]
(This post was last modified: 2011-12-29 16:23 by hannemann.)
find quote
richardambridge Offline
Junior Member
Posts: 26
Joined: Nov 2011
Reputation: 0
Post: #7
I've just upgraded to the latest git version, and now it is all working for me Smile
find quote
hannemann Offline
Junior Member
Posts: 11
Joined: May 2010
Reputation: 0
Post: #8
I wonder which commit did the trick... Did you compile github -> xbmc -> xbmc -> master?
find quote
richardambridge Offline
Junior Member
Posts: 26
Joined: Nov 2011
Reputation: 0
Post: #9
Yes, githut/xbmc/xbmc
find quote
_philipp_ Offline
Junior Member
Posts: 4
Joined: Dec 2011
Reputation: 0
Post: #10
Hi,

same problem here. Updating sources using "git pull" and recompiling didn't do the trick.

Anyway i have to say that this problem is not only connected to the software but to the system configuration as well. On my computer it did work until I did the following (in order to disable kde and boot xbmc directly)

  1. created a new user xbmc
  2. added user xbmc to all the groups olduser is in
  3. moved /home/olduser/.xbmc to /home/xbmc/.xbmc
  4. chowned all files in .xbmc to user xbmc
  5. removed /home/olduser/.kde/Autostart/xbmc.sh so that kde doesn't start xbmc after startup
  6. disabled kde by renaming /etc/init/kde.conf to /etc/init/kde.conf.disabled
  7. installed rungetty by "apt-get install rungetty"
  8. modified /etc/init/tty1.conf by changing "exec /sbin/getty -8 38400 tty1" to "exec /sbin/rungetty --autologin xbmc tty1" so that xbmc gets logged in automtically
  9. created /home/xbmc/.bash_profile and included
    Code:
    if [ -z "$DISPLAY" ] && [ $(tty) == /dev/tty1 ]; then
    startx
    fi
  10. so that X is started by user xbmc
  11. created .xinintrc and included exec ./xbmc.sh so that the file just reads
    "exec ./xbmc.sh"
  12. included
    Code:
    #!/bin/bash

    # Start xbmc and restart if crashed
    until xbmc; do
        echo "Server 'myserver' crashed with exit code $?.  Restarting.." >&2
        sleep 1
    done

    exit 0
    so that xbmc gets started automatically
  13. in order to do some debugging: deactivated splash screen by modifying /etc/default/grub chaning GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" to GRUB_CMDLINE_LINUX_DEFAULT=""
  14. issued "sudo update-grub" to make changes in /etc/default/grub work
  15. made all the above steps work (gave xbmc.sh a chmod +x)
  16. changed back GRUB_CMDLINE_LINUX_DEFAULT to "quiet splash" with a "sudo update-grub" to get a splash screen again.


After that playing CD/DVD didn't work anymore.

Not sure was update-grub exactely does, but maybe stomach tells me that it is the most suspicious of all these changes....

Cheers, Phil
find quote
_philipp_ Offline
Junior Member
Posts: 4
Joined: Dec 2011
Reputation: 0
Post: #11
HI, can anyone get me any further advice on this?

I just got an up to date git source, but the problem is still there.
I've also tried to apply the patch described by hannemann, but it doesn't work the excpected way. With the patch the CD / DVD menu-item is there. When i insert a dvd i can push the "play"-button in order to watch the DVD, but instead of opening the DVD as a film, just the audio track is played in the audio player.

Any suggestions?

Phil
find quote
jiquera Offline
Junior Member
Posts: 27
Joined: Oct 2011
Reputation: 0
Post: #12
I got similar problems weeks ago... I've been trying new builds ever since but none of them is working (including beta1). So I keep running an old nightly.

I uploaded debug logs:
Beta1 (no dvd): http://pastebin.com/ZykpZLnU
Nighlty 20111103 (with dvd): http://pastebin.com/ZhEpyEm6

The differences I found are (beta1):
16:02:39 T:3868 DEBUG: CPlayerCoreFactory::GetPlayers(E:\VIDEO_TS\VIDEO_TS.IFO)
16:02:39 T:3868 NOTICE: DVDPlayer: Opening: E:\VIDEO_TS\VIDEO_TS.IFO
16:02:39 T:3440 INFO: msg: opening target `E:\VIDEO_TS'
16:02:39 T:3440 INFO: msg: cannot open E:\VIDEO_TS (No error)

And for the nightly I get the following lines:
16:27:07 T:3096 DEBUG: CPlayerCoreFactory::GetPlayers(dvd://1)
16:27:07 T:3096 NOTICE: DVDPlayer: Opening: dvd://1
16:27:07 T:912 INFO: msg: opening target `E:'
... no errors

It looks like its selecting the wrong path to open? Is this the same issue?
find quote