Hallo,
ich habe ein Setup bei dem ein Video vom einem VLC Player zu einem anderen VLC Player über das Ethernet übertragen werden soll. Dabei werden die Daten Pakete allerdings über zwei Mikrocontroller unterwegs auf eine andere Schnittstelle übersetzt und anschießend wieder über Ethernet an einen zweiten Rechner mit einem VLC Player geleitet. Das ist in Kürze das Prinzip und es funktioniert bis auf den folgenden Teil nicht:
Bei der Umsetzung der vom VLC Player erzeugten MPEG-TS Pakete auf die serielle Schnittstelle (SPI, USART) gehen die ISO/IEC 13818 -1 Header verloren. Diese Header beschreiben laut https://de.wikipedia.org/wiki/MPEG-2 den Transport Stream. D.h. alles was ich über die serielle Schnittstelle weiterleiten kann ist der Inhalt des Datagramms mit den Audio und Videodaten. Die auf der anderen Seite ausgegebenen Pakete sind anschließend auch nicht mehr vom Typ MPEG-TS sondern UDP, da Wireshark keine weitere Bezeichnung mehr sieht.
Anbei ein Log File von Wireshark mit den generierten Paketen. Die unteren sieben sind die ISO/IEC 13818 -1 Header, die zum Schluss alle fehlen. Aus dem Datagramm erhalte ich 1324Byte -8Byte (Source Port und Destination Port) = 1316Byte Payload.
Das Resultat ist, dass der zweite Player den Stream nicht ausgeben kann und den Eintrag, wie im 2ten Anhang zu finden, ausgibt.
Meine Fragen dazu:
Gibt es eine Möglichkeit den VLC Player auf der Empfangsseite mit den passenden Einstellungen trotzdem dazu zu bewegen den ankommenden Stream abzuspielen?
Oder wenn möglich, den VLC Player so streamen zu lassen, dass dieser keine zusätzlichen Header erzeugt und nur das Datagramm per UDP Protokoll über IPV4 versendet wird?
Vielen Dank im Voraus.