Running 5 computers -- 5 different videos -- on PC's

Post Reply
bnh
2 MB
Posts:2
Joined:May 10th, 2015, 9:25 pm
Running 5 computers -- 5 different videos -- on PC's

Post by bnh » May 10th, 2015, 10:37 pm

I just purchased ArraySync. I have been using MultiScreener developed by Zach Poff since 2010. I had his MAC-based program ported to PC for XP and W7. It works great... to a point, and I thought I would try your system to make some comparisons.

There seems to be a point where keeping multiple computers in sync starts to break down. Poff admits to this problem and says he can't do much until MAX/MSP becomes more efficient.

I'd like to know if you suggest sticking to some of the same production protocols.

1) All video files should be shot in identical container formats, preferably motion jpeg (.mov), and all subsequent generations should stay in that format. I switched from .avi to .mov for this reason. Original footage is 1280 x 720p 30 fps. Only three generations are made (original, edit, and compression), and the aspect ration is reduced to 740 x 480 in the last generation to reduce file size.

2) Avoid temporal compression codecs. Use spatial compression instead, e.g. ProRes. The timescale of all videos should be identical. After ProRes compression, mine show a timescale of 1,000. I don't know if that high or not. The second generation video files rendered after editing show a timescale of 600, but they are also 20 gig in length, each.

3) Computers should be tied with wired (not wireless) connections. I use a 10/100 switch rather than a router with ethernet cables.

4) All videos should be identical in length and frame count. It just makes life easier. There is usually no audio on any of the video files. If there is audio, it comes from only the master/server computer file.

5) In my case, 4 computers chase one master/server. Each computer must have its own, unique IP address on the LAN network.

6) All firewalls off, and Windows 7 has plenty.

7) Installation of Java is required. And not all versions of Java work on the different versions of XP, W7 Pro and W7 Ultimate.


With 5 computers, I started having random hiccups trying to hold everything in sync. Once the started, the program runs continuously through to the end. No looping. When playback sync of the 5 computers started getting "iffy," I first tried adding more RAM. That seemed to help a little on the older PC's running on XP (version 3) ... to a point. Then I switched to all dual core or quad core computers using 32-bit W7, and that seemed to help, a little. My latest add was a PC using two i7 processors in quad core configuration. And still intermittent, little hiccups would appear in the sync.

I started questioning the cables? Do ethernet cable often cause these kinds of problems? Are we to the point where the ethernet cables have to be exactly the same length?

Should the faster computers, i.e. the ones with bigger CPUs and the most memory, be clients or servers? Would that make a difference?

The videos are approximately 8 minutes in length, and they might play back perfectly in sync for one pas, but then mess up at different points during the next 3 passes.

Eventually, all the computers will resync to the master after just a few seconds, but I have to have rock-solid, continuous sync during playback. I'm using standard SMPTE time code to sync 30 fps video. I keep going back 20 years to analog video, when synchronizing multiple machines using tape and SMPTE time code was a very common, highly perfected practice. So I'm baffled by the difficulty of synchronizing video play-back on multiple computers.

I noticed your blog about problems with W7 and I thought I would ask ahead of time if you have had any more insight into the two problems mentioned. Since W7 is no longer available, it now occupies the same place that XP used to, i.e. being the most stable OS currently available for the PC user.

If you have any suggestions I'd really like to hear them. I apologize for writing such an lengthy post, but I've been down this trail many times over the past 5 years.
User avatar
Turboladdade
1024 MB
Posts:1426
Joined:October 31st, 2007, 10:44 pm

Re: Running 5 computers -- 5 different videos -- on PC's

Post by Turboladdade » May 12th, 2015, 2:44 pm

Wow, quite a long post! I’m gonna try to hit a couple points but I’m not 100% sure I even understand what you’re asking to be honest.

First and foremost, please be aware that you will have significantly better results on Macs than PCs. Even brand new Window 8 PCs. They just don’t do media stuff as well as Mac OS X. I’ve been trying for years to squash every conceivable bug or issue that Windows throws my way and there always seems to be 5 more taking its place.

Second, Motion JPEG (like the original 1990s Motion JPEG) is definitely not the codec you want to use. A massive production codec like ProRes probably isn’t either. You might have better results with Sorenson, H.264, etc. It’s really gonna be a matter of trial and error on your local machines. Try making a 30 second clip in various codecs and see what works best. On Macs the best codec is Apple Intermediate Codec across the board, however that isn’t available on Windows unfortunately. Which brings me to another point, in that QuickTime is being abandoned by Apple. The next version of ArraySync will either switch to Windows’ built in media systems (Windows Media Player) or be dropped altogether. Gotta work some stuff out on that first.

