| from typing import Optional |
| import gradio |
|
|
| import DeepFakeAI.choices |
| import DeepFakeAI.globals |
| from DeepFakeAI import wording |
| from DeepFakeAI.typing import OutputVideoEncoder |
| from DeepFakeAI.uis.typing import Update |
|
|
| OUTPUT_VIDEO_ENCODER_DROPDOWN : Optional[gradio.Dropdown] = None |
| OUTPUT_VIDEO_QUALITY_SLIDER : Optional[gradio.Slider] = None |
|
|
|
|
| def render() -> None: |
| global OUTPUT_VIDEO_ENCODER_DROPDOWN |
| global OUTPUT_VIDEO_QUALITY_SLIDER |
|
|
| with gradio.Box(): |
| OUTPUT_VIDEO_ENCODER_DROPDOWN = gradio.Dropdown( |
| label = wording.get('output_video_encoder_dropdown_label'), |
| choices = DeepFakeAI.choices.output_video_encoder, |
| value = DeepFakeAI.globals.output_video_encoder |
| ) |
| OUTPUT_VIDEO_QUALITY_SLIDER = gradio.Slider( |
| label = wording.get('output_video_quality_slider_label'), |
| value = DeepFakeAI.globals.output_video_quality, |
| step = 1 |
| ) |
|
|
|
|
| def listen() -> None: |
| OUTPUT_VIDEO_ENCODER_DROPDOWN.select(update_output_video_encoder, inputs = OUTPUT_VIDEO_ENCODER_DROPDOWN, outputs = OUTPUT_VIDEO_ENCODER_DROPDOWN) |
| OUTPUT_VIDEO_QUALITY_SLIDER.change(update_output_video_quality, inputs = OUTPUT_VIDEO_QUALITY_SLIDER, outputs = OUTPUT_VIDEO_QUALITY_SLIDER) |
|
|
|
|
| def update_output_video_encoder(output_video_encoder: OutputVideoEncoder) -> Update: |
| DeepFakeAI.globals.output_video_encoder = output_video_encoder |
| return gradio.update(value = output_video_encoder) |
|
|
|
|
| def update_output_video_quality(output_video_quality : int) -> Update: |
| DeepFakeAI.globals.output_video_quality = output_video_quality |
| return gradio.update(value = output_video_quality) |
|
|