Skip to content

Instantly share code, notes, and snippets.

View jazzyjackson's full-sized avatar

Colten Jackson jazzyjackson

View GitHub Profile
@jazzyjackson
jazzyjackson / split-to-scenes.sh
Created January 20, 2025 19:22 — forked from nielsbom/split-to-scenes.sh
Detect and split video to scenes with ffmpeg
#!/bin/bash
# set -Eeuo pipefail
# Splits video to separate scenes files
# Source: https://gist.github.com/achesco/4dc2ebf13378a0a61fc26c7fe01f539e
# Inspired by https://stackoverflow.com/a/38205105
# The "-c:v h264_videotoolbox \" argument makes it work faster on Apple Silicon
# computers.
# ❗The bitrate argument is overriden in this version, we look at the original bitrate.
@jazzyjackson
jazzyjackson / cmds.sh
Created December 28, 2024 18:39
home video workflow
# ensure mac is updated to 15.2
# install xcode from app store
xcode-select --install
sudo xcodebuild -license
sudo xcodebuild -runFirstLaunch
# clean up install on sequoia so macports can find clang
sudo rm -rf /Library/Developer/CommandLineTools/usr/include/c++
# install macports from .pkg file available at the 'Sequoia' Link
# https://www.macports.org/install.php
#!/bin/bash
# concatenate videos given start and end filenames
# https://trac.ffmpeg.org/wiki/Concatenate
# expect naming convention from achesco's split-to-scenes.sh:
# https://gist.github.com/achesco/4dc2ebf13378a0a61fc26c7fe01f539e
# leading 4 digits from $1 and $2
begin=${1:0:4}
end=${2:0:4}
@jazzyjackson
jazzyjackson / nunchuck.py
Created October 25, 2023 20:44
Modified Nunchuk Class
import machine
import time
import utime
class Nunchuk(object):
"""The Nunchuk object presents the sensor readings in a polling way.
Based on the fact that the controller does communicate using I2C we
cannot make it push sensor changes by using interrupts or similar
facilities. Instead a polling mechanism is implemented, which updates
the sensor readings based on "intent-driven" regular updates.
@jazzyjackson
jazzyjackson / server.py
Last active June 15, 2023 22:41
python MITM for holochaining
import asyncio
import websockets
from http.server import HTTPServer, SimpleHTTPRequestHandler
from socketserver import ThreadingMixIn
myip = b'127.0.0.1'
def replace_localhost(data):
return data.replace(b'localhost', myip)
@jazzyjackson
jazzyjackson / main.js
Created April 24, 2023 05:51
scrape chatorg.ai
// MAIN FUNCTION
// This function will scrape all the conversations from the chatorg website
// It will return an array of arrays, the outer array is of all conversation
// the inner array is a list of message pairs
// grab all anchors
// advance to the next anchor
// pull the current chat history
import asyncio
from fastapi import FastAPI, WebSocket
from fastapi.responses import FileResponse
from fastapi.staticfiles import StaticFiles
import os
import websockets
app = FastAPI()
# Mount the static files in the storage/node_modules/gun directory under the /gun path
input
.split('\n')
.map((e, i, a) => i && a[i] - a[i - 1])
.filter(n => n > 0)
.length
// 1527
// create a new array, then scan the input, adding each element to its coresponding index and the next two indexes as well
// is the number of additions any different than looking ahead and behind for each of them?
// for 1st strategy, for each element, I read 3 and write once.
Windows Registry Editor Version 5.00
; credit to https://superuser.com/questions/949385/map-capslock-to-control-in-windows-10
; The hex data is in five groups of four bytes:
; 00,00,00,00,\ header version (always 00000000)
; 00,00,00,00,\ header flags (always 00000000)
; 04,00,00,00,\ # of entries (3 in this case) plus a NULL terminator line.
; Entries are in 2-byte pairs: Key code to send & keyboard key to send it.
; Each entry is in "least significant byte, most significant byte" order,
; e.g. 0x1234 becomes `34,12`
; 1d,00,3a,00,\ Send LEFT CTRL (0x001d) code when user presses the CAPS LOCK key (0x003a)
function printOurSailor(allPublicKeys, candidatesSeed){
for(var candidateSeed of candidatesSeed){
let keychain = this.CryptoService.mnemonicToKeychain(candidateSeed)
let seedHex = this.CryptoService.keychainToSeedHex(keychain)
let privateKey = this.CryptoService.seedHexToPrivateKey(seedHex)
let publicKey = this.CryptoService.privateKeyToBitcloutPublicKey(privateKey, "mainnet")
if(allPublicKeys.has(publicKey)){
console.log("Our sailor is" + publicKey + " mnemonic: " + candidateSeed)
}
}