Skip to content

Instantly share code, notes, and snippets.

#!/bin/env python
# reorder_args.py for Python 2.x
# written by Chikuzen
import sys
import os
def usage():
print "usage : reorder_args.py <func name> <num of args> <new order> <filename>\n"
@chikuzen
chikuzen / finesharp.py
Last active October 13, 2015 00:37
vapoursynth sample
#finesharp.py - finesharp module for VapourSynth
#original author : Didee (http://forum.doom9.org/showthread.php?t=166082)
# requirement: RemoveGrain.dll, Repair.dll
import vapoursynth as vs
class InvalidArgument(Exception):
def __init__(self, value):
self.value = value
@chikuzen
chikuzen / histeresis.cpp
Last active December 20, 2015 15:28
Hysteresis mask for avisynth2.6
#include <windows.h>
#include "avisynth.h"
static const AVS_Linkage* AVS_linkage = 0;
class Footprint {
int index;
int width;
int height;
BYTE* map;
@chikuzen
chikuzen / transpose.cpp
Last active December 21, 2015 16:09
Transpose for avisynth2.6x
#include <stdint.h>
#include <malloc.h>
#include <windows.h>
#include <emmintrin.h>
#include "avisynth.h"
static const AVS_Linkage* AVS_linkage = 0;
static __forceinline __m128i mm_movehl_si128(const __m128i& xmm0)
{
#define LOGO "RemoveGrain 1.0\n"
// An Avisynth plugin for removing grain from progressive video
//
// By Rainer Wittmann <gorw@gmx.de>
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
@chikuzen
chikuzen / vsenc.py
Last active March 27, 2016 21:06
vapoursynth sample
#vsenc.py
#coding: utf-8
import sys
from subprocess import Popen, PIPE
import vapoursynth as vs
x264_binary_path = 'D:/tools/x86/x264.exe'
avconv_binary_path = 'D:/tools/x86/avconv.exe'
@chikuzen
chikuzen / transpose_8x8_ps_avx.cpp
Last active July 31, 2016 08:11
why there is no_MM_TRANSPOSE_8_PS macro ?
#include <immintrin.h>
void transpose_8x8_avx(const float* srcp, float* dstp) noexcept
{
__m256 a = _mm256_load_ps(srcp + 0); // a0 a1 a2 a3 a4 a5 a6 a7
__m256 b = _mm256_load_ps(srcp + 8); // b0 b1 b2 b3 b4 b5 b6 b7
__m256 c = _mm256_load_ps(srcp + 16); // c0 c1 c2 c3 c4 c5 c6 c7
__m256 d = _mm256_load_ps(srcp + 24); // d0 d1 d2 d3 d4 d5 d6 d7
__m256 e = _mm256_load_ps(srcp + 32); // e0 e1 e2 e3 e4 e5 e6 e7
__m256 f = _mm256_load_ps(srcp + 40); // f0 f1 f2 f3 f4 f5 f6 f7
#include <algorithm>
#include <tmmintrin.h>
#define WIN32_LEAN_AND_MEAN
#define NOMINMAX
#include <windows.h>
#include <avisynth.h>
typedef IScriptEnvironment ise_t;
#include <cstdint>
#include <algorithm>
#include <iostream>
#include <tmmintrin.h>
// pattern0: (R + G + B) / 3
// pattern1: max(R, G, B)
// pattern2: (R + 2*G + B) / 4
// pattern3: R*0.299 + G*0.587 + B*0.114
@chikuzen
chikuzen / my_build.sh
Created September 2, 2011 13:09
How to compile libav/x264cli on windows
#!/bin/bash
# CAUTION!!! THIS SCRIPT IS NO WARRANTY!!!
: << _COMMENT_
How to compile libav/x264 binaries for both 32bit and 64bit on Windows
At first, you should install Git into your Windows.
1. Download Git from
http://msysgit.googlecode.com/files/Git-1.7.6-preview20110708.exe