Spaces:
Runtime error
Runtime error
File size: 1,211 Bytes
4a6400b | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | import gradio as gr
import time
from PIL import Image
import io
# Variable globale pour stocker l'image reçue de la 3DS
derniere_image = None
def rafraichir_ecran():
global derniere_image
# Cette fonction tourne en boucle sur ton téléphone pour mettre à jour l'affichage
while True:
time.sleep(0.05) # ~20 FPS
yield dernie_image
def recevoir_image_java(image_pil):
global derniere_image
derniere_image = image_pil
return "Image reçue avec succès par Hugging Face"
# Création de l'interface Gradio
with gr.Blocks() as demo:
gr.Markdown("# 3DS Stream - Écran de ton Téléphone")
# Zone d'affichage pour ton téléphone
affichage_video = gr.Image(label="Console 3DS", streaming=True)
# Relance automatiquement la fonction pour rafraîchir l'image toutes les 50ms
demo.load(rafraichir_ecran, outputs=affichage_video, every=0.05)
# API cachée que ton programme Java va appeler
input_image = gr.Image(type="pil", visible=False)
bouton_api = gr.Button("Envoyer", visible=False)
bouton_api.click(recevoir_image_java, inputs=input_image)
# Active la file d'attente pour gérer le flux continu
demo.queue().launch() |