Third, if it seems to start playing fine and then get out of sync later, it could possibly be some network issue. Make sure both UDP and TCP ports 9201 are open on all firewalls and routers. But aside from that advice it’s unfortunately going to require trial and error for you, in your local situation, to see what works best for you.

Fourth, I would imagine the faster computers should be the servers but in my experience that really hasn’t mattered at all. What specs do these machines have anyways?

Finally, the previous issues with Windows 7 all had to do with the quality of the video itself (pixelated on certain systems). It was never a syncing problem.

I really don’t have any experience with MultiScreener so can’t really speak to any of those requirements or particulars related to that software.

Hopefully this information helps you find a solution to your problems!
I am now telling the computer exactly what it can do.
bnh
2 MB
Posts:2
Joined:May 10th, 2015, 9:25 pm

Re: Running 5 computers -- 5 different videos -- on PC's

Post by bnh » May 12th, 2015, 6:49 pm

I’m sorry for picking your brain, but you have a way of communicating things clearly.

I’m beginning to see the benefit of using Macs. I wish I could afford them. I don’t know how you guys do it. I think we PC’ers pay for cheap parts with hours of frustration.

I have to test this latest project on a variety of hardware configurations, so I have one Toshiba laptop with Celeron processor at 2.2 GHz and 2 Gig of RAM, one desktop with an ASUS motherboard and an Intel 2 Quad 8300 processor at 2.50 GHz and 4 Gig of RAM, one Dell desktop 745 with Core2Duo processor at 2.66 GHz and 4 Gig or RAM, one Dell T3500 with Xeon processors running 3.6 GHz with 8 Gig of RAM, and one desktop with an Intel Q8200 Quad motherboard running at 2.33 GHz with 4 Gig of RAM. I still run everything in the 32-bit mode. For just a little more money, I looked at the miniMacs, but they didn’t seem that flexible and the hard drives were running at 5400 rpm. Switching parts and beefing up power has always been cheaper on the PC side. I’ve always had good luck with PCs, but what you said about Macs handling video better makes me wonder if it isn’t time to switch. Just getting the 5 computers to see each other on a LAN and the clients to see the server took weeks of bug swatting. Networking is not my forte.

Yes, I am aware of the UDP port situation.

The camera I use for the original footage only shoots motion jpeg, which the editing software (Adobe and Sony Vegas) see as mov. I could convert to the other codecs you mention in the second generation and will give it a try. It’s interesting that timescale and spatial vs temporal compression are not of concern with ArraySync. With MultiScreener, H 264 is a no-no. I installed the ArraySync server software last night and it seems amazingly simple.

1. I didn’t see in the Preset menu an option to run the program without going to full screen during playback. For the client computers, running full-screen during playback is always required, but I sometimes like to run the server in a minimized window so I can monitor other functions, such as audio. Is there such an option?

2. Is there an option where one can control the starting point on the Server’s video so that one doesn’t have to start at the beginning to check a spot at, for example, 02:41:22? In my project, people are reacting to each monitor’s output. In rehearsal, it’s more efficient to have pick-up points rather than start from the beginning each time.

3. Is there a corollary to Apple Scripts in the PC world?

Do you have any experience shooting 60 fps? Are we just kidding ourselves with this option? If we shoot 60 fps and edit 60 fps, do we really see 60 fps video when it is displayed on the monitor, or is the benefit limited to the clearness of the special effects, e.g. green screening and motion tracking? Do monitor cards and the monitors themselves influence the frame rate of video?

I’ll connect the other 4 computers and start making tests next week. Thanks for your help.
User avatar
Turboladdade
1024 MB
Posts:1426
Joined:October 31st, 2007, 10:44 pm

Re: Running 5 computers -- 5 different videos -- on PC's

Post by Turboladdade » May 14th, 2015, 7:07 am

.mov is just a container, not a codec. A .mov file can contain video tracks of any variety of codecs (and audio track, which have their own selection of codecs). As I said before I have no experience with other software so I can't really speak for that, but H.264 is usually okay if you're only playing one on a computer. H.264 is extremely resource intensive so having multiple ones going never works out even on brand new high end Macs.

As for Macs vs. PCs, it's really about OS X not the hardware itself. A 5,200 RPM Mac Mini will play and sync an AIC-encoded video more reliably than most any Windows PC I've tested. Best advice I can give: don't be spec-obsessed.

1: There is no "headless" server option yet, although that's oft requested and I plan to implement it sometime in the future.

2: Not at this time.

3: I have no idea.

60fps would probably be fine on a newer Mac using Apple Intermediate Codec and flash storage. Haven't tested it myself.

Now is probably a good time to mention that there will not be any further updates to ArraySync, but rather a complete rewrite from the ground-up (and a rename/rebranding). Among the many improvements, I hope to switch the PC version to Windows Media rather than QuickTime, which should improve behavior on PCs greatly.
I am now telling the computer exactly what it can do.
Post Reply