first
This commit is contained in:
137
bulk_threading_test_by_file_refresh_metadata.py
Normal file
137
bulk_threading_test_by_file_refresh_metadata.py
Normal file
@@ -0,0 +1,137 @@
|
||||
import subprocess
|
||||
import sys
|
||||
from pathlib import Path
|
||||
import os
|
||||
from time import sleep
|
||||
from threading import Thread
|
||||
import threading
|
||||
import re
|
||||
import xml.etree.ElementTree as ET
|
||||
|
||||
file="metadata_refresh.txt"
|
||||
|
||||
max_threads=int(input("max threads: "))
|
||||
print(type(max_threads))
|
||||
i=0
|
||||
output_folder_name ="/bulk_convert_out/mvkmergedupdated/"
|
||||
|
||||
target_bps_per_channel=96000
|
||||
|
||||
#audio_stringmap = ""
|
||||
|
||||
|
||||
|
||||
#droppedFile= ['E:\Shadowplay\Returnal"]
|
||||
#get path of script location and remove the tail
|
||||
|
||||
|
||||
#get path of script location and remove the tail
|
||||
head_tail = os.path.split(sys.argv[0])
|
||||
output_path = head_tail[0]
|
||||
|
||||
#skip first part of sys.argv since it points to script location
|
||||
#arguments = sys.argv[1:]
|
||||
#arguments = droppedFile
|
||||
|
||||
#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)
|
||||
|
||||
def read_file(path=""):
|
||||
with open(file,'r+') as f:
|
||||
path = f.readlines(1)
|
||||
all = f.readlines()
|
||||
f.seek(0)
|
||||
f.truncate()
|
||||
f.writelines(all)
|
||||
return path
|
||||
|
||||
|
||||
class CustomThread(Thread):
|
||||
# constructor
|
||||
def __init__(self, input_file=""):
|
||||
|
||||
# execute the base constructor
|
||||
Thread.__init__(self)
|
||||
# set a default value
|
||||
self.input_file = input_file
|
||||
|
||||
|
||||
def run(self):
|
||||
|
||||
#sleep(1)
|
||||
global i
|
||||
file = str(input_file[0])
|
||||
file = file.rstrip("\n")
|
||||
|
||||
|
||||
pathlibname = Path(file)
|
||||
show_folder_name = pathlibname.parent.parent.name
|
||||
season_folder_name = "/" + pathlibname.parent.name
|
||||
isExist = os.path.exists(output_path+output_folder_name+show_folder_name)
|
||||
if not isExist:
|
||||
os.makedirs(output_path+output_folder_name+show_folder_name)
|
||||
sleep(1)
|
||||
isExist = os.path.exists(output_path+output_folder_name+show_folder_name+season_folder_name)
|
||||
if not isExist:
|
||||
os.makedirs(output_path+output_folder_name+show_folder_name+season_folder_name)
|
||||
sleep(1)
|
||||
|
||||
sleep(1)
|
||||
|
||||
|
||||
#os.rename(file, file+"i")
|
||||
mkvmerge_input = file
|
||||
basename = os.path.basename(file)
|
||||
|
||||
mkv_args = 'mkvmerge.exe --output "{output_path}{output_folder_name}/{show_folder_name}/{season_folder_name}/{basename}" "{mkvmerge_input}"'.format(basename=basename, file=file, output_path=output_path,season_folder_name=season_folder_name,show_folder_name=show_folder_name, output_folder_name=output_folder_name, mkvmerge_input=mkvmerge_input)
|
||||
|
||||
mkv_run = subprocess.Popen(mkv_args)
|
||||
#wait = mkv_run.wait()
|
||||
data = mkv_run.wait()
|
||||
print("before remove file")
|
||||
#os.remove(file+"i")
|
||||
basename = os.path.basename(file)
|
||||
print(file)
|
||||
sleep(1)
|
||||
|
||||
if data == 0:
|
||||
i=i-1
|
||||
|
||||
|
||||
|
||||
filesize = os.path.getsize(file)
|
||||
while filesize != 0:
|
||||
if i < max_threads:
|
||||
global self
|
||||
filesize = os.path.getsize(file)
|
||||
if filesize != 0:
|
||||
input_file = read_file()
|
||||
print(input_file)
|
||||
t1 = CustomThread(input_file)
|
||||
t1.start()
|
||||
if filesize == 0:
|
||||
while bool(threading.active_count() > 1):
|
||||
print("Finished","out of", )
|
||||
sleep(1)
|
||||
filesize = os.path.getsize(file)
|
||||
if filesize != 0:
|
||||
print("breaking while")
|
||||
break
|
||||
filesize = os.path.getsize(file)
|
||||
if filesize != 0:
|
||||
print("breaking if")
|
||||
continue
|
||||
t1.join()
|
||||
print("Completed","out of", "inputs Successfully")
|
||||
input("waiting")
|
||||
exit()
|
||||
|
||||
print("incrementing i in loop")
|
||||
i=i+1
|
||||
|
||||
else:
|
||||
print("Finished ","out of ")
|
||||
sleep(1)
|
||||
print("continuing ")
|
||||
Reference in New Issue
Block a user