testaces / app.py
tx3bas's picture
Create app.py
3b6c73c verified
import gradio as gr
import time
from acestream.server import Server
from acestream.engine import Engine
from acestream.stream import Stream
import subprocess
def start_acestream_stream(acestream_id):
# Configurar el motor de AceStream
engine = Engine('acestreamengine', client_console=True)
# Intentar conectar al servidor local de AceStream
server = Server(host='127.0.0.1', port=6878)
if not server.available:
# Si no está disponible, iniciar el motor
engine.start()
while not engine.running:
time.sleep(1)
# Configurar y comenzar el flujo AceStream
stream = Stream(server, id=acestream_id)
stream.start()
# Reproducir el flujo en un reproductor como VLC o MPV
player = subprocess.Popen(['mpv', stream.playback_url])
# Retornar la URL del flujo HTTP para Gradio
return stream.playback_url
# Configurar la interfaz de Gradio
iface = gr.Interface(
fn=start_acestream_stream,
inputs="text",
outputs="text",
title="AceStream a HTTP",
description="Introduce el ID de AceStream para recibir un enlace HTTP."
)
iface.launch()