Ich entwerfe einen einfachen Arduino-basierten Roboter, der in der Lage wäre, einen A/V-Feed (kleine Farbkamera und Mikrofon) über das Internet an eine URL (meinen Webserver) zu streamen.
Ich würde ein Arduino-Board mit einem Arduino WiFi- oder Ethernet-Schild verwenden.
Mehrere Probleme:
Vielen Dank im Voraus.
Aus Gründen, die ich in Übertragen eines Videostreams über das WLAN eines Mikrocontrollers aufgezeigt habe , sind Arduinos nicht für Audio-/Video-Streaming geeignet. Der Audioteil davon macht dies noch schwieriger, da der Arduino das Video mit dem Audio kombinieren müsste. Tatsächlich ist "nicht geeignet" höflich, ich bezweifle, dass der Arduino überhaupt damit umgehen kann.
Ein 32bit MCU oder DSP ist dafür weitaus besser geeignet!
Wie sende ich Kamera-Video-Feeds und Mikrofon-Audio-Feeds an das Shield (WiFi oder Ethernet)?
Die meisten Kameras für diese Art von Anwendung übertragen ihr Video über eine serielle Schnittstelle. Dies sind keine fortschrittlichen Kameras (da der Arduino so unterversorgt ist). Diese Kameras codieren / komprimieren normalerweise Video als Motion Jpeg (MJPEG) , das dann über die serielle Kommunikation gesendet wird.
Ich kann anscheinend keine finden, aber ich würde denken, dass es Kameras gibt, die ein Mikrofon enthalten und Video und Audio zusammen codieren und über eine serielle Übertragung übertragen, sodass Sie sie nur an einen der seriellen Ports des Arduino anschließen müssen (oder Umgehen Sie einfach den Arduino und verbinden Sie ihn direkt mit einem Seriell-zu-WiFi/Ethernet-Prozessor wie dem von Ihnen erwähnten Schild.)
Wenn die Kamera die Audioseite nicht verarbeitet, können Sie das Audio mit dem ADC des Arduino abtasten (nicht empfohlen) oder einen anderen Prozessor ( Codec Shield ) verwenden, um das Audio zu codieren (viel bessere Qualität) und es an das Arduino senden. Dann müsste der Arduino das Audio mit dem Video codieren (was ich sehr bezweifle, dass es dazu in der Lage ist) und es über einen anderen seriellen Anschluss an die WiFi/Ethernet-Karte übertragen.
Wie überträgt die Abschirmung tatsächlich den A/V-Feed? Kodiert es den Stream automatisch oder muss ich das selbst programmieren?
Stellen Sie sich die Abschirmung nur als ein serielles Kabel vor, alles, was es tut, ist die Übertragung der seriellen Daten, die es empfängt. Wie auch immer Audio und Video kodiert sind, sie müssen am anderen Ende dekodiert werden (eine einfache Aufgabe für einen Computer). Ein Beispiel dafür für das Video ist MJPEG, die Kamera kodiert/komprimiert ihre rohen Pixeldaten in das JPEG-Format und überträgt es. Das empfangende Gerät dekodiert/dekomprimiert die Daten und zeigt sie an.
Hilfreiche Links:
HeineBehinds
HeineBehinds
Garret Fogerlie
Garret Fogerlie