I’ve used Picasa for over 10 years to manage my family’s photo library. We have about 50,000 images in there with 22,000 tags, stars, album memberships, etc. Now that Picasa will no longer be supported by Google, I had to find a replacement. And it really hasn’t been easy. I thought I’d share my strategy for anybody who might be in a similar situation.Continue reading Migrating away from Picasa 3
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
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)
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
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
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
Recently, some changes at work have me doing more WordPress work than I’ve ever done before. I am mainly helping a group within our division deploy the sites they are building for clients. After doing a few of these, I’m just stunned by how difficult it is to move a site from one domain to another.
Given how common it must be for WordPress developers to develop a site on one hostname, e.g. “dev.MYCLIENT.com” or “MYCLIENT.ourdevenvironment.com”, before moving it to its final destination, it’s really hard to believe how hard WordPress makes this.Continue reading Why is changing the hostname for a WordPress site so hard?
I recently needed to compile Titanium Mobile SDK from scratch. I was a little intimidated by the process. And as I feared, I ran into some nasty issues.Continue reading Compiling titanium mobile SDK from scratch
Here is another compilation of weird Titanium gotchas that we encountered while building a fairly large-scale (100+ JS modules, 40K lines of JS) app with Titanium Mobile SDK 3.4.x.Continue reading Titanium Mobile Gotchas (volume 2)
A couple of times, I’ve found it necessary to know what version of google play services I’m dealing with. For example, when I was using a number of Titanium modules that were dependent on google play services, I had version conflicts. But Google Play Services versioning is a nightmare. This article tries to make sense of it all.Continue reading Google Play Services SDK Version History