FS#15677 - [xbmc] Unable to use optical drives with libcdio 0.81

Attached to Project: Community Packages
Opened by Ralf Barth (Haggy) - Saturday, 25 July 2009, 09:03 GMT
Last edited by Dan Griffiths (Ghost1227) - Tuesday, 12 January 2010, 06:37 GMT
Task Type Bug Report
Category
Status Closed
Assigned To Sergej Pupykin (sergej)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 9
Private No

Details

Description:

Using libcdio 0.81 xbmc is unable to use any optical drives both. Internal logfile
shows the drive and disc being detected by HAL but trying to play the disc results
in a message "Please insert disc". Dowgrading to libcdio < 0.81 (tested with 0.78)
fixes the issue.

Additional info:
* libcdio 0.81 from [extra]

Steps to reproduce:
* Use xbmc from [community] or compile xbmc/xbmc-svn (AUR) against libcdio 0.81
* Insert dvd/cd and try to play it
* Result: "Please insert disc" though the disc gets detected by HAL (see ~/.xbmc/temp/xbmc.log)
* Compile xbmc against an older libcdio
* Try to play disc
* Result: Plays fine
This task depends upon

Closed by  Dan Griffiths (Ghost1227)
Tuesday, 12 January 2010, 06:37 GMT
Reason for closing:  Fixed
Additional comments about closing:  Patched with BlackEagle's patch.
Comment by Philippe Cherel (Aerandir53) - Sunday, 26 July 2009, 09:34 GMT
I have this problem. XBMC mounts DVDs as external hard drive and asks me to insert a disc when i want to play it. I made a symlink called dvd.iso pointing to /dev/sr0 to bypass the problem.
Comment by Alex Aune (aewne) - Thursday, 30 July 2009, 08:32 GMT
I can confirm this using libcdio 0.81. It's being mounted by HAL, but trying to play a disc results in the message "Please insert disc." Downgrading to 0.80 solved it for me.
Comment by Vlad George (DonVla) - Friday, 31 July 2009, 08:18 GMT
come on!
"Severity High" ???
Comment by Ralf Barth (Haggy) - Friday, 31 July 2009, 08:25 GMT
Sure - not being able to watch DVDs on a media center is worth a high in my eyes.
Comment by Alex Aune (aewne) - Friday, 31 July 2009, 09:09 GMT
I agree. Would you walk into a store and pay retail price for broken DVD player?
Comment by Sergej Pupykin (sergej) - Friday, 31 July 2009, 10:22 GMT
please do following:
- unpack working libcdio package
- modify /opt/xbmc/bin/xbmc (add LD_PRELOAD)

#!/bin/sh

python /opt/xbmc/share/xbmc/FEH.py "$@"
export SDL_AUDIODRIVER=alsa
if [ $? -ne 0 ]; then
exit
fi
/opt/xbmc/share/xbmc/xbmc.bin "$@"
while [ $? -eq 65 ]
do
LD_PRELOAD=/path/to/unpacked/libcdio.so /opt/xbmc/share/xbmc/xbmc.bin "$@"
done

if it works, I add legacy libcdio package.

but I think it would be nice if you file report to cdio or xbmc upstreams...
Comment by Ralf Barth (Haggy) - Friday, 31 July 2009, 10:56 GMT
Thanks, i already reported upstream to xbmc (actually i'm a member of Team XBMC by now). They confirmed breakage with 0.81, something in the API must have changed
Comment by ViNS (vins) - Monday, 07 September 2009, 10:01 GMT
I can confirm that downgrading to libcdio 0.80-2 and recompiling xbmc-svn solves the issue.
Comment by Patrick Stewart (patstew) - Saturday, 02 January 2010, 20:15 GMT
It still doesn't work properly with xbmc 9.11. It is fixed as of svn 26036, but there is also a patch here http://xbmc.org/trac/ticket/8026
You need to remove -I../lib from the end of line 22 to make it apply properly. I put
sed "s/ -I..\/lib//2" ${srcdir}/use_cdio_system_headers_on_non_win32.patch | patch -p1
into the PKGBUILD and it works fine.
Comment by Ralf Barth (Haggy) - Saturday, 02 January 2010, 22:20 GMT
Thanks for the update patstew. Will update xbmc-svn asap to get this fixed at least for this package.
Comment by Ulf Winkelvos (uwinkelvos) - Wednesday, 06 January 2010, 21:55 GMT
i applied the patch as patrick suggested to my xbmc-pulse package. (The PKGBUILD is based on the one sergey's) It builds fine, but i can't realy test it, as there is no optical drive in my computer.

When looking at the PKGBUILD again, i wondered why libcdio is listed as dep and optinal dep at the same time. xbmc does not compile without libcdio with the config options specified, when i remove the lib from the depends array.
Comment by Ike Devolder (BlackEagle) - Friday, 08 January 2010, 07:27 GMT
there is a fix for libcdio

check the pkgbuild in  FS#17613 
Comment by Ralf Barth (Haggy) - Friday, 08 January 2010, 08:39 GMT
Ike, how is this new patch any different from the patch introduced in xbmc svn rev 26036? I'm
talking about a clean build from svn? http://xbmc.org/trac/changeset/26036

Thanks!
Comment by Ike Devolder (BlackEagle) - Friday, 08 January 2010, 09:26 GMT
i have to say i didn't check it what's different between those;

on first sight i would say there are more changes in the patch : http://xbmc.org/trac/ticket/8026 than in http://xbmc.org/trac/changeset/26036

the build is from the source available on sourceforge http://sourceforge.net/projects/xbmc/files/
Comment by Ralf Barth (Haggy) - Friday, 08 January 2010, 09:36 GMT
Thanks. Will try tonight on my main rig (which happens to have an optical drive). If it helps i'll report upstream or at least include it in xbmc-svn.
Comment by Ike Devolder (BlackEagle) - Friday, 08 January 2010, 09:39 GMT
it would be cool if your main rig is i686 then that would also be tested

for me it works fine on a dedicated htpc

the Stable 9.11 with patch as in the pkgbuild in  FS#17613 
Comment by Ralf Barth (Haggy) - Friday, 08 January 2010, 09:45 GMT
It is... but note everything after svn rev 26036 normally shouldn't need the patch. Additionally it makes more sense to me to talk to some upstream dev to include the "better" patch if it doesn't break anything on xbmc's side. I'll report back after i get results.

Loading...