Skip to content

Instantly share code, notes, and snippets.

View evanpurkhiser's full-sized avatar

Evan Purkhiser evanpurkhiser

View GitHub Profile
components on laptop › ssh -vvv hyperion.evanpurkhiser.com 2>&1 | while read line; do echo "`date +'%a %b %d %H:%M:%S.%N %Y'` $line"; done
Thu Aug 24 23:34:27.N 2017 OpenSSH_7.4p1, LibreSSL 2.5.0
Thu Aug 24 23:34:27.N 2017 debug1: Reading configuration data /Users/evan/.ssh/config
Thu Aug 24 23:34:27.N 2017 debug1: /Users/evan/.ssh/config line 1: Applying options for *
Thu Aug 24 23:34:27.N 2017 debug1: /Users/evan/.ssh/config line 11: Deprecated option "useroaming"
Thu Aug 24 23:34:27.N 2017 debug2: checking match for 'user="!git"' host hyperion.evanpurkhiser.com originally hyperion.evanpurkhiser.com
Thu Aug 24 23:34:28.N 2017 debug3: /Users/evan/.ssh/config line 13: not matched 'user "evan"'
Thu Aug 24 23:34:28.N 2017 debug2: match not found
Thu Aug 24 23:34:28.N 2017 debug1: /Users/evan/.ssh/config line 19: Applying options for hyperion.evanpurkhiser.com
Thu Aug 24 23:34:28.N 2017 debug1: Reading configuration data /etc/ssh/ssh_config
My traceroute [vUNKNOWN]
server.home.evanpurkhiser.com (192.168.1.101) 2017-08-18T02:44:51-0700
Keys: Help Display mode Restart statistics Order of fields quit
Packets Pings
Host Loss% Snt Last Avg Best Wrst StDev
1. gateway 0.0% 335 0.3 0.3 0.2 0.5 0.1
2. 10.0.6.233 0.0% 335 1.9 2.5 1.3 24.1 2.9
3. 10.41.5.21 0.0% 335 1.7 4.7 1.3 24.9 4.1
4. 64.125.69.65
package main
import (
"fmt"
"log"
"github.com/gvalkov/golang-evdev"
)
func main() {
package download
import (
"archive/zip"
"fmt"
"io"
"io/ioutil"
"os"
"time"
// ArtworkIndexer implements the MetadataProcessor interface, providing the
// ability for artwork of tracks to be resized and stored on disk.
type ArtworkIndexer struct {
// SavePath specifies where artwork should be stored.
SavePath string
// Size specifies the size of images to store.
Size image.Point
// Quality specifies the JPEG quality of the resize image.
{
"+12v": [
{
"Value": "+12v",
"IsArtist": true
}
],
"2 Elements": [
{
"Value": "2 Elements",

Follow me on Twitch to see it in action!

  • Configuration interface for various settings
    • Change how many bars until a track is considered playing.
    • How many beats can a track be interrupted before the next tracks is considered to be playing.
    • Position and style of track details.
  • Display waveform for each track, including visual progress indicator for the playing tracks.

Pioneer PRO DJ LINK Live Overlay

Generate a real time "now playing" track information overlays for DJ live streams using PRO DJ LINK equipped Pioneer equipment. Engage your audiance and avoid nagging "what track was that!" questions!

How It Works

Group name Description
base The base configuration group is installed for all environments. This includes the most basic and cross platform configurations. For example, bash, vim, and other environment independent configurations are placed here.
common/* Common groups apply to various machines and are generally more generic. This includes playform (osx / linux) and geolocal (work / home) groupings.
machines/* The machine groups are specific to a single machine. This includes configuration files for programs isntalled locally to that machine that are not intended to be shared elsewhere.
#include "metadata.hpp"
#include <taglib/fileref.h>
#include <taglib/id3v2tag.h>
#include <taglib/mpegfile.h>
#include <taglib/aifffile.h>
#include <iostream>
inline bool ends_with(std::string const & value, std::string const & ending)
{