Skip to content

Instantly share code, notes, and snippets.

@meoow
meoow / ffgif.py
Created Apr 10, 2018
Python wrapper of ffmpeg for creating high quality GIF from video clip
View ffgif.py
#!/usr/bin/env python2.7
import subprocess as subp
import tempfile
import os,os.path
import sys
def ffgif(input, output, fps=None, start=None, end=None, resize=None,ffmpeg_args=[]):
pipeyuvArgList = ['ffmpeg', '-loglevel', 'error', '-ss', start, '-i', input]
@meoow
meoow / write-clip-down.applescript
Last active Oct 6, 2018
write text from the clipboard to text file inside path finder or finder's current directory
View write-clip-down.applescript
use AppleScript version "2.4" -- Yosemite (10.10) or later
use scripting additions
on writeclipdown(filepath)
try
set f to open for access file filepath with write permission
set eof of f to 0
set olddel to AppleScript's text item delimiters
set AppleScript's text item delimiters to {return & linefeed, return, linefeed, character id 8233, character id 8232}
set newText to text items of (get the clipboard)
@meoow
meoow / shExpMatch.js
Last active Jul 25, 2016
This is the shExpMatch function for autoconfig pac. Normally the host machine that supports pac should have shExpMatch function built-in, but a piece of software I use reads pac file with lack of implementing this function, I ended up implemented by myself.
View shExpMatch.js
function shExpMatch(url, pat) {
var pcharcode0;
var ucharcode0;
var pcharcode1;
if (pat.length === 0) {
if (url.length === 0) {
return true;
} else {
@meoow
meoow / g~f~w~list2pac.py
Last active Aug 1, 2016
After looking around for existed implementations for converting gfwlist to pac file, suprisingly few of them producing the results really statisfies me, so I eventually ended up writing an arguably better version for the task.
View g~f~w~list2pac.py
#!/usr/bin/env python2.7
# This script simply produces a working pac file,
# no fancy input arguments support yet.
# If someone is really interested in using this script,
# download the gfwlist.txt, decode it through base64, name it as "gfwlist_decoded.txt"
# and put it in the same direcotry with this script
# run the script in terminal.
import re
@meoow
meoow / block.txt
Last active Aug 29, 2015
Personal element hide
View block.txt
[Adblock Plus 2.0]
www.cnbeta.com##.wrapper.global_head > .tiny_bar > .cb_rss
www.safaribooksonline.com###js-subscribe-nag.subscribe-nag.clearfix.trial-panel.collapsed.slideUp
hi.baidu.com##.mod-page-body > .mod-page-main.wordwrap.clearfix > .x-page-container > .mod-blogpage-wraper > .grid-80.mod-blogpage > .mod-text-content.mod-post-content.mod-cs-contentblock > .mod-post-info.clearfix > .op-box.mod-cs-opBox > .pv
www.mtime.com###carter > embed
qun.qzone.qq.com##.td_upload_counts
www.talkshowcn.com###wideRight.col-md-4.column
||cnzz.com/stat.php
||cpro.baidustatic.com
@meoow
meoow / .bashrc
Last active Aug 29, 2015
Wrappers for CUT and SORT treat consecutive whitespaces as field separator
View .bashrc
cuttor() {
local cutopts files
declare -a cutopts
declare -a files
while [[ $# -gt 0 ]];do
case "$1" in
-f) shift; cutopts+=(-f "$1") ;;
-f?*) cutopts+=("$1") ;;
*) files+=("$1") ;;
esac
@meoow
meoow / blockit.sh
Created Oct 24, 2014
A simple way for blocking apps to connect to internet.
View blockit.sh
#!/bin/bash
# Usage:
# navigate the MacOS folder inside the app bundle you want to block
# usually where it is "SomeApp.app/Contents/MacOS"
# open terminal at current location
# run "blockit.sh executable"
# note the name "executable varies per apps"
# then this app is no longer be able to connect to internet.
if [[ -z "$1" ]];then
@meoow
meoow / ffaac.py
Created Oct 24, 2014
Convert all FFmpeg supported media file to high quality AAC file (need libfdk_aac encoder)
View ffaac.py
#!/usr/bin/env python2.7
from optparse import OptionParser
from subprocess import call
from os.path import splitext
import sys, os
def ffaac(filename, opts):
cmd = ['ffmpeg', '-hide_banner', '-y', '-i', filename,
'-c:a', 'libfdk_aac']
@meoow
meoow / ffposter.py
Created Oct 24, 2014
Take screenshot (poster) for video at specific seconds
View ffposter.py
#!/usr/bin/env python2
import sys
import os.path
import datetime
from subprocess import call
width = 1280
sec = str(datetime.timedelta(seconds=int(sys.argv[1])))
@meoow
meoow / ffmp3.py
Created Oct 24, 2014
A wrapper for FFmpeg to convert any support media file to high quality MP3 file.
View ffmp3.py
#!/usr/bin/env python2.7
from optparse import OptionParser
from subprocess import call,Popen, PIPE
from os.path import splitext
import sys, os, re
def mediainfo(filename):
bitratePtn = re.compile(r'^\s*Duration:.+, (bitrate: (\d+) kb/s).*$')