Zur Info: Frage wurde ohne inhaltliche Antwort schon in anderer Forums
Kategorie gepostet, passt aber wohl besser hier her.
Hallo beisammen,
ich hab keine Erfahrung mit den am Markt angebotenen preisgünstigen
Linux/Android Boards ( mit ARM CPU + GPU ) und brauche eure
Einschätzung/ Empfehlung welche Rechenleistung (Single/Dual/QuadCore
Board, xy MHz ) ich benötige, um meinen Windows PC durch das gesuchte
Board zu ersetzen.
Bisher übernimmt ein handelsüblicher Windows PC folgende Aufgaben:
- kontinuierliches einlesen von full HD JPG Einzelbilder
per USB ( Endpoint lesen ). Jedes Bild ist ca. 1 MByte groß. 24 FPS
- Dokodieren von JPG nach RGB Format
- Encodieren in MP4 Format
- Einlesen von Sound über Sound Karte
- Schreiben der Audio / Video Daten in einen AVI Container auf
Festplatte
ich habe folgendes funktionsfähiges System aufgebaut
======================================================
- FPGA Board
- erweitert mit selbstgebautem HDMI Input Board
- erweitert mit USB 2.0 Board ( Slave )
Folgende Funktion wird durch das System realisiert:
===================================================
- Ein Video Stream full HD 1080p wird per HDMI eingelesen
- Wandlung in eine Serie von unabhängigen Einzelbildern im JPG Format
- Bereitstellung der einzelnen Bilder im full HD Format 1080p am USB Bus
Ich gehe davon aus, dass ein Board OHNE zusätzlichen Graphic CHIP die
MP4 Codierung 1080p / 24FPS in Echtzeit NICHT zuverlässig schaffen wird.
Deshalb meine spezielle Frage, kennt jemand ein Board, das einen Graphic
Chip mit Encoder Funktion besitzt und hat Erfahrungen damit ?
Vielen Dank
FPGA-Fragender schrieb im Beitrag #3393139:
> Folgende Funktion wird durch das System realisiert:> ===================================================> - Ein Video Stream full HD 1080p wird per HDMI eingelesen> - Wandlung in eine Serie von unabhängigen Einzelbildern im JPG Format> - Bereitstellung der einzelnen Bilder im full HD Format 1080p am USB Bus>>> Ich gehe davon aus, dass ein Board OHNE zusätzlichen Graphic CHIP die> MP4 Codierung 1080p / 24FPS in Echtzeit NICHT zuverlässig schaffen wird.>> Deshalb meine spezielle Frage, kennt jemand ein Board, das einen Graphic> Chip mit Encoder Funktion besitzt und hat Erfahrungen damit
Den Schrtt das HD Video erst in JPG zu verbuchseln um das hinerther
erneut zu recodieren, mag zwar in deinem Proof of Concept noch einen
Sinn gemacht haben. Das ganze beibehalten zu wollen wenn Du jetzt den
Rechnerkern verändern willst jedoch nicht.
Überlicherweise enthalten die ARM Derivate welche in der Lage sind (HD)
Video MPEG(2 oder H.264) zu encodieren auch Videoinputs welche in der
Lage sind Video >= Full-HD direkt an einer dedizierten
Videoschnittstelle entgegen zu nehmen.
Eine CPU mit Full-HD H2.264 Encode welche auch für kleinere Firmen und
Hobbyisten erhälltlich ist, wäre z.B. Freescale´s i.MX6. Gibt und kommen
diverse Evalboards in der Region $60 - $160.
>> Vielen Dank
Nix zu Danke, zahl dei Sach ;)
Gruß
Vanilla
Hallo Vanilla,
Dein Hinweis auf die i.MX6 Familie ist gut, aber leider konnte ich
gerade KEIN Eval Board finden, das HDMI input über Buchse oder
Erweiterungsplatine anbietet.
Nach meine Recherche hat der Processor an sich nur einen HDMI out Port.
Der Video Input ist wohl üblicherweise nur über "Camera Link" möglich,
der sich von HDMI, DVI grundsätzlich unterscheidet.
Die Multimedia codecs werden von FreeScale grundsätzlich angeboten. Ist
Dir bekannt unter welchen Bedingungen ( Kosten, Lizenz, Abnahmemengen
usw ) überhautp an Privatkunden weitergegeben wird ?
bin weiterhin auf der Suche.
Hallo FPGA Fragender,
mit HDMI Input wirst Du wohl auch nichts finden.
Kommerziel wird mit HDMI Input sofort auch HDCP verbunden sein, welches
dann wohl eher nicht in einem gut dokumentierten? und debugbaren System
gelöst werden sollte...
Der iMX6 besitzt parallele und LVDS (MIPI) Videoinputs womit er ja nach
Typ 1-2 Videoinputs parallel geliefert bekommen kann. Der MIPI Input ist
meines Wissens nach bei den meisten Evalboards herausgeführt. Beim
paralellen muss man wohl suchen. Unter anderem auch deshalb, weil die
Pins mit anderen Funktionen geshared sind, und für andere Funktionen
dann nicht mehr zur Verfügung stehen.
MIPI hat grundsätzlich schon Ähnllichkeiten mit Camaralink. Für eine
Konvertierung von einem HDMI/DVI Input kann entweder mit FPGA oder aber
über 1-2 fertige ICs erfolgen.
Der Weg über USB-JPG ist grundsätzlich natürlich auch möglich kostet
jedoch zusätzliche Rechenpower JPG erst mal wieder zu decodieren.
Für den iMX gibt es sowohl Android als auch Linux Support (Ubuntu?).
Die Treiber zur VPU sind zwar Closed Source, stehen aber
lizenskostenfrei zur Verfügung und werden auch standardmäßig genutzt zum
Beispiel vom GStreamer etc.
Die CPU kannst Du einzelstückmässig z.B. bei DigiKey und Konsorten
bekommen. Ggfs. bietet es sich aber an, ein fertiges Board z.B. auf
Basis Q7 o.ä. zu kaufen und "nur" das Baseboard zu designen.
Hi,
an HDMI in hab ich mir auch schon die Zähne ausgebissen und nix
gefunden.
Ein FPGA-Hack ist sicher machbar, aber für ein Endprodukt wirds
rechtlich ev. noch knifflig...wahrscheinlich darf man's einfach nicht
als HDMI bezeichnen.
Vanilla schrieb:> Der Weg über USB-JPG ist grundsätzlich natürlich auch möglich kostet> jedoch zusätzliche Rechenpower JPG erst mal wieder zu decodieren.
Das Problem könnte vor allem sein, die isochronen (wie ich mal annehme)
Datenströme von der Kamera garantiert verlustfrei ins System zu kriegen.
Mit Restart-Markern kann man zwar was reparieren, aber 100% Garantie auf
ein intaktes Bild gibt's nicht. Erlebe da gerade Enttäuschungen auf div.
embedded ARM-Rechnern auf der USB-Seite.
FPGA-Fragender: Hast du schon direkt h264 encoding auf dem FPGA
evaluiert?
Ich habe mal was angefangen, aber die Hürde für die DDR-Anbindung war
mir in dem Moment zu gross (da es nix von der Stange fertig gab), ist
also erst mal auf Eis. Es gibt auf jeden Fall etwas Referenz-Code im
Netz, so dass man nicht bei Null anfangen muss.
Ansonsten soll der RPi auch HW-unterstütztes encoding per GPU können,
aber da das ganze alles ziemlich closed source/doc ist, habe ich mir das
noch nicht angesehen. Kommt vielleicht mal noch..
Grüsse,
- Strubi
Eine eigene Frage?
Dieser Thread ist über 13 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.