GIFV Links

Jun 18, 2017 - 1 minutes
Today I Learned (TIL): GIFV links are actually MP4 files with the HTML5 video tag and the loop attribute. Here is my attempt at a perfect loop from The Bike Law CCA Regional Crit Championship Walterboro SC June 17 2017. <html> <head> <title>Bike loop</title> <head> <body> <video width="1920" height="1080" muted controls loop video controls autoplay poster="bikeloopposter.png"> <source src="bikeloop.mp4" type="video/mp4"> </video> </body> </html> For more content from the race see my Bike Law CCA Regional Crit Championship Walterboro SC June 17 2017 photo album.

Google Vision API

May 20, 2017 - 1 minutes
I wondered if I could use Google Cloud Vision API in a bot like I use Sikulix today. I created a Google project, created the Google API key, and wrote a quick Java application. Using the annotate image request I retrieved the text from the response. Turns out the GUI application I an trying to automate has a weird font that Google is unable to accurately detect. Tesseract OCR had the same issue with this font so it is not anything lacking with Google’s API.

Hugo Workflow

May 20, 2017 - 1 minutes
Here is my workflow for a new blog post using Hugo cd ~/projects/blog.pla1.net hugo new post/name_of_post.md hugo server Open browser to http://localhost:1313/ Edit markup in name_of_post.md using Atom editor Check local version in browser and repeat until happy ~/deploy.sh This script commits to GitHub and rsyncs local files with my web server.

Bash Script - Text to Speech

May 3, 2017 - 1 minutes
Use the Bash script below to speak some text. I like to use this for alarms and completion messages on long running jobs. For example I burn Raspberry Pi thin client images at work which take over 30 minutes to complete. You’ll need to obtain a key to use IBM Watson Text to Speech API. At the bottom of the page is an example audio message uploaded to YouTube. #!/bin/bash # # Speak text # temporaryFile=$(mktemp) /usr/bin/curl -v -X POST -u YourApiKeyGoesHere:YourPasswordGoesHere \ --header "Content-Type: application/json" \ --header "Accept: audio/wav" \ --data '{"text":"'"$1"'"}' \ --output "$temporaryFile" \ "https://stream.watsonplatform.net/text-to-speech/api/v1/synthesize" /usr/bin/mplayer "$temporaryFile" Example ~/speak.sh "Congratulations!

Android Virtual Device Problem

Apr 28, 2017 - 1 minutes
My Android virtual devices were not running in Android Studio 2.3.1 - Ubuntu 17.04 - Intel i3 processor that uses the i915 kernel modules. To troubleshoot the problem I tried running the emulator from the command line. ~/Android/Sdk/emulator/emulator -avd Pixel_XL_API_25 The following error message was at the top of the output. libGL error: unable to load driver: i965_dri.so After some googling I remedied the situation by creating the following symbolic link.