HDMI Extender Reverse Engineered

[danman] has been playing around with various HDMI video streaming options, and he’s hit on a great low-cost solution. A $40 “HDMI extender” turns out to actually be an HDMI-to-RTP converter under the hood.

He’d done work previously on a similar extender that turned out to use a quirky method to send the video, which he naturally reversed and made to do his bidding. But non-standard formats are a pain. So when he was given a newer version of the same device, and started peeking into the packets with Wireshark, he was pleasantly surprised to find that the output was just MPEG-encoded video over RTP. No hacking necessary.

Until now, streaming video over an IP network from an arbitrary HDMI output has been tricky, [danman] has been more than a little obsessed with getting it working on the cheap. In addition to the previous version of this extender, he also managed to get a stream out of a rooted Android set-top box. That costs a bit more, but can also record at the same time, should you need to.

None of this solves the HDMI HDCP encryption problem, though. You’re on your own for that one.

(Those of you Wireshark wizards out there will note that we just swiped the headline image from the previous version of the project. There were no good images for this one. Sorry about that.)

Audio Streaming on the Cheap With an RPi Zero

The minuscule size of the Raspberry Pi Zero makes it perfect for hacks where size is a factor. For example, a small, standalone device for getting streaming audio into your speakers. The RPi Zero doesn’t have an audio output on board, so PolyVection paired it up with their PlainDAC to build a minimal audio streaming device.

Their build uses a few lines from the GPIO header to drive an I2S digital to analog converter. The DAC is a PCM5142 from Texas Instruments that provides high quality sound output, and contains a built in programmable DSP.

The hardware fits into a 3D printed case, coming in at 68 mm by 48 mm. There’s no WiFi inside, but this can be added with an external USB device for wireless streaming. The DAC used is supported by the Linux kernel, so a simple configuration is all that’s needed to pipe audio out.

Once you have a device like this assembled, you can install a server like Music Player Daemon to remotely control the device and cue up internet radio channels.

Digging HDMI Out Of UDP Packets

[Danman] was looking for a way to get the HDMI output from a camera to a PC so it could be streamed over the Internet. This is a task usually done with HDMI capture cards, either PCI or even more expensive USB 3.0 HDMI capture boxes. In his searches, [danman] sumbled across an HDMI extender that transmitted HDMI signals over standard Ethernet. Surely there must be a way to capture this data and turn it back.

The extender boxes [danman] found at everyone’s favorite chinese reseller were simple – just an Ethernet port, HDMI jack, and a power connector – and cheap – just $70 USD. After connecting the two boxes to his network and setting up his camera, [danman] listened in to the packets being set with Wireshark. The basic protocol was easy enough to grok, but thanks to the Chinese engineers and an IP header that was the wrong length, [danman] had to listen to the raw socket.

Once everything was figured out, [danman] was able to recover raw frames from the HDMI extenders, recover the audio, and stream everything to his PC with VLC. All the code is available, and if you’re looking for a way to stream HDMI to multiple locations on a network, you won’t find a better solution that’s this cheap.

Custom Video Streaming Box

There are a lot of options out today for streaming video to your Internet-connected devices. Whether it’s Hulu, Netflix, Slingbox, or the late Aereo, there is no shortage of ways to get your TV fix. However, [Jaruzel] wasn’t happy with any of these services and wanted a more custom solution, so he built his own TV-streaming box out of hardware he had lying around.

[Jaruzel] gets TV from a service called SkyTV, but wanted to be able to stream it to his tablet, laptop, and XBMC. While rummaging through his parts bin, he came up with a WinTV tuner card for capturing TV and a Mini-ITX board to process everything and stream it out over his network.

Once the computer was put in a custom enclosure, [Jaruzel] got to work installing Puppy Linux. He wrote a boot script that configures the WinTV card and then starts VLC to handle the streaming service which allows him to view the TV stream over HTTP on the network. This is a great hack that would presumably work for any TV stream you can find, even if it’s just an over-the-air source.

Pi Musicbox 0.5 Released

Pi MusicBox Logo

 

Have an extra Raspberry Pi kicking around? Pi MusicBox provides a way to quickly turn it into a standalone streaming device that can fetch music from tons of sources. The latest release of Pi MusicBox adds a bunch of new features.

We took a look at this software over a year ago, and noted that it made streaming Spotify easy, and had support for controlling tracks using Music Player Daemon (MPD). The newest release supports AirPlay, DNLA, Google Music, SoundCloud, and several other music sources.

Since the analog audio output on the Pi isn’t great, Pi MusicBox includes support for a variety of USB sound cards. It’s also possible to use the HDMI port for digital audio output, which can be connected into your home theatre system.

If you want to build a standalone music device, this looks like a great place to start. The user community has built a variety of projects that run this software, which are featured on the Pi MusicBox homepage.

Android stick mutates into a home server

small-form-factor-home-server

Kiss that energy hungry PC you’ve been using as a home server goodbye. [Vince Loschiavo] shows us how he squeezed a remarkable amount of functionality out of an inexpensive Android stick which manages his home’s digital empire.

He started off just wanting some network attached storage. For this he grabbed an MK802 Android Stick which you can get for a song if you find the right deal. To bend it to his will he said goodbye to the Android OS, installing Ubuntu for ARM instead. The stick (which is missing its case in the image above) connects to a USB hub in host mode, but does actually draw all of its power from the hub itself. This made it possible to attach a USB to Ethernet adapter to boost the speed which would have been limited by the WiFi connection. There’s a 320 gig USB hard drive for the storage. With that much space on hand it makes sense to add streaming media service as well which is simple since it’s running Linux. The last part of his work actually turns it into an Asterisk server by way of Google Voice and a SIP phone. An impressive outcome at a bargain price to be sure!

Raspberry Pi reaches critical mass as XBMC hardware

For years I’ve been dreaming of a streaming media device that could just be stuck to the back of a television. Since XBMC has been far and away my favorite set-top box software, I’ve closely monitored hardware developments that can run that package. Now I think it’s time to declare that the Raspberry Pi has achieved the base specifications to be branded the XBMC device that rules them all.

There are a huge range of opinions on this topic, but please hear me out after the break to see what has brought me to this conclusion.

Continue reading “Raspberry Pi reaches critical mass as XBMC hardware”