More code re-organizing

This commit is contained in:
Brett Williams
2023-10-21 22:45:30 -05:00
parent 7a52cce40a
commit 9027cd7202
26 changed files with 33 additions and 48 deletions

View File

@@ -24,12 +24,12 @@ from werkzeug.utils import secure_filename
from src.distributed_job_manager import DistributedJobManager from src.distributed_job_manager import DistributedJobManager
from src.engines.engine_manager import EngineManager from src.engines.engine_manager import EngineManager
from src.render_queue import RenderQueue, JobNotFoundError from src.render_queue import RenderQueue, JobNotFoundError
from src.server_proxy import RenderServerProxy from src.api.server_proxy import RenderServerProxy
from src.utilities.server_helper import generate_thumbnail_for_job from src.utilities.server_helper import generate_thumbnail_for_job
from src.utilities.zeroconf_server import ZeroconfServer from src.utilities.zeroconf_server import ZeroconfServer
from src.utilities.misc_helper import system_safe_path from src.utilities.misc_helper import system_safe_path
from src.workers.worker_factory import RenderWorkerFactory from src.engines.core.worker_factory import RenderWorkerFactory
from src.workers.base_worker import string_to_status, RenderStatus from src.engines.core.base_worker import string_to_status, RenderStatus
logger = logging.getLogger() logger = logging.getLogger()
server = Flask(__name__, template_folder='web/templates', static_folder='web/static') server = Flask(__name__, template_folder='web/templates', static_folder='web/static')

View File

@@ -7,7 +7,7 @@ import zipfile
from pubsub import pub from pubsub import pub
from src.render_queue import RenderQueue from src.render_queue import RenderQueue
from src.server_proxy import RenderServerProxy from src.api.server_proxy import RenderServerProxy
from src.utilities.misc_helper import get_file_size_human from src.utilities.misc_helper import get_file_size_human
from src.utilities.status_utils import RenderStatus, string_to_status from src.utilities.status_utils import RenderStatus, string_to_status
from src.utilities.zeroconf_server import ZeroconfServer from src.utilities.zeroconf_server import ZeroconfServer

View File

@@ -1,7 +1,4 @@
try: from src.engines.core.base_engine import BaseRenderEngine
from .base_engine import *
except ImportError:
from base_engine import *
class AERender(BaseRenderEngine): class AERender(BaseRenderEngine):

View File

@@ -6,8 +6,8 @@ import os
import re import re
import time import time
from src.workers.base_worker import BaseRenderWorker, timecode_to_frames from src.engines.core.base_worker import BaseRenderWorker, timecode_to_frames
from src.engines.aerender_engine import AERender from src.engines.aerender.aerender_engine import AERender
def aerender_path(): def aerender_path():

View File

@@ -1,11 +1,10 @@
import logging import logging
import os
import platform import platform
import re import re
import requests import requests
from .downloader_core import download_and_extract_app from ..core.downloader_core import download_and_extract_app
# url = "https://download.blender.org/release/" # url = "https://download.blender.org/release/"
url = "https://ftp.nluug.nl/pub/graphics/blender/release/" # much faster mirror for testing url = "https://ftp.nluug.nl/pub/graphics/blender/release/" # much faster mirror for testing

View File

@@ -1,10 +1,8 @@
try:
from .base_engine import *
except ImportError:
from base_engine import *
import json import json
import re import re
import logging
from src.engines.core.base_engine import *
from src.utilities.misc_helper import system_safe_path
logger = logging.getLogger() logger = logging.getLogger()
@@ -58,8 +56,7 @@ class Blender(BaseRenderEngine):
def get_scene_info(self, project_path, timeout=10): def get_scene_info(self, project_path, timeout=10):
scene_info = {} scene_info = {}
try: try:
script_path = os.path.join(os.path.dirname(os.path.realpath(__file__)), script_path = os.path.join(os.path.dirname(os.path.realpath(__file__)), 'scripts', 'get_file_info.py')
'scripts', 'blender', 'get_file_info.py')
results = self.run_python_script(project_path, system_safe_path(script_path), timeout=timeout) results = self.run_python_script(project_path, system_safe_path(script_path), timeout=timeout)
result_text = results.stdout.decode() result_text = results.stdout.decode()
for line in result_text.splitlines(): for line in result_text.splitlines():

View File

@@ -2,9 +2,9 @@
import re import re
from collections import Counter from collections import Counter
from src.engines.blender_engine import Blender from src.engines.blender.blender_engine import Blender
from src.utilities.ffmpeg_helper import image_sequence_to_video from src.utilities.ffmpeg_helper import image_sequence_to_video
from src.workers.base_worker import * from src.engines.core.base_worker import *
class BlenderRenderWorker(BaseRenderWorker): class BlenderRenderWorker(BaseRenderWorker):

