Skip to content

Instantly share code, notes, and snippets.

View statik's full-sized avatar
😎
happily working! I may be slow to respond

Elliot Murphy statik

😎
happily working! I may be slow to respond
View GitHub Profile
@statik
statik / README.md
Last active November 23, 2020 19:08
Setting up streamdeck to toggle between Speaker / Gallery View

Using streamdeck with Zoom

The streamdeck has a very useful plugin for controlling zoom meetings. This plugin has functionality like mute/unmute, mute all, and leave meeting.

I have been working on adding a button for switching between gallery view and speaker view, which is useful when presenting in a group setting. The code is here: https://github.com/smitmartijn/streamdeck-zoom-plugin/pull/9

As of November 17, 2020, my custom version of the zoom plugin for streamdeck is not working.

@statik
statik / 01. Download Locations for FFmpeg.md
Created October 15, 2020 23:46 — forked from AbsoluteDestiny/01. Download Locations for FFmpeg.md
Some FFMpeg commands I need to remember for converting footage for video editing. http://bit.ly/vidsnippets
@statik
statik / chapters.sh
Created October 7, 2020 20:43
split mp4 into individual files for each chapter
#!/usr/bin/env bash
set -euo pipefail
#set -x
fail () {
local error_message="$1"
local exit_code=$2
echo "$error_message" >&2
@statik
statik / ouch.cpp
Last active September 26, 2020 02:55
embedded osascript for zoom status
std::string osGetZoomStatus()
{
// ESDDebug("APPLESCRIPT_GET_STATUS: %s", APPLESCRIPT_GET_STATUS);
char *zoomStatus = execAndReturn(
"osascript -e 'set zoomStatus to \"closed\"\nset muteStatus to \"disabled\"\n"
"set viewStatus to \"speaker\"\n"
"set videoStatus to \"disabled\"\nset shareStatus to \"disabled\"\ntell application "
"\"System Events\"\nif exists (window 1 of process \"zoom.us\") then\nset zoomStatus "
"to \"open\"\ntell application process \"zoom.us\"\nif exists (menu bar item "
@statik
statik / getZoomStatus.py
Last active September 24, 2020 04:43
uiautomation.py dump of zoom.exe application controls.
# Credit for initial script: https://github.com/oldjohngalt
#
# Martijn Smit <[email protected] / @smitmartijn>
import os
import sys
import time
import argparse
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
import uiautomation as automation
@statik
statik / passwordpolicy-generated.yaml
Last active June 24, 2025 14:31
CDK managed AWS Account Password Policy
Resources:
AccountPasswordPolicyC318930E:
Type: Custom::AWS
Properties:
ServiceToken:
Fn::GetAtt:
- AWS679f53fac002430cb0da5b7982bd22872D164C4C
- Arn
Create:
service: IAM
import * as sns from '@aws-cdk/aws-sns';
import * as cdk from '@aws-cdk/core';
import { PolicyStatementBuilder } from '../lib/policy';
import { DeployableStack } from '../lib/deployable';
import { PhysicalStackProps } from '../lib/physical';
/** EmptyStack is supposed to contain nothing. It is used when we want to remove all of the constructs
* from a stack, because CloudFormation will not destroy a stack just because we removed it.
*
@statik
statik / README.md
Created July 21, 2020 19:43
setting up ssm access to ec2 instance

Make sure the user roles that need to access the instance have ssm:StartSession and ssm:TerminateSession permissions granted.

@statik
statik / convert-to-prores
Created April 7, 2020 19:06
convert video file to prores
#!/usr/bin/env bash
set -eo pipefail
USAGE='convert-to-prores inputfile [outputfile] [prores setting 1 to 5, default 3]'
DESCRIPTION='
Converts a video file to ProRes for playback on HyperDeck or NLE
The outputfile is optional, if not provided it will be based on the input file name
The profile switch takes an integer from -1 to 5 to match the ProRes profiles
@statik
statik / notion2blog.js
Created February 10, 2020 20:33 — forked from SafEight/notion2blog.js
Notion.so > Personal Blog | custom domain + disqus comment
const MY_DOMAIN = "example.com"
const START_PAGE = "https://www.notion.so/example"
addEventListener('fetch', event => {
event.respondWith(fetchAndApply(event.request))
})
const corsHeaders = {
"Access-Control-Allow-Origin": "*",
"Access-Control-Allow-Methods": "GET, HEAD, POST,PUT, OPTIONS",