Skip to content

Instantly share code, notes, and snippets.

👹
rer

Aarni Koskela akx

👹
rer
View GitHub Profile
View gist:7511db747076a88e1a641a053d2ba98e
meikämaa
meikämaagi
meikämaagikko
meikämaahanhyökkäys
meikämaahanlasku
meikämaahanlyönti
meikämaahanmeno
meikämaahanmuuttaja
meikämaahanmuutto
meikämaahanpaniainen
View gist:0a9dfdd68db5a649c6344540fe344c05
meikämaa
meikämaagi
meikämaagikko
meikämaahanhyökkäys
meikämaahanlasku
meikämaahanlyönti
meikämaahanmeno
meikämaahanmuuttaja
meikämaahanmuutto
meikämaahanpaniainen
View gist:3e98d8a9653341be2388de88d7546940
Meikämaa
Meikämaagi
Meikämaagikko
Meikämaahinen
Meikämaalainen
Meikämaalari
Meikämaali
Meikämaallikko
Meikämaanantai
Meikämaanikko
View ORJSONRenderer.py
import orjson
from rest_framework.utils import encoders
from rest_framework import renderers
json_default_encode = encoders.JSONEncoder().default
class ORJSONRenderer(renderers.JSONRenderer):
def render(self, data, accepted_media_type=None, renderer_context=None):
if data is None:
@akx
akx / gist:f10d4d7ac15372105b05d375a381ae88
Last active May 10, 2020
Rename MP4 files based on embedded creation time tag
View gist:f10d4d7ac15372105b05d375a381ae88
import os
import datetime
import glob
import subprocess
import json
def get_creation_time(f):
rinfo = subprocess.check_output('ffprobe -print_format json -hide_banner -show_format -i "%s"' % f, shell=True, stderr=subprocess.DEVNULL)
info = json.loads(rinfo.decode())
ctime = info['format']['tags']['creation_time']
@akx
akx / Instructions.md
Last active Mar 6, 2020
Super simple flask thing
View Instructions.md

Developing/debugging a Flask app

  • Set up a virtualenv
  • pip install flask
  • add calc_server.py
  • debug/run with python calc_server.py (autoreloading, debugging, etc.)
  • Access e.g. http://localhost:9999/calculate/9652/343

Running in production in an EC2 box

View screen-recrop-ffmpeg.sh
ffmpeg \
-video_size 1200x400 \
-framerate 30 \
-f x11grab \
-i :0.0+0,0 \
-pix_fmt yuv420p \
-filter_complex "
color=size=800x800:c=black [base];
[0:v] setpts=PTS-STARTPTS, crop=w=800:h=400:x=0:y=0 [row1];
[0:v] setpts=PTS-STARTPTS, crop=w=400:h=400:x=800:y=0 [row2];
View clocktest.c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
static long long ts_usecs(struct timespec t) {
return (t.tv_sec * 1000000000 + t.tv_nsec);
}
int main() {
struct timespec t0, t1;
View connect-context.tsx
// h/t @japsu for the idea. had to type it.
import React from "react";
function connect<C, P>(
ContextClass: React.Context<C>,
propName: keyof P,
): ((
component: React.FunctionComponent<P> | React.ComponentClass<P>,
) => React.FunctionComponent<P>) {
@akx
akx / c2j.py
Created Jan 14, 2019
c2j -- dsl for generating json
View c2j.py
#!/usr/bin/env python3
import json
import sys
class c2j:
def __init__(self):
self.stack = []
self.root = None
You can’t perform that action at this time.