annotate sfv.py @ 133:0d8eabdd12ab default tip

create: write H:MM:SS timestamps, add option to fill with gaussian-blur instead of black many albums are longer than one hour so writing H:MM:SS is a necessity. if anything there will just be verbose info that isn't important for my use-case. however the gaussian-blur is simply broken. It works, and it plays locally just fine, but YouTube in particular elongates the video to fit the full width. I'm not entirely sure why it does this, but it makes it useless and ugly.
author Paper <paper@tflc.us>
date Sat, 03 Jan 2026 20:25:38 -0500
parents 2aa9614cb39a
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
40
Paper <mrpapersonic@gmail.com>
parents: 33
diff changeset
1 import sys
Paper <mrpapersonic@gmail.com>
parents: 33
diff changeset
2 import zlib
Paper <mrpapersonic@gmail.com>
parents: 33
diff changeset
3
33
349c9636d8ca Create sfv.py
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
4
40
Paper <mrpapersonic@gmail.com>
parents: 33
diff changeset
5 def crc(filename): return "%X" % (zlib.crc32(
Paper <mrpapersonic@gmail.com>
parents: 33
diff changeset
6 open(filename, "rb").read()) & 0xFFFFFFFF)
Paper <mrpapersonic@gmail.com>
parents: 33
diff changeset
7
33
349c9636d8ca Create sfv.py
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
8
349c9636d8ca Create sfv.py
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
9 try:
349c9636d8ca Create sfv.py
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
10 temp = sys.argv[1]
40
Paper <mrpapersonic@gmail.com>
parents: 33
diff changeset
11 except Exception:
33
349c9636d8ca Create sfv.py
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
12 print("No file specified!")
349c9636d8ca Create sfv.py
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
13 sys.exit()
349c9636d8ca Create sfv.py
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
14
349c9636d8ca Create sfv.py
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
15 f = open(sys.argv[1])
349c9636d8ca Create sfv.py
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
16 lines = f.readlines()
349c9636d8ca Create sfv.py
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
17 f.close()
349c9636d8ca Create sfv.py
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
18
349c9636d8ca Create sfv.py
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
19 for line in lines:
349c9636d8ca Create sfv.py
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
20 if not line[0] == ";":
349c9636d8ca Create sfv.py
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
21 crc32 = line.strip()[-8:]
349c9636d8ca Create sfv.py
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
22 name = line.strip()[:-8]
349c9636d8ca Create sfv.py
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
23 if crc(name).zfill(8) == crc32:
349c9636d8ca Create sfv.py
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
24 print(f"{name}: CRC hash match!")
349c9636d8ca Create sfv.py
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
25 else:
349c9636d8ca Create sfv.py
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
26 print(f"{name}: CRC hash does not match!")