Problem: Live Stream Three Inputs

FOREWARD

Recently I had a problem come up that needed to be solved with a hardware & software solution.
Heads Up Warning: This happened to be a work problem, so I will intentionally be somewhat vague about the content. This may make some of the choices seem weird, but at the end of the day, trust me, it worked for the particular need.

PROBLEM

There are three independent video sources that exist in a room. Each of these video sources is a different combination of signal type and resolution (fortunately they are all digital signals). The three video sources need to be composited together into a single feed that can then be streamed live to an undetermined amount of users spread across the globe (10 years ago that would have been scary and really costly, but in 2016, not so much, thankfully). There are a number of different ways this can be accomplished depending on budget, system complexity, and system footprint. I went in with a moderate budget in mind, and a footprint of a single Pelican Case for transport. I wasn’t too concerned about complexity since I would be the only person operating the system; it just needed to be repeatable.

DIGITAL VIDEO SIGNALS
– VIDEO SIGNAL 1: 1920x1080p@60 via HDMI
– VIDEO SIGNAL 2: 1920x1080i@30 via HDMI
– VIDEO SIGNAL 3: 1680×1050@60 via DVI

SOLUTION

Ok, so here is what I did! First let’s talk about hardware and how I connected it all.

HARDWARE
– 15″ MacBook Pro (2016 – Max Specs): Serves as the hub of the entire setup. This system has 4 ports for I/O and I used them all! (2) USB 3.0 Ports and (2) Thunderbolt Ports.
UltraStudio Mini Recorder: Captures ‘1920x1080p@60’ video signal from HDMI and feeds into MacBook pro via Thunderbolt.
UltraStudio Mini Recorder: Captures ‘1920x1080i@30’ video signal from HDMI and feeds into MacBook pro via Thunderbolt.
AV.io HD: Captures ‘1680×1050@60’ video signal from DVI and feeds into MacBook pro via USB 3.0.
– USB to Ethernet adapter. All network traffic is going over ethernet to ensure maximum throughput for stream output.
– GoPro Type Camera: This camera is for capturing a general ‘room feed’. It is a very small battery operated camera which means I can put it almost anywhere without being intrusive to the people it is recording. Nice wide angle to really get the whole room.
Pocket Cinema Camera w/ lens: This allows me to capture screen feeds of lower resolution equipment without needing a scaler with every conceivable input and output. Set everything up correctly and you would never know it’s a camera pointed at a screen. Since I never know what sources I will be up against in a given environment, this is a foolproof way to ensure I can get the feed.

Streaming Hardware Configuration Diagram
Streaming Hardware Configuration Diagram

SOFTWARE
– For the actual distribution of the stream, I am using http://Ustream.tv. There are an almost limitless number of streaming services available today, and there may be one more appropriate for me, but Ustream offered exactly what I needed for a reasonable price, and most importantly allowed me to lock down the stream with a password so I can manage who is viewing. (Yes that is not super secure, but for this purpose it was good enough)
– In order to effectively composite 3 feeds into a single feed, I needed some kind of software component. Since the events that would be streaming were live, it made sense to have the ability for ‘live event extras’ like switching, lower thirds, and title cards. I decided to go with Wirecast from Telestream. (When I was testing this whole solution out, it was on version 6. This worked ok, but was hitting the CPU really hard and the system ran at about 75% utilized consistently. Good news is that Wirecast is now on version 7, and enables the use of the GPU so CPU load is WAY LESS!)

Viewer Interface Mockup
Viewer Interface Mockup

There you have it, live streaming 3 video feeds It was a fun exercise and the result was really great! As always, I hope this was in some way helpful for someone out there looking to do something similar. Feel free to reach out with any questions!

It’s Time For a Proper HTPC! (Post 3of3: Everyday Use)

First we had The Planning phase.

Then, The Build phase.

And now, the Everyday Use phase. Let’s do this!

So, it has been just about 2 months that we have been using the final setup. For those of you who may not quite remember what the final setup was, here is a quick recap. We ended up going with a Mac mini running Plex Media Server combined with the Plex Client. For local storage we are using a 4 Bay Drobo.

Hardware PerspectiveFrom the beginning of this project my goal was to have one box that could do it all. No more switching between sources or using 4 different remotes. The Mac mini is that one box, with Plex as the gatekeeper to all media. We have a good amount of local media, movies and tv shows, that are all stored on the Drobo. The Mac mini has no problem at all playing back local media.

The newer Mac mini also has a nice extra bonus for those of us who want to use them as a HTPC, HDMI w/embedded audio on board! This means 1 simple HDMI connection from the Mac to the Television. Perfect!

