1 Commits

Author SHA1 Message Date
90a43e2491 codecVis: support DejaVu font on macOS 2023-02-24 16:18:13 +01:00

View File

@ -7,9 +7,11 @@
"""
import os
import platform
import sys
import time
import subprocess
import shlex
import shutil
import glob
import PIL
@ -49,12 +51,17 @@ def get_codec(filename):
return str(result.stdout.decode("utf-8")).rstrip("\n")
def extract_frame(video_file, time_offset, output_file):
cmd = ["ffmpeg", "-y", "-ss", time.strftime('%H:%M:%S', time.gmtime(time_offset)) + ".00",
"-i", str(video_file), "-frames:v", "1", str(output_file)]
cmd = "ffmpeg -y -ss " + time.strftime('%H:%M:%S', time.gmtime(time_offset)) + ".00 -i " + str(video_file) + " -frames:v 1 " + str(output_file)
devnull = open(os.devnull, 'w')
subprocess.call(cmd, stdout=devnull, stderr=devnull)
subprocess.call(shlex.split(cmd),stdout=devnull, stderr=devnull)
def get_font_path():
if platform.system() == "Darwin":
# Assume DejaVu to be installed in the user library
path = "~/Library/Fonts/DejaVuSans-Bold.ttf"
return os.path.expanduser(path)
# Default platform: Linux
path = "/usr/share/fonts"
files = glob.glob(path + "/**/DejaVuSans-Bold.ttf", recursive = True)
return files[0]