HowTo Multicast-Stream Eingefangen mit DirectShow?
Habe ich eine Anforderung zum erstellen einer sehr einfachen streaming-server. Es muss in der Lage sein, um video von einem Gerät aufnehmen und dann streamen Sie das video per multicast an mehrere clients in einem LAN.
Den capture-Teil von diesem ist ziemlich einfach (in C#) Dank einer Bibliothek schrieb jemand mit DirectShow.Net (http://www.codeproject.com/KB/directx/directxcapture.aspx).
Die Frage, die ich jetzt haben, ist, wie multicast? Dies ist der Teil, den ich stecken geblieben bin. Ich bin mir nicht sicher, was als Nächstes zu tun oder welche Schritte zu ergreifen.
In welchem format ist dein stream komprimiert, oder ist es egal?
Wir haben drei Formate sind wir targeting. MPEG-2, MPEG-4 und h.264. Wir brauchen es für die Arbeit mit einem dieser Formate. MPEG-2 ist wahrscheinlich unsere beste Wette, aber der Chef will h.264.
Bestimmten format können nur Streams im Windows Media Player selbst, nicht andere Spieler. Ich fand, dass WMV/ASF funktioniert am besten für das streaming.
Wir haben drei Formate sind wir targeting. MPEG-2, MPEG-4 und h.264. Wir brauchen es für die Arbeit mit einem dieser Formate. MPEG-2 ist wahrscheinlich unsere beste Wette, aber der Chef will h.264.
Bestimmten format können nur Streams im Windows Media Player selbst, nicht andere Spieler. Ich fand, dass WMV/ASF funktioniert am besten für das streaming.
InformationsquelleAutor | 2008-12-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es keine Filter zur Verfügung, können Sie plug-and-use.
Müssen Sie drei Dinge tun hier:
Gibt es viele codecs verfügbar für Teil 1, und einige Geräte können sogar die Ausgabe von komprimierten video.
Teil 3 ist ganz einfach zu.
Haupt-problem geht es hier mit Teil 2, als MPEG-Transport-Stream ist patentiert. Es ist lizenziert, so dass Sie sich nicht entwickeln können, basierend auf freier software (VLC und FFMPEG verletzen, Lizenz), und Sie haben zu zahlen mehrere hundert Dollar, nur um eine Kopie der Spezifikation.
Wenn Sie haben, um es zu entwickeln, müssen Sie zu:
Muss es sein, einen renderer, der als Transport-Stream ist nicht eine Transformation, filter. Gibt es irgendeine Art von outband-Daten (program allocation tables und Funkuhren), die gesendet werden müssen, auf einer regelmäßigen basis, und Sie benötigen, um einen worker-thread zu tun.
InformationsquelleAutor Quassnoi
Zu erreichen, müssen Sie setup/schreiben eine Art von video-streaming-server.
Ich verwendet habe, VideoCapX für den gleichen Zweck an meinem Projekt. Die Dokumentation und der support ist nicht erstklassig, aber es ist gut genug. Es ist mit WMV-streaming-Technologie. Der stream wird genannt MMS stream. Sie können es mit jeder die meisten media-player. Ich habe getestet mit Windows Media Player, Media Player-Klassiker und VLC. Wenn Sie möchten, um zu sehen, seine Fähigkeit, ohne code schreiben nur noch, werfen Sie einen Blick auf U-Broadcast, verwendet es VideoCapX für den job hinter der Szene.
Habe ich mit DirectShow.Net seit fast 2 Jahren, und ich finde es immer noch schwer zu schreiben, ein streaming-server selbst, aufgrund der Komplexität der DirectShow-Technologie.
Andere als WMV, können Sie einen Blick auf Helix Server oder Apple-Streaming-Server. Letzteres ist allerdings nicht kostenlos, so ist WMV-Streaming-Server von Microsoft.
Können Sie auch einen Blick auf den VLC oder Windows Media Encoder zu tun-streaming direkt aus der Anwendung. Aber bisher finde ich U-Broadcast aus haben beide der oben genannten. VLC hat einige Kompatibilitätsprobleme mit codec und die Wiedergabe von nicht VLC-player, WME hat problem mit der Start-up-Aufnahme Gerät.
Glück
HINWEIS: ich bin nicht verbunden mit VideoCapX-oder it-Unternehmen, ich bin nur ein glücklicher Benutzer.
VideoCapX funktioniert das streaming. Ich bin mit der version 6.3. Sorry, ich habe gerade gemerkt, dass man damit Bezug auf "multicast". Gut, video stream, unterstützt mehrere clients verbunden. Es konnte nicht wirklich "multicast" ist, denn echte multicast erfordert eine sehr strenge Netzwerk-setup und alle Verbindung zu beginnen zusammen.
Vielleicht möchten Sie sich in multicast-Konzept selbst. en.wikipedia.org/wiki/IP_Multicast
InformationsquelleAutor faulty
http://www.codeproject.com/KB/directx/DShowStreamingServer.aspx helfen könnte, und http://en.wikipedia.org/wiki/VLC_media_player#cite_note-14
VLC auch "sollte" in der Lage sein zu streamen von jedem Gerät nativ.
InformationsquelleAutor rogerdpack