Skip to content

Instantly share code, notes, and snippets.

@youzaka
youzaka / filter_scrambling.py
Last active December 11, 2015 00:28
transport_scrambling_controlが0でないパケットが残ってるせいでVLCで再生できないファイルを簡易に何とかするスクリプト
from ariblib import tsopen
from ariblib.packet import transport_scrambling_control
import sys
output = open(sys.argv[2], 'wb')
with tsopen(sys.argv[1]) as ts:
for packet in ts:
if transport_scrambling_control(packet):
output = open(sys.argv[2], 'wb')
else:
@youzaka
youzaka / gist:3683870
Created September 9, 2012 11:20
前番組のSD部分をカット
#!/usr/bin/env python3.1
import sys
from itertools import dropwhile
from ariblib import TransportStreamFile
from ariblib.packet import pid
output = open(sys.argv[2], 'wb')
with TransportStreamFile(sys.argv[1]) as ts:
# SDを捨ててHDを残す場合。逆に前番組のHDを捨ててSDを残す場合は4 (ARIB-STD-B10 第2部第6章 表6-60)
@youzaka
youzaka / declarative.py
Created May 17, 2012 03:50
declarative ts parser
#!/usr/bin/env python3
from collections import defaultdict
from io import BufferedReader, FileIO
from types import FunctionType
class SyntaxTable(dict):
def __init__(self):
self.history = []
self.keys = []
@youzaka
youzaka / captiondumper.py
Created December 31, 2011 15:12
字幕ダンプ
#!/usr/bin/env python
import hashlib
from collections import defaultdict
from io import BufferedReader, FileIO
from aribgaiji import GAIJI_MAP
"""
TSファイルから字幕を取り出すスクリプト。
@youzaka
youzaka / gist:1281577
Created October 12, 2011 15:46
保存したtsファイルでなく、recpt1から直接Transport Streamをいじる
#/usr/bin/env python
# coding: utf-8
from subprocess import Popen, PIPE
import array
import itertools
import shlex
def stream(ch):
a = Popen(shlex.split("recpt1 {:d} - -".format(ch)), stdout=PIPE)
@youzaka
youzaka / gist:985485
Created May 22, 2011 13:54
TSファイルから記述子を取得
#!/usr/bin/env python2.6
# -*- coding: utf-8 -*-
from array import array
from collections import defaultdict
from datetime import datetime, time
from StringIO import StringIO
import sys
@youzaka
youzaka / gist:917818
Created April 13, 2011 15:57
mecab-ipadicから捨て仮名だけで構成されている語彙を抽出
#!/usr/bin/env python2.6
# -*- coding: utf-8 -*-
import codecs
import csv
import os
import re
import sys
directory = sys.argv[1]