2013-02-15 3 views
1

J'ai un programme client et un programme serveur. Le serveur est sur mon localhost et il a ma vidéo .mpeg. En utilisant le nœud JS, je suis censé diffuser une vidéo à partir d'un serveur. Le client demande des messages, tels que lecture/pause/reprise/rembobinage etc., donc je suppose que je dois utiliser RTSP, pour savoir ce qu'il faut envoyer sur le RTP. Mais je ne sais pas par où commencer. Tout ce que j'ai jusqu'ici est le RegEx pour filtrer le message, par exemple sur le client il y a des boutons comme play/pause/setup etc. pour que je puisse attraper ce texte. Et j'ai un interrupteur. Mais si je suis paramétré, que dois-je faire?Implémentation RTP RTSP en javascript

P.S Je ne suis pas autorisé à utiliser des modules RTSP ou des modules RTP. Je dois tout faire à partir de zéro.

+2

Pourriez-vous améliorer ce titre? Cela n'a vraiment aucun sens pour moi. –

+0

comment voulez-vous que je l'améliore? – twix

+0

Quel est votre problème avec votre "implémentation RTP? RTSP en javascript" –

Répondre

2

Lorsque vous diffusez des fichiers MPEG sur le fil, vous devez vous attaquer à RTSP et RTP séparément. RTSP est utilisé pour la signalisation, l'établissement de session et le démarrage du flux RTP sous-jacent.Si vous avez besoin de le faire dans node.js, je recommande de charger une bibliothèque qui implémente déjà RTSP/RTP (créer le vôtre est une entreprise, mais c'est faisable ainsi que).

Quelques informations sur le chargement C++ bibliothèques Node.js que: How can I use a C++ library from node.js?

Donc, fondamentalement, à partir de votre fichier mpeg, vous devez extraire flux H264 brut. Pour cela, je recommande ffmpeg ou d'autres bibliothèques/code qui comprend la structure du fichier mpeg. Ensuite, vous devez mettre en paquets les trames encodées à l'intérieur des paquets RTP; que vous enverrez ensuite au client depuis le serveur. Le client dépaquettera ensuite les trames encodées en trame réelle; puis décodé/les afficher sur l'écran.

Je recommande de lire http://www.ietf.org/rfc/rfc3984.txt pour plus d'informations sur la façon standard de mettre en paquets la vidéo H264.

Cette approche est très générale, mais elle vous donne une idée générale. J'espère que cette info vous aide, bonne chance.

+0

nous n'utilisons pas HTTP ou HTML. J'ai un client .exe ... a les options suivantes SETUP PLAY PAUSE teardown lorsque le client appuie sur SETUP il envoie un message au serveur RTSP et j'envoyer un message RTSP en arrière et je crée une prise pour ce client. et d'envoyer un message RTP en disant "200 OK" en utilisant le paquet UDP. maintenant l'étape suivante est .. si le client clique sur PLAY, j'ai besoin d'obtenir la vidéo et de la tronçonner en images puis utiliser RTP pour l'envoyer. maintenant c'est où je suis. J'ai besoin de ça.fichier mpeg qui est déjà compressé et j'ai besoin de chunk down je suppose que je dois utiliser fs ??? – twix

+0

Je pense mieux comprendre votre configuration maintenant. Je recommande vivement http live streaming de votre fichier mpeg. Sinon, vous devrez ajouter le support RTSP/RTP à votre serveur; Ensuite, vous devez extraire l'audio/vidéo du fichier mpeg, puis diffuser l'audio/vidéo dans deux sessions RTP distinctes. J'espère que ça aide. – Aki

+0

Je ne suis pas autorisé à utiliser http si. Comme dans la description du projet, il indique que l'objectif principal est la mise en œuvre du protocole RTP et du protocole RTSP. ils l'ont rendu plus facile en n'incluant pas l'audio. Je suis coincé avec le tableau d'octets du fichier vidéo. Je dois lire le fichier vidéo comme octets – twix

Questions connexes