melhorado explorer com teclas de atalhos funcionando e configurações de perfis do ffmpeg

This commit is contained in:
2026-02-13 23:52:00 +00:00
parent 15eb14bf28
commit 8238d71367
7 changed files with 487 additions and 415 deletions

View File

@@ -36,20 +36,27 @@ class Category(BaseModel):
class FFmpegProfile(BaseModel):
name = CharField()
# Configuração de Codec
video_codec = CharField(default='h264_vaapi')
preset = CharField(default='medium')
crf = IntegerField(default=23)
# Configuração de Hardware (NOVO)
hardware_type = CharField(default='vaapi') # vaapi, nvenc, qsv, cpu
hybrid_decode = BooleanField(default=False) # Fix para Intel antigo (CPU Decode -> GPU Encode)
# Áudio/Legenda
audio_langs = CharField(default='por,eng,jpn')
subtitle_langs = CharField(default='por')
is_active = BooleanField(default=False)
def init_db():
# --- CORREÇÃO AQUI: Verifica se já está conectado ---
if db.is_closed():
db.connect()
db.create_tables([AppConfig, Category, FFmpegProfile], safe=True)
# --- MIGRAÇÕES DE BANCO (Adiciona colunas se não existirem) ---
try: db.execute_sql('ALTER TABLE category ADD COLUMN content_type VARCHAR DEFAULT "mixed"')
except: pass
try: db.execute_sql('ALTER TABLE category ADD COLUMN genre_filters VARCHAR DEFAULT ""')
@@ -57,7 +64,18 @@ def init_db():
try: db.execute_sql('ALTER TABLE category ADD COLUMN country_filters VARCHAR DEFAULT ""')
except: pass
# Migração FFmpeg (Hardware Type)
try:
db.execute_sql('ALTER TABLE ffmpegprofile ADD COLUMN hardware_type VARCHAR DEFAULT "vaapi"')
db.execute_sql('ALTER TABLE ffmpegprofile ADD COLUMN hybrid_decode BOOLEAN DEFAULT 0')
except: pass
# Perfil padrão se estiver vazio
if FFmpegProfile.select().count() == 0:
FFmpegProfile.create(name="Padrão VAAPI (Intel)", video_codec="h264_vaapi", is_active=True)
# Não fechamos a conexão aqui para manter o pool ativo no container
FFmpegProfile.create(
name="Padrão VAAPI (Intel/AMD)",
video_codec="h264_vaapi",
hardware_type="vaapi",
hybrid_decode=False, # Padrão para hardware novo
is_active=True
)