Skip to content

Instantly share code, notes, and snippets.

@thediveo
thediveo / transcode-raw-screenrecording.sh
Created May 16, 2019 19:45
Correctly transcode in-device Android screen recordings (which were created by ffmpeg), so that they can be correctly edited and processed further during post. In particular, enforces a fixed framerate and the correct color coefficients.
#!/bin/bash
# Correctly transcode in-device screen recordings from Android, so they
# do not cause all kinds of mishaps later down the editing and rendering
# pipeline. In particular, enforces a fixed framerate to avoid problems
# with widely varying dynamic frame rates, which can go from anywhere
# a frame every 10s of seconds to 100fps or so. Additionally, we
# enforce the correct color coefficients for the transcoding to avoid
# video tools to guesstimate completely nonsense transformation -- ffmpeg,
# I'm looking at you here.
shopt -s extglob
@thediveo
thediveo / registry.sh
Created April 6, 2019 15:56
Operate a host-local Docker container registry for kubeadm-dind clusters.
#!/bin/bash
# TheDiveO
function log {
local OPTS=""
if [[ "$1" = "-n" ]]; then
shift; OPTS+="-n"
fi
MSG="$1"
shift
@thediveo
thediveo / tapclient.c
Last active March 22, 2019 07:38
TAP client supporting specifying TAP ifname and TAP client network namespace
/* modified from: https://github.com/a34729t/exp/blob/master/tunclient.c */
#define _GNU_SOURCE
#include <sched.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <net/if.h>
#include <linux/if_tun.h>
@thediveo
thediveo / extract-frames
Last active October 10, 2024 09:11
Scans for extracted frame image PNG files and (re)extracts the frame directly from their corresponding video media files, using source resolution and orientation instead of project resolution and orientation. Frame image PNG files are searched in the current working directory, as well as all its sub directories.
#!/bin/bash
#
# (Re-) Extract frame images directly from its corresponding video media
# file. The frame image filenames are expected to be in the format of
# videofilename-f000000.png, that is: the filename of the video media file,
# but without its extension, then followed by "-f" and a six digit frame
# number (base 10), and finally the ".png" suffix.
#
# Copyright 2018 TheDiveO
#