Enable filename filter and overwrite flag
This commit is contained in:
@@ -1,4 +1,6 @@
|
|||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
import re
|
||||||
|
from typing import Optional
|
||||||
|
|
||||||
class Config:
|
class Config:
|
||||||
QUEUE_FILE = "queue.json"
|
QUEUE_FILE = "queue.json"
|
||||||
@@ -6,3 +8,5 @@ class Config:
|
|||||||
BASE_PATH = Path("/path/to/videos")
|
BASE_PATH = Path("/path/to/videos")
|
||||||
DESTINATION_PATH = Path("/where/to/save/result")
|
DESTINATION_PATH = Path("/where/to/save/result")
|
||||||
LOW_BITRATE_THRESHOLD = 550
|
LOW_BITRATE_THRESHOLD = 550
|
||||||
|
FILENAME_REGEX: Optional[re.Pattern] = None
|
||||||
|
OVERWRITE: bool = True
|
||||||
|
|||||||
5
main.py
5
main.py
@@ -20,6 +20,9 @@ extensions = {
|
|||||||
jobs = []
|
jobs = []
|
||||||
for dir, dirs, files in os.walk(str(Config.BASE_PATH)):
|
for dir, dirs, files in os.walk(str(Config.BASE_PATH)):
|
||||||
for file in files:
|
for file in files:
|
||||||
|
if Config.FILENAME_REGEX:
|
||||||
|
if not Config.FILENAME_REGEX.match(file):
|
||||||
|
continue
|
||||||
parts = file.rsplit(".", 1)
|
parts = file.rsplit(".", 1)
|
||||||
if len(parts) == 2:
|
if len(parts) == 2:
|
||||||
extension = parts[1].lower()
|
extension = parts[1].lower()
|
||||||
@@ -28,6 +31,8 @@ for dir, dirs, files in os.walk(str(Config.BASE_PATH)):
|
|||||||
relative_path = current_path.relative_to(Config.BASE_PATH)
|
relative_path = current_path.relative_to(Config.BASE_PATH)
|
||||||
print(relative_path / file, end=" ")
|
print(relative_path / file, end=" ")
|
||||||
item = QueueItem(Path(dir) / file, Config.DESTINATION_PATH / relative_path)
|
item = QueueItem(Path(dir) / file, Config.DESTINATION_PATH / relative_path)
|
||||||
|
if not Config.OVERWRITE and item.task.destination.exists():
|
||||||
|
continue
|
||||||
info = item.task.mediainfo
|
info = item.task.mediainfo
|
||||||
if info.codec == 'HEVC':
|
if info.codec == 'HEVC':
|
||||||
print("")
|
print("")
|
||||||
|
|||||||
Reference in New Issue
Block a user