testaces / app.py
tx3bas's picture
Create app.py
3b6c73c verified
Raw
History Blame Contribute Delete
1.15 kB
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()