View File

@@ -1,5 +1,5 @@
import logging import logging
from ..engines.engine_manager import EngineManager from src.engines.engine_manager import EngineManager
logger = logging.getLogger() logger = logging.getLogger()
@@ -9,9 +9,9 @@ class RenderWorkerFactory:
@staticmethod @staticmethod
def supported_classes(): def supported_classes():
# to add support for any additional RenderWorker classes, import their classes and add to list here # to add support for any additional RenderWorker classes, import their classes and add to list here
from src.workers.blender_worker import BlenderRenderWorker from src.engines.blender.blender_worker import BlenderRenderWorker
from src.workers.aerender_worker import AERenderWorker from src.engines.aerender.aerender_worker import AERenderWorker
from src.workers.ffmpeg_worker import FFMPEGRenderWorker from src.engines.ffmpeg.ffmpeg_worker import FFMPEGRenderWorker
classes = [BlenderRenderWorker, AERenderWorker, FFMPEGRenderWorker] classes = [BlenderRenderWorker, AERenderWorker, FFMPEGRenderWorker]
return classes return classes

View File

@@ -1,19 +1,13 @@
import os
import logging import logging
import os
import platform import platform
import shutil import shutil
from .downloaders.blender_downloader import BlenderDownloader
from .downloaders.ffmpeg_downloader import FFMPEGDownloader
from ..utilities.misc_helper import system_safe_path
try: from src.engines.blender.blender_downloader import BlenderDownloader
from .blender_engine import Blender from src.engines.blender.blender_engine import Blender
except ImportError: from src.engines.ffmpeg.ffmpeg_downloader import FFMPEGDownloader
from blender_engine import Blender from src.engines.ffmpeg.ffmpeg_engine import FFMPEG
try: from src.utilities.misc_helper import system_safe_path
from .ffmpeg_engine import FFMPEG
except ImportError:
from ffmpeg_engine import FFMPEG
logger = logging.getLogger() logger = logging.getLogger()

View File

View File

@@ -5,7 +5,7 @@ import re
import requests import requests
from .downloader_core import download_and_extract_app from src.engines.core.downloader_core import download_and_extract_app
logger = logging.getLogger() logger = logging.getLogger()
supported_formats = ['.zip', '.tar.xz', '.dmg'] supported_formats = ['.zip', '.tar.xz', '.dmg']

View File

@@ -1,9 +1,7 @@
try:
from .base_engine import *
except ImportError:
from base_engine import *
import re import re
from src.engines.core.base_engine import *
class FFMPEG(BaseRenderEngine): class FFMPEG(BaseRenderEngine):

View File

@@ -2,8 +2,8 @@
import re import re
import subprocess import subprocess
from src.workers.base_worker import BaseRenderWorker from src.engines.core.base_worker import BaseRenderWorker
from src.engines.ffmpeg_engine import FFMPEG from src.engines.ffmpeg.ffmpeg_engine import FFMPEG
class FFMPEGRenderWorker(BaseRenderWorker): class FFMPEGRenderWorker(BaseRenderWorker):

View File

@@ -6,7 +6,7 @@ from sqlalchemy.orm import sessionmaker
from src.utilities.status_utils import RenderStatus from src.utilities.status_utils import RenderStatus
from src.engines.engine_manager import EngineManager from src.engines.engine_manager import EngineManager
from src.workers.base_worker import Base from src.engines.core.base_worker import Base
logger = logging.getLogger() logger = logging.getLogger()
@@ -84,7 +84,7 @@ class RenderQueue:
@classmethod @classmethod
def load_state(cls): def load_state(cls):
from src.workers.base_worker import BaseRenderWorker from src.engines.core.base_worker import BaseRenderWorker
cls.job_queue = cls.session.query(BaseRenderWorker).all() cls.job_queue = cls.session.query(BaseRenderWorker).all()
@classmethod @classmethod

View File

@@ -1,5 +1,5 @@
import subprocess import subprocess
from src.engines.ffmpeg_engine import FFMPEG from src.engines.ffmpeg.ffmpeg_engine import FFMPEG
def image_sequence_to_video(source_glob_pattern, output_path, framerate=24, encoder="prores_ks", profile=4, def image_sequence_to_video(source_glob_pattern, output_path, framerate=24, encoder="prores_ks", profile=4,

View File

@@ -1,5 +1,5 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from src.api_server import start_server from src.api.api_server import start_server
if __name__ == '__main__': if __name__ == '__main__':
start_server() start_server()