2014-04-29 4 views
0

Je souhaite diffuser l'écran de l'utilisateur (de l'ordinateur utilisant l'application C#) vers un serveur distant (PHP) via un lecteur FLV ou de toute autre manière.meilleure façon de diffuser des images vers un serveur distant?

Je prends une capture d'écran toutes les 1 secondes, je l'envoie en tant que base64 au serveur de sauvegarde, puis je l'enregistre en tant que X.jpg sur le serveur distant, où X est un nombre incrémentiel.

Une fois que j'atteins 100 images, j'utiliser la commande ci-dessous afin de convertir les images en vidéo:

exec('ffmpeg -y -r 2 -f image2 -i img%d.jpg -r 20 temp.flv 2>&1 >/dev/null', $output, $exit_status); 

Une fois la vidéo créée, je l'afficher à l'utilisateur et supprimer tous les fichiers, puis répétez le processus à nouveau, et encore une fois afin de continuer à diffuser. Cette méthode ne fonctionne pas vraiment comme prévu et présente de nombreux inconvénients.

Existe-t-il une autre façon de diffuser les captures d'écran prises au client distant dans son navigateur sans avoir à convertir les images en vidéo et à les lire et continuer à répéter ce processus?

+2

cela semble suspect! – HackerMan

+0

Jusqu'à présent, votre question est hors-sujet: vous êtes à la recherche d'outils OU vous devez fournir plus de détails que "ne fonctionne pas vraiment comme prévu". –

Répondre

0

Google "live screencasting software", vous gagnerez du temps.

Quant à votre approche actuelle:

  1. Encode l'image en JPG avant l'envoyer sur le réseau, vous aurez probablement économiser un peu de bande passante.
  2. Ne codez pas base64 quoi que ce soit sauf si vous avez vraiment besoin d'être sûr de 7 bits. [par exemple. email] Les données encodées en Base64 représentent généralement 1,33 fois la taille de l'entrée.
Questions connexes