Mercurial > mplayer.hg
annotate TOOLS/vobshift.py @ 33884:514016233368
build: drop BeOS support
BeOS is dead and support has been dropped from FFmpeg/Libav a long time ago.
The support code that was added years ago adds considerable clutter while
not providing any benefit, so it's better to drop it outright.
Support for Haiku, the FOSS replacement of BeOS remains unaffected.
author | diego |
---|---|
date | Thu, 11 Aug 2011 17:45:43 +0000 |
parents | 0f1b5b68af32 |
children |
rev | line source |
---|---|
15829
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
1 #!/usr/bin/env python |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
2 |
29263
0f1b5b68af32
whitespace cosmetics: Remove all trailing whitespace.
diego
parents:
15829
diff
changeset
|
3 #usage: |
15829
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
4 # |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
5 # vobshift.py in.idx out.idx -8.45 |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
6 # |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
7 # this will read in in.idx,shift it by 8.45 seconds back, |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
8 # and save it as out.idx |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
9 # |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
10 # license: i don't care ;) |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
11 # |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
12 |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
13 import datetime |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
14 import sys |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
15 |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
16 def tripletize(line): |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
17 begin = line[:11] |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
18 middle = line[11:23] |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
19 end = line[23:] |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
20 return (begin,middle,end) |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
21 |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
22 def text2delta(t): |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
23 h = int( t[0:2] ) |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
24 m = int( t[3:5] ) |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
25 s = int( t[6:8] ) |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
26 milli = int( t[9:12] ) |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
27 return datetime.timedelta(hours=h,minutes=m,seconds=s,milliseconds=milli) |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
28 |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
29 def delta2text(d): |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
30 t = str(d) |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
31 milli = t[8:11] |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
32 if len(milli) == 0: #fix for .000 seconds |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
33 milli = '000' |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
34 return '0'+t[:7]+':'+milli |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
35 |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
36 def shift(line,seconds): |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
37 triplet = tripletize(line) |
29263
0f1b5b68af32
whitespace cosmetics: Remove all trailing whitespace.
diego
parents:
15829
diff
changeset
|
38 |
15829
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
39 base = text2delta(triplet[1]) |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
40 base = base + datetime.timedelta(seconds=seconds) |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
41 base = delta2text(base) |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
42 |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
43 return triplet[0]+base+triplet[2] |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
44 |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
45 INFILE =sys.argv[1] |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
46 OUTFILE =sys.argv[2] |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
47 DIFF =float(sys.argv[3]) |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
48 |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
49 o = open(OUTFILE,'wt') |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
50 |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
51 |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
52 for line in open(INFILE): |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
53 if line.startswith('timestamp'): |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
54 line = shift(line,DIFF) |
29263
0f1b5b68af32
whitespace cosmetics: Remove all trailing whitespace.
diego
parents:
15829
diff
changeset
|
55 |
15829
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
56 o.write(line) |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
57 |
96b84e3a0d96
vobsub time-adjust tool by Gbor Farkas < gabor AH nekomancer POUM net >
gpoirier
parents:
diff
changeset
|
58 o.close() |