Skip to content

Instantly share code, notes, and snippets.

View RFullum's full-sized avatar

Robert Fullum RFullum

View GitHub Profile
@RFullum
RFullum / MIDINoteToColorOctaveConverter.py
Last active August 19, 2023 12:31
MIDI Note to Color Octave Converter
'''
opens midi connection
takes midi notes from source (for example, your DAW)
finds the octaves of those notes beyond the range of human hearing until octave of note is within visible light range
converts frequency of the color octave to wavelength
approximates RGB value for color of note
displays color of note in window
'''
import rtmidi
@RFullum
RFullum / controllerInterface.pde
Last active July 6, 2020 19:06
Touchscreen XY Controller over Serial/Bluetooth: Processing Sketch (Raspberry Pi)
// Processing 3 sketch: Used on Raspberry Pi with 7" touchscreen.
// Touchscreen tracks XY position of finger and sends as serial data over
// bluetooth. That data is received by MaxMSP patch and used to control
// cutoff frequency and resonance of audio filters, real time.
import processing.serial.*;
Serial port;
int val = 0;
int valueScale = 128;
@RFullum
RFullum / UnityMicInputValues.cs
Created June 26, 2020 10:43
Unity Objects React to Microphone Input Values
/**
* Check your Microphone Permissions, especially on Mac.
* I had to delete Unity Hub, run the unity project, allow mic access when the warning pops up,
* and then reinstall Unity Hub or restore it from the trash after mic access is granted.
*/
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
@RFullum
RFullum / twoNumberGame.py
Created June 26, 2020 10:51
Two Random Number Guessing Game Simulation: Introducing a third random increases win percentage towards 66.6%
'''
Two Number Guessing Game:
-Player 1 picks two random numbers, A and B. In reality they can be any two real numbers.
In python we run into trouble with numbers larger than 2,147,483,647 due
to 32 bit arithmetic, so we'll bound the limits here.
-Player 2 can see one of the two numbers.
-Player 2 then has to decide which number is larger.
It seems like it would be a random chance. Regardless of what number A is,
there's an infinite amount of numbers greater than, and an infinte amount of
@RFullum
RFullum / coinFlipGame.py
Created June 26, 2020 10:53
Beating 50/50 odds in coin flip prediction vs opponent for a 3 flip series
'''
The Coin Flip Prediction Game:
The player picks a sequence of three coin flip outcomes.
The computer picks the sequence most likely to beat the player.
A coin is flipped until the sequence matches either the player
or the computer's sequence and the winner is declared.
The basic steps:
1- User picks 3 outcomes
2- Computer picks better outcomes
@RFullum
RFullum / Nano33IoT_Onboard_Sensors_To_JUCE.ino
Last active February 2, 2023 17:33
Arduino Nano 33 IoT sensor values over UDP
/**
* Sketch for Arduino Nano 33 IoT
*
* Connects to WiFi network and uses UDP to send
* onboard sensor data.
*
* Sensors: 3D Gyro and 3D accelerometer (6 values)
* Sensor values are Floats cast to a byte array.
* They must be recast to Float on the remote device
* receiving the UDP data.
@RFullum
RFullum / .bash* functions
Last active August 17, 2023 15:11
.bash_profile .bashrc custom functions
Just a collection of functions i add to my .bash_profile (mac) and .bashrc (linux) on almost every device i have.
# Simultaneously create and switch to new directory
function mkcd () { mkdir -p "$@" && cd "$@"; }
# Simultaneously change into directory and list files
function cdls () { cd "$@" && ls -ah "."; }
# Repleace spaces in filenames in a directory with an underscore
@RFullum
RFullum / movToMP4
Last active January 3, 2021 00:55
Bash script to convert all .mov to .mp4 in a directory using ffmpeg
#!/bin/bash
for i in *.mov; do ffmpeg -i "$i" -c:v libx264 -crf 23 -preset medium -movflags +faststart -vf scale=-1:1080,format=yuv420p -ac 2 "${i%.*}.mp4"; done
@RFullum
RFullum / mkvToMP4
Last active January 3, 2021 00:55
Bash script to convert all .mkv to .mp4 in a directory using ffmpeg
#!/bin/bash
for i in *.mkv; do ffmpeg -i "$i" -c:v libx264 -crf 23 -preset medium -movflags +faststart -vf scale=-1:1080,format=yuv420p -ac 2 "${i%.*}.mp4"; done
@RFullum
RFullum / .zshrc
Last active June 22, 2022 17:35
.zshrc
#Simultaneously create and switch to new directory
function mkcd () { mkdir -p "$@" && cd "$@"; }
#Repleace spaces in filenames in a directory with an underscore
function repspace () { find . -type f -name "* *" -exec bash -c 'mv "$0" "${0// /_}"' {} ";" ; }
#Prompt
PS1="%F{cyan}%n:%1~$%f "
autoload -Uz compinit && compinit