13

I would like to play the same video on two different computers, and synchronize them approximately over the internet. I'd like to watch videos together with my friend while talking on Skype. It'd be preferable that if one of us stops/starts the video, it stops/starts on the other side as well.

The sync doesn't need to be second-perfect, but the videos shouldn't drift apart over time. It needs to work on Windows, and shouldn't be too difficult to set up (i.e. I need to talk someone through setting it up). Both computers are behind routers (home adsl connection).

Are there any existing solutions for this?

Clarification: What I'm looking for is a remote-control solution for both players on both computers, akin to http://www.synchtube.com/. Streaming is not a viable solution because of constrained upload bandwidth on both sides (ADSL). The same video file is present on both computers.

1
  • After a lot of Googling I can see that there is definitely interest for this, but I couldn't (yet) find a workable solution that is free and works through the internet (not only LAN)
    – Szabolcs
    Sep 22, 2011 at 21:38

4 Answers 4

4

After looking for a similar solution myself (synchronized playback with files on both computers, no streaming nor multicast), I found several solutions, most being free and some being opensource.

Desktop applications

The following applications must be installed on both computers to allow synchronized playback:

  • SyncPlay: opensource software to synchronize playback of videos and/or audio files. The synchronization packets will pass through the SyncPlay servers, but the software is opensource so you can make your own master server if you want. Crossplatform and works with several different players, like mpv or VLC (v2 natively supported in latest SyncPlay, before you had to install the additional VLC-syncplay plugin -- for VLC v3 there is an issue that will get resolved in the future). SyncPlay itself is quite easy to use: just launch SyncPlay and choose a (IRC-like) server, a room name and a file to sync and it will launch your video player with everything needed. You can then tell your friends to choose the same server, room name and file to be synchronized. A full log will show everyone's actions in realtime.

  • RiftMax Theater is a media player that is specifically made to synchronize playback.

  • Virtual Reality Theaters, like VRTV Free and similar Cardboard/Occulus virtual reality apps: if both of you have a virtual headset, the "virtual theater" apps usually offer synchronized playback over internet with users of the same headset.

Web-based apps

These applications run in the browser but they allow to use your own files:

3

http://www.mplayerhq.hu/DOCS/HTML/en/networksync.html

Seems that mplayer lets you sync video over the network.

1

There are a few approaches.

1) Super easy not real sync

Copy the file to both computers, get on skype, say "1, 2, 3.. GO" and start at the same time. To improve upon the exactness of this, you could both sync to the same NTP server (http://ntp.org/; http://www.nist.gov/pml/div688/grp40/its.cfm; http://technet.microsoft.com/en-us/library/cc773061(WS.10).aspx) and then set up a Schedule/Cron/At script (http://support.microsoft.com/kb/308569; http://adminschoice.com/crontab-quick-reference). This is probably the least technical way to do this. I am assuming here this is not just a YouTube or web video you can both click on; in term of bandwidth streaming there is probably a negligible difference in transmitting the file ahead of time)


3) Video Conferencing

Video conferencing software like GoToMeeting, Adobe Connect, Microsoft NetMeeting, etc. often have video streaming features. Orb, TVersity, etc and other media streamers might also work if you play around with them. You will have to look into the specifics to see their offerings and features, I don't have any practical experience implementing what you are looking for here.


3) Heavily Technical

What you are probably looking for is to "mutlicast" your video. This means using a streaming protocol like RTP, the same signal will be sent to multiple recipients. Using the video playe VLC, you can accomplish this. Here is a basic guide I googled very quickly (http://www.wikihow.com/Use-Vlc-to-Stream-Audio-and-Video-to-Multiple-Computers-on-Your-Network-Using-Multicast). Did not check if its good, but if you search for "vlc mutlicast" you should find other tutorials. It should also work with other video players, do some searching.

While you can run IP multicast over the Internet, that may be difficult, problematic, and involve your ISP. So, what you will probably want to do is to connect to the other user over a VPN - a virtual private network. This means that you connect to each other as if you were on the same LAN, just virtually. This allows you to run all sorts of local/LAN only protocols and applications. Programs like Hamachi, TeamViewer, and others will help you set up a VPN. You can also set this up at the system level, do some research there or google for other packaged solutions.

The specifics and testing of your solution, I leave as a learning activity for you. In searching this for you, some people noted their VPN did not support multicast protocols or that there were lag issues. Try this route if you want to play around with network settings, but go with syncing or video conferencing software sounds like it will be easier.


Other suggestions I won't elaborate on unless you really want to know:

  • Upload the video to a sharing site somewhere and just count down to click go, there could be possible lag or delay issues since there is no synchronization.
  • Try using a screen sharing app (I think Skype has plugins for multiple viewers), vnc, etc. My guess is this will result in pretty poor quality.

Because there is always going to be network lag, I would think the easier option is for both of you to have a local copy


Edit

I have noted the OP's comment, but wanted to add some more info for others who may come across this who are interested in streaming. I remembered Winamp's shoutcast has a video support, so I did a basic search and found this. I think one should be able to make a private video-radio station for streaming to friends. http://en.wikipedia.org/wiki/Nullsoft_Streaming_Video http://www.scvi.net/stream/index.htm

2
  • Thanks for the suggestions. (1) is what I did before, but it'd be so much better to have the ability to stop/start/seek both sides with one control. The reason why (2) and (3) or any other kind of streaming won't work here is very limited upload bandwidth, which is already exhausted by Skype. There are some solutions for youtube and some other online streaming sites (e.g. tried www.synchtube.com/ , it was half-working), but I was hoping for something that works for a file that we both have on our computers
    – Szabolcs
    Sep 23, 2011 at 9:49
  • Ah, this can actually be done quite easily, Assuming we have the same exact file on each side. Many video players like winamp support natively or through plugins command line options for play/pause, etc. You can run an SSH server on one PC and then execute the command via a script on both your PC and the other, since you are transferring very little date, it would be pretty close timewise. Some of the video players also have web based interfaces which people typically use so they can remote control their PC with an iPad or smart phone. I'll let you google for the solution that meets your needs
    – Eric G
    Sep 23, 2011 at 21:00
0

Anyone looking can do this with VLC

http://www.howtogeek.com/118075/how-to-stream-videos-and-music-over-the-network-using-vlc/

1
  • 2
    The OP clearly states that streaming in not a "viable solution"
    – Tog
    Feb 21, 2013 at 10:25

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .