turingmachine / omxplayer-sync

OMXPlayer-Sync facilitates synchronization of multiple OMXPlayer instances over the network in a master/slave fashion.
194 stars 70 forks source link

omxplayer-sync not running with latest raspbian version (DBus.Error.NoReply) #11

Closed YohannLYD closed 10 years ago

YohannLYD commented 10 years ago

Hi there,

Here is my issue (and I am pretty sure others are experiencing it).

I am running the latest version of raspbian and followed the instructions to install omxplayer-sync by removing the default installed version of omxplayer and copying the one provided on yokto.net (omxplayer-3176db4).

First problem, the 3176db4 version of omxplayer is not running on a standalone way. I always get this error message whether I run it as root or non-root user:

pi@raspberrypi: ~ $ omxplayer -s synctest.mp4
error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory

With the version provided by raspbian (39e6342), omxplayer runs without any problem.

Main problem: when I try to run omxplayer-sync on the master RPi (with both versions of omxplayer), here what happens (root or non-root) even when I remove the /tmp/omxplayer* files and kill all dbus processes:

pi@raspberrypi: ~ $ omxplayer-sync -mv synctest.mp4 
WARNING: dbus connection could not be established
org.freedesktop.DBus.Error.ServiceUnknown: The name org.mpris.MediaPlayer2.omxplayer was not provided by any .service files
local: 0.00 0
local: 0.00 0
local: 0.00 0
omxplayer has ended...
WARNING: dbus connection could not be established
org.freedesktop.DBus.Error.ServiceUnknown: The name org.mpris.MediaPlayer2.omxplayer was not provided by any .service files
local: 0.00 0
local: 0.00 0
local: 0.00 0
omxplayer has ended...

Any ideas to solve this ?

turingmachine commented 10 years ago

This one is unfortunate. Somehow my build of omxplayer is linked against libpcre.so.1, but the version provided on recent raspbian systems is libpcre.so.3. The easy way to fix this is to add a symlink from libpcre.so.1 to libpcre.so.3.

$ sudo ln -sf /usr/lib/libpcre.so.3 /usr/lib/libpcre.so.1

Please make sure that the version installed is indeed libpcre.so.3, check beforehand with:

$ ls -hal /usr/lib/libpcre.so.*

The version of omxplayer provided by raspbian is way too old. It doesn't have dbus support yet. You could use a version from http://omxplayer.sconde.net. Alltough those releases are missing an important patch that raises the stats output frequency and thus syncing based on such a version of omxplayer will be less accurate.

YohannLYD commented 10 years ago

Thanks a lot, your solution worked like a charm ! It's good to know that the version of omxplayer supplied with raspbian is not up to date.

In case it can help someone else in the future, I found the libpcre.so.3 file in /lib/arm-linux-gnueabihf/ and the symlink made it run well:

sudo ln -sf /lib/arm-linux-gnueabihf/libpcre.so.3 /usr/lib/libpcre.so.1
turingmachine commented 10 years ago

I've updated the installation instructions in the README with the command to create the symlink.