4

Two GNU/Linux computers are playing the same video with mplayer (or vlc or whatever).

How to sync the pause/seeking/FFw between them. Like when I press pause on master computer, the other one is also paused on the same frame.

Ideas? (Expecting both player-specific and universal approaches)

Vi.
  • 17,755

7 Answers7

2
  1. Master mplayer: mplayer -vo yuv4mpeg:file=/tmp/master_pipe video.mkv
  2. Multicaster: /tmp/master_pipe | tee /tmp/pipe1 | nc -lp 1234
  3. First display: mplayer /tmp/pipe1
  4. Second display nc 1.2.3.4 1234 | mplayer -noconsolecontrols /dev/stdin

(something like this)

Seeking, OSD, ... is controlled by master mplayer's console.

Big disadvantage: even 100 megabit network is a bit too low for this.

Second disadvantage: A/V desync.

How to improve this scheme?

Vi.
  • 17,755
2

Streaming using VLC:

Server:

vlc video.avi --sout '#duplicate{dst=display,dst=standard{access=http,mux=ts,dst=127.0.0.1:1290}}'

Client (variant 1):

cvlc http://127.0.0.1:1290

Client (variant 2):

curl http://127.0.0.1:1290 | mplayer -

You can seek/pause/resume it (although not cleanly).

Vi.
  • 17,755
1

We tried the Synergy option to sync three streams of video on three separate PCs running Windows XP. It worked, after a fashion, but not accurately enough for our purposes (exhibitions).

Every time the files looped, different ones would lag by up to a second. If the difference between them had been consistent we could have adjusted in the timeline, but it wasn't.

Now we use networked solid state players - rock solid.

slhck
  • 235,242
0

V-Player 6 HD is a Linux-based product that does exactly what you want.

Several video players can be synchronized over a network by setting one machine as master and the others as slave.

Gareth
  • 19,080
0

I know this is a very old question, but I have recently solved it with mplayer and answered my own question here on superuser: master-slave with mplayer

denjello
  • 383
-1

I know nothing of linux, but the app you seem to want is here: http://alternativeto.net/software/synergy/

Good luck.

CreeDorofl
  • 2,469
-1

Vi,

If the computers are networked just screen share the two machines. Log into and play the video from the host using VNC. You may have to adjust the screen resolution to get what you want.

Miguel
  • 1