just updates
This commit is contained in:
84
json_parse.py
Normal file
84
json_parse.py
Normal file
@@ -0,0 +1,84 @@
|
||||
import re
|
||||
import subprocess
|
||||
import sys
|
||||
from pathlib import Path
|
||||
import os
|
||||
import xml.etree.ElementTree as ET
|
||||
|
||||
output_folder_name = "/out_sub_audio/"
|
||||
regex_subtitle = re.compile("Stream #0:\d+(\(\w*\))?: Subtitle:.*")
|
||||
regex_audio = re.compile("Stream #0:\d(\(\w*\))?: Audio:.*")
|
||||
nr_files = 0
|
||||
files_processed = []
|
||||
#droppedFile = sys.argv[1]
|
||||
#droppedName = Path(droppedFile).name
|
||||
#originalfiles = sys.orig_argv[2:]
|
||||
audio_list = []
|
||||
sub_list = []
|
||||
|
||||
|
||||
# To fix I need to create symlinks to files with long paths and use the links instead. And then remove said symlinks once
|
||||
|
||||
|
||||
#droppedFile= ['X:\\test\\longpathtest\\longerpathlongerpathlongerpathlongerpathlongerpathlongerpathlongerpath\\longpathlongpathlongpathlongpathlongpathlongpathlongpathlongpathlongpathlongpathlongpathlongpathlongpathlongpath\\fourteen\\[Kira-Fansub]_Choujuushin Gravion_Episode 06_(BD 1280x960 h264 JP AAC EN AAC) [E7D92968].mkv', '', ' X:\\test\\longpathtest\\longerpathlongerpathlongerpathlongerpathlongerpathlongerpathlongerpath\\longpathlongpathlongpathlongpathlongpathlongpathlongpathlongpathlongpathlongpathlongpathlongpathlongpathlongpath\\fourteen\\[Kira-Fansub]_Choujuushin Gravion_Episode 09_(BD 1280x960 h264 JP AAC EN AAC) [A2727604].mkv']
|
||||
originalfiles = ['E:\\Projects\\python\\ffmpeg_work_folder\\01 - The Great Tower of Druaga (Inner).mkv']
|
||||
|
||||
|
||||
|
||||
joined = (' '.join(originalfiles))
|
||||
re.sub (' +', ' ', joined)
|
||||
listed = re.split(r'(.+?mkv)', joined)
|
||||
listed = list(filter(None, listed))
|
||||
listed = [i.lstrip() for i in listed]
|
||||
|
||||
|
||||
|
||||
|
||||
#get path of script location and remove the tail
|
||||
head_tail = os.path.split(sys.argv[0])
|
||||
output_path = head_tail[0]
|
||||
|
||||
#check if output folder exists, otherwise create it
|
||||
isExist = os.path.exists(output_path+output_folder_name)
|
||||
if not isExist:
|
||||
os.makedirs(output_path+output_folder_name)
|
||||
|
||||
#droppedFile = "test.mkv"
|
||||
|
||||
|
||||
for i, file in enumerate(listed):
|
||||
arg_list = '.\\ffprobe.exe -i "{file}" -show_entries format:streams -of xml'.format(file=file)
|
||||
print(arg_list)
|
||||
|
||||
cmd = subprocess.Popen(["powershell.exe", arg_list], stdout=subprocess.PIPE, stderr=subprocess.PIPE, encoding='UTF-8')
|
||||
|
||||
subprocess_err = cmd.communicate()[0]
|
||||
|
||||
print("file", i+1,":", Path(file).name)
|
||||
|
||||
print(subprocess_err)
|
||||
|
||||
root = ET.fromstring(subprocess_err)
|
||||
|
||||
#print(root)
|
||||
streams = root[1].findall("stream")
|
||||
|
||||
print(streams)
|
||||
|
||||
for stream in streams:
|
||||
if stream.get("codec_type") == "audio":
|
||||
index = stream.get("index")
|
||||
print("index:", stream.get("index"))
|
||||
print("channels:",stream.get("channels"))
|
||||
print("printing index variable:" ,index )
|
||||
|
||||
for tag in stream.findall("tag"):
|
||||
if tag.get("key") == "title":
|
||||
print("name:", tag.get("value"))
|
||||
if tag.get("key") == "BPS":
|
||||
print("BPS:",tag.get("value"))
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user