123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- from PyQt6.QtCore import *
- from PyQt6.QtWidgets import *
- from PyQt6.QtGui import *
- from qfluentwidgets import *
- from .list import List,TableBase
- from .common.translator import Translator
- from .common.style_sheet import StyleSheet
- from demeter.core import *
- class VideoScene(List):
- def __init__(self, parent=None):
- t = Translator()
- self.info = parent.info
- super().__init__(
- title='场景',
- subtitle="每个影片可以包含多个场景,每个场景下有多个镜头",
- model='video_scene',
- parent=parent
- )
- self.setObjectName(self.__class__.__name__)
- self.addCard(
- title='列表',
- widget=TableFrame(self),
- sourcePath=''
- )
- self.initData()
- def initData(self, page=1):
- self.widget.initData(page, {'video_id':self.info['id']})
- def showUpdateItem(self, id = 0):
- self.updateDefault = {'video_id' : self.info['id']}
- self.updateFunc = {}
- self.updateItem = {}
- self.updateItem['text1'] = QLabel('场景名称:')
- self.updateItem['name'] = LineEdit()
- self.updateItem['name'].setPlaceholderText('输入场景名称')
- self.updateItem['name'].setClearButtonEnabled(True)
- self.updateItem['text2'] = QLabel('场景排序:')
- self.updateItem['sort'] = LineEdit()
- self.updateItem['sort'].setPlaceholderText('输入场景排序')
- self.updateItem['sort'].setClearButtonEnabled(True)
- self.updateItem['sort'].setText('1')
- self.updateItem['text3'] = QLabel('以下为合成影片时每个场景里的镜头设置:')
- self.updateItem['text4'] = QLabel('输入要剪辑的镜头时长,秒数为单位,为0则不做剪辑:')
- self.updateItem['duration'] = LineEdit()
- self.updateItem['duration'].setPlaceholderText('输入要剪辑的镜头时长,秒数为单位,为0则不做剪辑')
- self.updateItem['duration'].setClearButtonEnabled(True)
- self.updateItem['duration'].setText('3')
- self.updateItem['author_check'] = SwitchButton()
- self.updateItem['author_check'].setOffText("不添加作者水印")
- self.updateItem['author_check'].setOnText("自动添加作者水印:仅远程镜头有效")
- self.updateItem['author_check'].setChecked(True)
- self.updateItem['fade_check'] = SwitchButton()
- self.updateItem['fade_check'].setOffText("不添加添加转场特效")
- self.updateItem['fade_check'].setOnText("添加转场特效:自动增加随机的转场效果")
- self.updateItem['fade_check'].setChecked(True)
- self.updateItem['effect_check'] = SwitchButton()
- self.updateItem['effect_check'].setOffText("不添加观赏特效")
- self.updateItem['effect_check'].setOnText("添加观赏特效:添加一些不影响观看的特效")
- self.updateItem['effect_check'].setChecked(True)
- self.updateItem['flip_check'] = SwitchButton()
- self.updateItem['flip_check'].setOffText("不做镜像翻转")
- self.updateItem['flip_check'].setOnText("镜像翻转:将画面左右翻转")
- self.updateItem['flip_check'].setChecked(True)
- self.updateItem['speed_check'] = SwitchButton()
- self.updateItem['speed_check'].setOffText("不加微变速")
- self.updateItem['speed_check'].setOnText("微变速:镜头自动增加微变速")
- self.updateItem['speed_check'].setChecked(True)
- if id:
- info = self.getInfo(id)
- self.updateItem['name'].setText(info['name'])
- self.updateItem['sort'].setText(str(info['sort']))
- if info['author']:
- info['author'] = True
- else:
- info['author'] = False
- if info['fade']:
- info['fade'] = True
- else:
- info['fade'] = False
- if info['effect']:
- info['effect'] = True
- else:
- info['effect'] = False
- if info['flip']:
- info['flip'] = True
- else:
- info['flip'] = False
- if info['speed']:
- info['speed'] = True
- else:
- info['speed'] = False
- self.updateItem['duration'].setText(str(info['duration']))
- self.updateItem['author_check'].setChecked(info['author'])
- self.updateItem['fade_check'].setChecked(info['fade'])
- self.updateItem['effect_check'].setChecked(info['effect'])
- self.updateItem['flip_check'].setChecked(info['flip'])
- self.updateItem['speed_check'].setChecked(info['speed'])
- def deleteCheck(self):
- num = int(self.widget.getItem(2))
- if num > 0:
- return '场景下有镜头,不能删除哦'
- return ''
- class TableFrame(TableBase):
- def init(self):
- self.head = ['ID', '场景名称', '镜头数量', '排序', '更新时间', '操作']
- self.button = {'编辑':self.parent.update, '删除':self.parent.delete}
-
|