Category Archives: Technology

AWS Adventures, part 2 – high-availability FTP service

In our AWS migration, we found it necessary to run an FTP server. Yeah, I know — “FTP? In the 20-teens?”. Look, I get it — nobody wants to run an FTP server in this day and age. But it is still a convenient way for partner companies to transfer data to us via automation. This isn’t highly sensitive data; our main concern is keeping the FTP server isolated from our other services so that any vulnerabilities there don’t propagate to more critical systems.

At any rate, we found it surprisingly challenging to build a highly available FTP service in AWS.

Continue reading AWS Adventures, part 2 – high-availability FTP service

Benchmarking QuickSync on Broadwell and Skylake

We’re in the process of building out some new Linux-based video encoders, and we want to output to a LOT of different destinations: live streams, archived versions on disk, high-quality versions for future editing, JPEG stills, etc.

QuickSync is a great way to get more out of our processors by offloading the encoding to the GPU. To figure out what architecture to invest in, we ran some tests with a Broadwell processor, the Core i7 5775C (3.3 GHz), and a Skylake processor, the Core i7-6700K (4.0 GHz).

Continue reading Benchmarking QuickSync on Broadwell and Skylake

Building FFMPEG with support for Decklink Capture and QuickSync encoding (Skylake edition)

NOTE: this document covers Intel’s Media Server Studio 2017. If you want to use Media Server Studio 2016 with an older processor, see this article.

With the release of Media Server Studio 2017, Intel provides Linux with the ability to leverage QuickSync on Skylake processors. This is a welcome development, as Skylake’s graphics capabilities are significantly better than previous generations of Core processors.

This article outlines how we built ffmpeg to capture video from a Blackmagic Design DeckLink mini and encode it using Intel’s QuickSync technology (h264_qsv).

Continue reading Building FFMPEG with support for Decklink Capture and QuickSync encoding (Skylake edition)

Building FFMPEG with support for DeckLink capture and h264_qsv encoding

NOTE: this document covers Intel’s Media Server Studio 2016. If you want to use Media Server Studio 2017 with a Skylake processor, see this article.

ffmpeg has come a long way since the pre-1.0 days. With its elaborate system of routing filter outputs, its ability to capture video from video cards, and support for GPU-based encoding, it has become quite the powerhouse in the video world.

This article outlines how we built ffmpeg to capture video from a Blackmagic Design DeckLink mini and encode it using Intel’s QuickSync technology (h264_qsv).

Continue reading Building FFMPEG with support for DeckLink capture and h264_qsv encoding

Galaxy S7 default config not using full display resolution

I recently discovered that my Galaxy S7 Edge was reporting its display resolution as 640dpi, when I expected it to be approximately 534dpi. What’s the big deal, you ask? Well, it’s causing dynamically sized elements on screen to be approximately 17% bigger than they were intended to be drawn. Some users might like this, as it will make elements just a little easier to tap on. But others might not like it, because you can’t display as much information on the screen.

Continue reading Galaxy S7 default config not using full display resolution

Ruuvu: building an Alexa Skill for IMDb ratings with alexa-app

We’ve enjoyed using our Amazon Echo for the past few months. Its built-in features provide some useful and fun capabilities, but the availability of the Alexa Skills Kit promises to really help the device maximize its potential. ASK allows third-party developers to build “skills” to add all-new features to Echo. Naturally, I couldn’t help but take a stab at building an Alexa Skill myself.

Continue reading Ruuvu: building an Alexa Skill for IMDb ratings with alexa-app