mirror of
https://github.com/Paillat-dev/viralfactory.git
synced 2026-01-02 09:16:19 +00:00
🐛 fix(GenerationContext.py): fix import statements and add support for captioning engine
✨ feat(GenerationContext.py): add support for captioning engine in the GenerationContext class
The import statement for the `moviepy.editor` module is changed to `moviepy.editor as mp` to improve code readability. Additionally, the `gradio` module is imported as `gr` to improve code readability. The `GenerationContext` class now includes a `captioningengine` parameter and initializes a `captioningengine` attribute. The `setup_dir` method is modified to include a call to create a directory for the output files. The `get_file_path` method is modified to return the file path based on the output directory. The `process` method is modified to include additional steps for captioning. The `timed_script` attribute is added to store the result of the `ttsengine.synthesize` method. The `captioningengine` is used to generate captions and store them in the `captions` attribute. The final video is rendered using the `moviepy` library and saved as "final.mp4" in the output directory.
This commit is contained in:
@@ -1,14 +1,39 @@
|
||||
from typing import TypedDict
|
||||
from .BaseEngine import BaseEngine
|
||||
from .NoneEngine import NoneEngine
|
||||
from . import TTSEngine
|
||||
from . import ScriptEngine
|
||||
from . import LLMEngine
|
||||
from . import CaptioningEngine
|
||||
|
||||
ENGINES = {
|
||||
"SimpleLLMEngine": [LLMEngine.OpenaiLLMEngine, LLMEngine.AnthropicLLMEngine],
|
||||
"PowerfulLLMEngine": [LLMEngine.OpenaiLLMEngine, LLMEngine.AnthropicLLMEngine],
|
||||
"TTSEngine": [TTSEngine.CoquiTTSEngine, TTSEngine.ElevenLabsTTSEngine],
|
||||
"ScriptEngine": [
|
||||
ScriptEngine.ShowerThoughtsScriptEngine,
|
||||
ScriptEngine.CustomScriptEngine,
|
||||
],
|
||||
|
||||
class EngineDict(TypedDict):
|
||||
classes: list[BaseEngine]
|
||||
multiple: bool
|
||||
|
||||
|
||||
ENGINES: dict[str, EngineDict] = {
|
||||
"SimpleLLMEngine": {
|
||||
"classes": [LLMEngine.OpenaiLLMEngine, LLMEngine.AnthropicLLMEngine],
|
||||
"multiple": False,
|
||||
},
|
||||
"PowerfulLLMEngine": {
|
||||
"classes": [LLMEngine.OpenaiLLMEngine, LLMEngine.AnthropicLLMEngine],
|
||||
"multiple": False,
|
||||
},
|
||||
"ScriptEngine": {
|
||||
"classes": [
|
||||
ScriptEngine.ShowerThoughtsScriptEngine,
|
||||
ScriptEngine.CustomScriptEngine,
|
||||
],
|
||||
"multiple": False,
|
||||
},
|
||||
"TTSEngine": {
|
||||
"classes": [TTSEngine.CoquiTTSEngine, TTSEngine.ElevenLabsTTSEngine],
|
||||
"multiple": False,
|
||||
},
|
||||
"CaptioningEngine": {
|
||||
"classes": [CaptioningEngine.SimpleCaptioningEngine, NoneEngine],
|
||||
"multiple": False,
|
||||
},
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user