There isn’t really a lot to say about the hardware since it is an all in one solution. The only other external hardware is a Samsung Blu-Ray drive in an external enclosure, attached via USB 2.0. We rarely, if ever, use physical discs, but should the need arise, this covers that. We do also have the TV hooked up to an OTA antenna that is called the WallTenna. It is completely dependent on your location, but if you have a good signal at your house it works great! It’s quite amazing how good the HD quality is that comes over the air for free!

Software PerspectiveAnother mandatory item for this project was the ability to control the whole system with a simple remote. I did NOT want a keyboard and mouse in the living room to control this thing. This meant some kind of Media Center front end. After using XBMC for a couple days, I just couldn’t get into it so I started looking at some alternatives. The alternative I decided on was Plex Media Center. It has a great user interface and has the ability to pull in content from local sources as well as a MASSIVE list of internet sources. The whole interface can be controlled with the simple and effective aluminum Apple remote. The same remote that you would use with an AppleTV. Plex also has mobile apps that allow for control of the media center, but also the ability to stream your content on your home server to your mobile device. The really neat part about this is that not only does it stream within your house to your mobile device but across the internet to anywhere! On the road and decided you want to watch a movie that is at home on your Drobo? No problem!

If you sign up for the “MyPlex” account, this is made even easier as you can use your account to access your content remotely, so you don’t have to deal with the sometimes messy port forwarding and firewall traversal within your home router/firewall. This sharing is extended even further if you decided to exchange servers with your friends and family. You are then able to access content from their servers and they can access yours. It becomes a social server of content for your friends and family to share. Very cool idea.

Plex has so many features, you would be reading this forever to hear about them all. Instead, I will link again to http://plexapp.com and you can look around at all the awesome stuff Plex has to offer!

It’s Time For a Proper HTPC! (Post 2of3: The Build)

After much planning and searching for the parts you saw in the last post, I have now now done a complete flip and changed the whole plan for the project!

The setup is now as follows:- Mac mini (2.3GHZ Core i5, 8GB Ram, Intel HD 3000 Graphics)- Drobo w/8TB of Storage Space- External Samsung Blu Ray Drive- Elgato EyeTV USB OTA Tuner- Walltenna OTA Antenna- Apple Remote- Plex Media Server / Client

Why did I change everything? Cost, size, reliability, and power consumption. I originally went with the PC build route thinking it would save some money, but that turned out to be false. The size of the Mac is microscopic compared to the giant Silverstone case. With the PC build, it would have to run Windows, and that was something I just didn’t want to deal with. Finally, being a HTPC, this machine needed to stay on 24×7 in order to be a true entertainment “ready anytime” kind of device. Even with a smaller 650W power supply, that was going to be a lot of power being consumed unnecessarily.

We are approaching the end of the first week of use and so far things are going remarkably well! Look for “Post 3of3: Details” in the coming weeks to see how we set it up, how it works day-to-day, and if it’s the right solution for you!

It’s Time For a Proper HTPC! (Post 1of3: Planning)

The time has come. I am tired of bouncing around between 4-5 different devices when it comes to watching content in the living room. We have an AppleTV, Boxee Box, Mac Mini w/Drobo, Xbox 360, Over The Air TV, and of course AirPlay from iPads and iPhones.

It’s time for living room content unification!

The plan is to build a custom “Home Theater PC” that will handle all content in the living room / home theater. Here is the list of parts that will go into this build.

Hardware
Case:

Silverstone Tek GD08B
Motherboard:

MSI MB-Z68A-43 LGA1155
Processor:

Intel Core i5-3450 Quad-Core Processor 3.1 GHz 6 MB Cache LGA 1155
Heatsink:

SilverStone NT01-E CPU Cooler
Memory:

Corsair Vengeance 8 GB
Main Hard Drive: Corsair Force Series GT 120 GB SATA 2.5-Inch SATA III Solid State Drive
Storage: (6)

Western Digital 2 TB WD Green SATA III
Disc Drives: Samsung Blu-Ray Combo Internal
Power Supply:

CORSAIR Enthusiast Series TX750 V2
Tuner: Hauppauge 1229 WinTV-HVR-2250
Control: Logitech Mini PC Entertainment Dinovo Keyboard

Software
Operating System: Windows 7 Professional
Media Front End: XBMC

The “Must Have” List
– Netflix Playback
– Amazon Video Playback
– iTunes Playback
– OTA TV Playback w/ Recording
– AirPlay Capability
– 10+TB RAID 5 NAS for File Storage
– 2+TB Storage for DVR
– All functionality accessible from single interface
– Single remote control
– SMB / FTP / AFP file access
– Very quiet!

Check back for “Post 2of3: The Build!” in the coming weeks!