Mjpeg VLC et Streaming HTTP
Je suis de la génération d'un Flux MJpeg et en essayant de le diffuser à VLC et il y jouer.
Le code:
public void SendMultiPartData(String contentType, Func<byte[]> getData)
{
MemoryStream mem = null;
response.StatusCode = 200;
for ( byte[] buffer = getData(); buffer != null && buffer.Length > 0; buffer = getData())
{
response.ContentType = "multipart/x-mixed-replace; boundary=--testboundary";
ASCIIEncoding ae = new ASCIIEncoding();
byte[] boundary = ae.GetBytes("\r\n--testboundary\r\nContent-Type: " + contentType + "\r\nContent-Length:" + buffer.Length + "\r\n\r\n");
mem = new MemoryStream(boundary);
mem.WriteTo(response.OutputStream);
mem = new MemoryStream(buffer);
mem.WriteTo(response.OutputStream);
response.OutputStream.Flush();
}
mem.Close();
listener.Close();
}
Si j'essaie d'ouvrir le flux avec firefox, il n'y a pas de problème, même avec VLC ça ne fonctionne pas (VLC semble garder la lecture, mais ne montre jamais la vidéo)
J'ai été renifler VLC-VLC streaming et ils semble à utiliser comme en-tête HTTP "application/octet-stream" au lieu de " multipart/x-mixte-remplacer
Des idées ?
Tks à l'avance,
Jose
OriginalL'auteur user361526 | 2009-04-29
Vous devez vous connecter pour publier un commentaire.
Jose,
J'ai eu exactement le même problème. Firefox joue mon flux mais VLC ne marche pas. Je suis passé par tellement de façons de comprendre cela y compris le débogage VLC le code source, et a obtenu pas le cas.
btw Mon (REPOS) URL ressemble http://server:port/livevideo/xyz
Ensuite, j'ai pensé que je devrais essayer de http://server:port/livevideo/xyz.mjpeg
Et devinez quoi, VLC commencé à jouer de la vidéo!
Je pense que VLC peut-être besoin d'un petit indice de plus que le type de contenu à la figure, c'est un flux mjpeg.
Espérons que cette aide.
Cindy
OriginalL'auteur
Avez-vous essayé ceci:
Ou un dérivé de ceux-là?
OriginalL'auteur Jason Williams
Je ne peux pas obtenir firefox de lire mes flux (bien que le chrome joue d'accord). Pour VLC j'ai mis le tampon à 0 ms (en vertu de l'advanced open options) et il semblait à travailler à partir de là, bien que mon débit de données est de le tuer.
OriginalL'auteur Dolphin