XYK

serverless-video-trimmer-thumbnailer

Generate on-demand video clips & thumbnails from long-form video for cheap on GCP Functions using HTTP pseudostreaming. Serverless architecture allows for pay-as-you-go pricing, eliminating need for always-on VMs.

python, ffmpeg, google cloud functions, flask, terraform
serverless, cloud infrastructure | README 

cloud-transcoder

Transcoding long (>1 hour) videos quickly and cost-effectively on GCP to adaptive HLS and MP4 mezzanine files. Up to 40x $ savings with preemptible instances. Used in production for over 20,000 hours of user video.

node, ffmpeg, google compute engine, websockets
backend, cloud infrastructure | README 

google-cloud-functions-python-boilerplate

Boilerplate for HTTP-triggered Python Cloud Functions on GCP, as an emulator for the python environment doesn't exist yet.

python, google cloud functions
README 

Scoreboard-webcam-OCR

Scoreboard OCR with a webcam and telephoto lens to read digits in real time from a in-venue scoreboard.

python, pyqt
desktop application | README 

nevco-mpc5-signal-decoder

Circuitry code to decode the Nevco MPC5 scoreboard controller, running on AVR microcontrollers. Used in a basketball tournament to read and decode timing data.

c, eaglecad, hardware schematics
hardware device | README 

CasparCG-Controller

Desktop app to control custom TV sports graphics using CasparCG. Used in hundreds of professional basketball broadcasts in Taiwan (SBL, WSBL & HBL) to deliver grapics. Graphics designed in Flash.

python, pyqt, adobe flash
desktop application (windows & mac)

daktronics

A RS-232 serial data analyzer for the Daktronics omnisport timing console. Decodes running clock, individual lane touch times, and split information. Used for several meets, also adapted for Colorado Timing Systems

python, c++, pyserial
hardware device | README 

IASAS_swimming_2013

Graphics engine for the IASAS 2013 swim meet broadcast. Includes 3D graphics, chroma key outputs, and real time clock/split time information from the touchpads.

python, html, css, c++, tkinter, websockets
project | README 

IASAS Touch and Rugby 2018

JANUARY 2018

Shot with a Sony FS7. Shot on Friday/Saturday/Sunday, finished edit by Sunday night for closing ceremony showing.

IASAS Volleyball and Cross Country 2016

OCTOBER 2016

Shot with a Sony FS7. Shot on Friday/Saturday/Sunday, finished edit by Sunday night for closing ceremony showing.

IASAS Track and Field 2016

APRIL 2016

Shot with a Sony FS7. Shot on Friday/Saturday/Sunday, finished edit by Sunday night for closing ceremony showing.

2016 Taiwan HBL Championships

APRIL 2016

Shot in slow motion with a Sony FS700. Championship games (boys and girls) of the 2016 Taiwan High School Basketball League season at the Taipei Arena.

IASAS Badminton 2015 Highlights

APRIL 2015

Shot in slow motion with a Sony FS7 and 85mm / 35mm prime lens. Edit, speed ramping, and basic grading done in Premiere. More details here.

IASAS Badminton 2015 Highlights - Day 1

APRIL 2015

Shot in slow motion with a Sony FS7 and 85mm / 35mm prime lens. Edit, speed ramping, and basic grading done in Premiere. More details here.

iGEM Taipei In A Day

APRIL 2014

Promotional video for our iGEM team. Shot in a day across Taipei.

Say Thank You PSA

MARCH 2014

IASAS Soccer 2013

OCTOBER 2013

IASAS Swimming 2013

FEBRUARY 2013

TAS Taipei: E-Mortality iGEM

MARCH - JUNE 2014

The wiki for our iGEM team. iGEM is a synthetic biology competition, and as part of the competition each team must create a 'wiki' website to showcase and promote their project. Out of a pool of 54 teams, our team finished third overall in addition to winning the Best Wiki award.

IASAS Golf 2014

APRIL 2014

The website for a three-day golf tournament our school hosted. The scoring integrates with a Google Spreadsheet and a SQLite backend, which automatically ranks the players and creates the leaderboard.

Formosa Film Festival

APRIL 2014

A single-page responsive website promoting the Formosa Film Festival. FFF holds monthly film challenges in addition to the festival in April, and the website showcases prior winners and gives submission information.

IASAS CC Debate and Forensics 2014

MARCH 2014

The events page for a debate competition our school hosted in March. Like other events sites, the website shows the schedule, results, and photos/video from the competition. Hosted on Google App Engine.

IASAS Soccer 2013

OCTOBER 2013

The events page for a soccer tournament.

IASAS Softball 2013

APRIL 2013

The events page for a softball tournament.

ROV Control 2014

JUNE 2014
SCHEMATIC

The onboard control board for our underwater robot. ARM Teensy controller talks to motor drivers, sensors, cameras, and the onshore joystick. Communicates with RS485, I2C, and TTL serial. More details here.

8-Channel I2C Motor Driver

JUNE 2014
SCHEMATIC

An 8-channel motor driver that was designed for the ROV but can be used independently as a module. Communicates with I2C. Each channel has 5A capability and fault-reporting. More details here.

ROV Control 2013

JUNE 2013
SCHEMATIC

The onshore control board for the 2013 ROV. Interfaces with a PS2 joystick, 30A current sensor, an LCD, and a temp probe.

Remote Weather Logger

JULY 2012
SCHEMATIC

A remote battery-powered weather station that logs climate data. It is powered by a lithium battery that is recharged with a small solar cell. More details here.

LED Matrix Driver

MAY 2012
SCHEMATIC

This board was designed to drive a 32x24 LED matrix display. The controller multiplexes each row of the display through MBI5026 constant-current drivers. More details here.

Lassen GPS Breakout

NOVEMBER 2011

A simple breakout board for the Lassen iQ GPS module.

High Altitude Balloon

OCTOBER 2011

This board was designed for a high-altitude balloon project, but was never put into use.