Skip to content

Instantly share code, notes, and snippets.

View kageru's full-sized avatar

kageru

View GitHub Profile
"""
This project was moved to https://github.com/kageru/Irrational-Encoding-Wizardry.
Don't expect this gist to be updated regularly.
"""
import vapoursynth as vs
import mvsfunc as mvf
import fvsfunc as fvf
from functools import partial
@kageru
kageru / README.md
Last active March 31, 2022 12:03
Standalone script using Vapoursynth to determine the original resolution of scaled images or videos.

This version is deprecated

I’ve stopped updating this a while ago because some people made a proper respository with a few necessary fixes and changes. Just get this version from now on: https://github.com/Infiziert90/getnative

@kageru
kageru / snap_scenechanges.py
Last active January 28, 2017 14:16 — forked from FichteFoll/snap_scenechanges.py
Snap start and end times of ASS subtitles to scene changes using WWXD
#!/usr/bin/env python3.6
"""Snap start and end times of ASS subtitles to scene changes using WWXD.
Does not work with variable frame rate (VFR).
usage: snap_scenechanges.py [-h] [--epsilon EPSILON] [-o OUTPUT] [-v]
sub_path video_path
@kageru
kageru / day19.nim
Created December 20, 2017 02:22
Day 19 of the Advent of Code in nim (both parts)
import sequtils
import future
import nre except toSeq
type
Direction = enum
up = 0, left = 1, down = 2, right = 3
Grid = seq[seq[char]]
@kageru
kageru / day8.nim
Created December 20, 2017 02:25
Day 8 of the Advent of Code in nim (only the first part)
import tables
import nre
import strutils
let pattern = re"(?<target>\w+)\s(?<opcode>(inc|dec))\s(?<value>-?\d+)\sif\s(?<comptarget>\w+)\s(?<compop>(<|>|==|!=|<=|>=))\s(?<comp2>-?\d+)"
var registers = initTable[string, int]();
@kageru
kageru / day20.nim
Created December 21, 2017 00:50
Advent of Code Day 20 in nim (only the first part)
import strutils
import future
import nre
# 3-dimensional vector type with attributes for x, y, and z
# Mainly used for readability
type Vector = object
x, y, z: int
@kageru
kageru / pydie.py
Last active January 17, 2018 20:36
digital die, just paste in into the python/ipython shell
from random import randint
from functools import partial
def d(m, n=1):
s = 0
print(f'{n}d{m}')
for _ in range(n):
r = randint(1, m)
s += r
print(r)
@kageru
kageru / mkvmerge-audiocut.py
Created January 28, 2018 12:12
just converts framenumbers to split parts for now
#!/usr/bin/env python3
"""
Just very basic for now. It only prints an mkvmerge command.
TODOs:
- properly get input file (or get it at all, lul)
- do the splitting for the user
- actually parse vs scripts
- get delay from source file (and --sync the output)
- add pluses automatically so you only get one file
@kageru
kageru / mv3u
Last active February 15, 2018 17:41
A simple script to move/rename a file/folder and change m3u playlist entries accordingly. Portmanteau of mv and m3u
#!/bin/bash
# Move/rename a file/folder and change all m3u playlists in $playlists accordingly
# Usage:
# $ mv3u old_filename "new filename"
# change this
playlists='/path/to/your/playlists'
src="$1"
#!/bin/bash
#
# Original: https://github.com/Nyr/openvpn-install
#
# Copyright (c) 2013 Nyr. Released under the MIT License.
# Minor changes by kageru to make the script run on Arch.
if [[ "$EUID" -ne 0 ]]; then
echo "Sorry, you need to run this as root"
exit