UDP ou RTP solution de streaming pour Android
J'ai besoin de créer une application android pour afficher une TV en direct feed.
l'application est censé jouer sur les flux vidéo en direct à partir de la Multidiffusion d'une passerelle DVB, selon le fournisseur de passerelle il peut stream out ou UDP RTP.
- Je configurer vlc sur mon ordinateur pour le stream out UDP et RTP et s'est cassé mes doigts en essayant d'obtenir le android player pour voir. après un certain temps, j'ai découvert que android ne supporte HTTP/S et RTSP streaming. J'ai essayé tous les FFMPEG des solutions et des différents acteurs des médias, sans succès. Je ne suis pas un expert vidéo, mais à ma connaissance RTSP est une encapsulation de RTP, mon RTP aliments emballés et en continu (même via un proxy) ? quelqu'un sait-il d'un travail UDP solution ?
grâce
J'ai commencé à écrire un tunnel qui passe d'un local UDP flux de port 1234, à une connexion TCP sur le port 8888. Je suis en train de tester avec VLC, l'UDP charge utile semble correct, et je suis capable de voir le VLC initialisation de la connexion http, quand j'attends le port d'écoute TCP pour accepter la connexion. mais encore VLC habitude de lire les flux HTTP,
mon code:
public void Bridge()
{
//endpoints
IPEndPoint myRemoteEndpoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 1234);
//communications objects
UdpClient myUdpClient = new UdpClient(myRemoteEndpoint);
TcpListener myTcpListener = new TcpListener(IPAddress.Any, 8888);
//buffer
byte[] buffer = new byte[2048];
//start tcp listener
myTcpListener.Start();
Socket tcpAcceptedSocket = myTcpListener.AcceptSocket();
while (true)
{
try
{
//get data from UDP client
buffer = myUdpClient.Receive(ref myRemoteEndpoint);
//send bytes received from UDP over TCP
tcpAcceptedSocket.Send(buffer);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
//close sockets
myUdpClient.Close();
myTcpListener.Stop();
}
toutes les pensées ?
source d'informationauteur Omriko
Vous devez vous connecter pour publier un commentaire.
Espérons vous avez résolu ce déjà?
Ma première pensée fut: "comment faites-vous de la sortie que
while (true)
boucle?" lolRTP a été ajouté à l'Android SDK API de niveau 12:
http://developer.android.com/reference/android/net/rtp/package-summary.html
Peut-être vous pouvez utiliser
android.net.rtp
pour attraper votre vidéo en streaming. Il semble y avoir un manque important de tutoriels dans ce domaine, donc si vous n'avez/obtenez ce travail, je suis sûr qu'un rapide écriture-up pourrait voler vers le haut le grand G les résultats de la recherche; pour ne pas mentionner aider les affiches de 600+ d'autres questions sur stackoverflow que dans une "android udp rtp" de recherche.Du blog-o-sphère:
http://burcudogan.com/2011/06/05/android-rtp-implementation-is-based-on-udp/
Et je vais jeter dans une prise de courant pour WebRTC, car il semble prometteur:
http://www.html5rocks.com/en/tutorials/webrtc/basics/