DE102016113764A1 - Dynamische bildschirmreplikation und display-darstellung in echtzeit basierend auf medienanwendungseigenschaften - Google Patents

Dynamische bildschirmreplikation und display-darstellung in echtzeit basierend auf medienanwendungseigenschaften Download PDF

Info

Publication number
DE102016113764A1
DE102016113764A1 DE102016113764.2A DE102016113764A DE102016113764A1 DE 102016113764 A1 DE102016113764 A1 DE 102016113764A1 DE 102016113764 A DE102016113764 A DE 102016113764A DE 102016113764 A1 DE102016113764 A1 DE 102016113764A1
Authority
DE
Germany
Prior art keywords
portable system
codec
host device
application
visual content
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE102016113764.2A
Other languages
English (en)
Inventor
Fan Bai
Dan Shan
Donald K. Grimm
Massimo Osella
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
GM Global Technology Operations LLC
Original Assignee
GM Global Technology Operations LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by GM Global Technology Operations LLC filed Critical GM Global Technology Operations LLC
Publication of DE102016113764A1 publication Critical patent/DE102016113764A1/de
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234309Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/41407Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a portable device, e.g. video client on a mobile phone, PDA, laptop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/41422Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance located in transportation means, e.g. personal vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • H04N21/8193Monomedia components thereof involving executable data, e.g. software dedicated tools, e.g. video decoder software or IPMP tool
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/437Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440218Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Ein tragbares System mit einem Prozessor und einer Speichervorrichtung, das einen Computer ausführbaren Code umfasst, der, wenn er durch den Prozessor ausgeführt wird, den Prozessor veranlasst verschiedene Operationen durchzuführen einschließlich dem Empfangen visueller Medieninhalte von einer Quelle, und dem Bestimmen einer Anwendungseigenschaft ausgewählt aus einer Gruppe, bestehend aus einer Anwendungsidentität und einer Anwendungskategorie, die einer Dienstanwendung, die auf dem tragbaren System und/oder einem Hostvorrichtung in Kommunikation mit dem tragbaren System gespeichert ist, zugeordnet ist. Die Operationen beinhalten ferner das Bestimmen, basierend auf den Anwendungseigenschaften, welche von mehreren verfügbaren Codecs eine Hostvorrichtung verwenden sollte, um den visuellen Inhalt zu verarbeiten, das Senden, einer Mitteilung an die Hostvorrichtung, die den Codec zur Verwendung bei der Verarbeitung des visuellen Inhalts anzeigt, und das Senden des visuellen Inhalts an die Hostvorrichtung für das Anzeige-Rendern unter Verwendung des bestimmten Codec.

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Offenbarung bezieht sich im Allgemeinen auf Systeme und Verfahren zur Übertragung von Medieninhalten und insbesondere auf Systeme und Verfahren für die Replikation und Echtzeitdarstellung visueller Medien basierend auf einer Eigenschaft einer Dienstmedienanwendung.
  • HINTERGRUND
  • Die meisten modernen Automobilfahrzeuge werden von den Erstausrüstern (OEM) mit Infotainment-Einheiten ausgestattet, die Audio- und visuelle Medien darstellen können. Die Einheiten können über das Internet mittels einer auf der Einheit laufenden Audioanwendung empfangenen Audio-Inhalt und beispielsweise von einer Digital Video Disc (DVD) empfangenen Video-Inhalt darstellen. Während viele Einheiten auch von einer Remote-Quelle empfangene visuelle Medien, wie beispielsweise Navigations- und Wetterinformationen, darstellen können, ist das Darstellen von einer Remote-Quelle empfangenem Video-Inhalt nach wie vor eine Herausforderung.
  • Andere Anzeigevorrichtungen, wie beispielsweise Fernseh- oder Computerbildschirme können Videodaten über eine Schnittstelle mit hoher Übertragungsgeschwindigkeit, wie beispielsweise einer High-Definition-Multimedia-Schnittstelle (HDMI) oder einem Video Graphics Array (VGA) Port, empfangen. (HDMI ist eine eingetragene Handelsmarke der HDMI Licensing, LLC, of Sunnyvale, Kalifornien). Es wurden digitale Medienrouter zum Einrichten einer Steckverbindung in diese Ports mit hoher Übertragungsgeschwindigkeit (Hohe Durchsatz- oder High-Transfer-Rate-Ports) entwickelt, so dass dem Anzeigegerät Videodaten zur Verfügung gestellt werden können.
  • Zu den Hindernissen für ein effizientes und effektives Übertragen und eine Echtzeitdarstellung von Videodaten von einer Remote-Quelle an ein lokales Gerät zur Anzeige gehören auch Beschränkungen am lokalen Gerät, wie beispielsweise Beschränkungen hinsichtlich der alten Software und/oder Hardware am lokalen Gerät. Beispielsweise wird Universal Serial Bus (USB) Video Class (UVC) entweder nicht von handelsüblichen ANDROID®-Geräten oder vorherrschenden Infotainment-Systemen unterstützt. (Android ist eine eingetragene Handelsmarke von Google, Inc., of Mountain View, Kalifornien)
  • Die meisten modernen Hostvorrichtungen, wie beispielsweise alte, sich bereits im Umlauf befindliche Fahrzeuge, weisen solche Schnittstellen mit hoher Übertragungsgeschwindigkeit nicht auf. Moderne Fahrzeuge weisen zunehmend einen Peripherie-Port, wie beispielsweise einen USB-Anschluss, auf oder einen Drahtlosempfänger zur Datenübertragung mit geringer Übertragungsgeschwindigkeit von einem mobilen Endvorrichtung, wie einem Smartphone. Oftmals weisen die Telefone keine Videokarte auf und/oder die Fahrzeuge haben keine Grafik verarbeitende Software auf.
  • Das effiziente und effektive Streaming von Videodaten durch eine Verbindung mit niedrigerer Übertragungsrate, wie eine Peripherieschnittstelle, beispielsweise USB-Anschluss, ist eine Herausforderung, weil entweder die Übertragungsrate zu langsam ist, oder die eingesteckte Vorrichtung oder Hostvorrichtung (z. B. Legacy-Fahrzeug oder Fernsehen) nicht die erforderliche Video-Grafik-Hardware und/oder Software aufweist. Das Streamen von Videodaten erfordert herkömmlicherweise höhere Datengeschwindigkeiten. Obgleich HDMI-Daten 10 Gbps übersteigen können, übersteigen USB-Daten für gewöhnlich nicht ungefähr 4 Gbps.
  • ZUSAMMENFASSUNG
  • Es besteht ein Bedarf an einer Anordnung, die in Echtzeit effizient High-Speed-Video-Streams von einem tragbaren Massenspeichersystem zu einer Hostvorrichtung zum Anzeige-Rendern mit geringer Latenz als qualitativ hochwertiges Video übertragen die Anzeige rendern oder in Echtzeit replizieren kann, und das über eine Verbindung mit verhältnismäßig niedriger Transferrate, wie zum Beispiel eine USB-Verbindung.
  • Die vorliegende Technologie löst diese sowie weitere Herausforderungen in Bezug auf die Übertragung und Echtzeit-Anzeige-Rendern oder Replizierung von Medien mit hoher Durchsatzleistung, die von einer Quelle, wie einem Remote-Anwendungsserver, empfangen werden, an eine Ziel-Hostvorrichtung, wie eine Head-Unit eines Automobilfahrzeuges.
  • Die vorliegende Offenbarung bezieht sich auf ein tragbares System, das einen Prozessor und eine Speichervorrichtung beinhält, die computerausführbare Anweisungen oder Code beinhaltet, die, wenn sie durch den Prozessor ausgeführt werden, den Prozessor veranlassen verschiedene Operationen einschließlich den Empfang, unter Verwendung der Anwendung, von Medieninhalten von einer Quelle durchzuführen, wie zum Beispiel ein Anwendungsserver von Drittanbietern. Die Operationen beinhalten ferner das Bestimmen einer Anwendungseigenschaft ausgewählt aus einer Gruppe bestehend aus einer Anwendungsidentität und einer Anwendungskategorie, die einer Dienstanwendung zugeordnet ist.
  • Die Operationen beinhalten auch die Bestimmung, auf der Grundlage der Anwendungseigenschaft, welche von mehreren verfügbaren Codecfamilien eine Hostvorrichtung verwenden sollte, um die visuellen Inhalte zu verarbeiten, wie zum Beispiel einen Verlustlosen-Codec oder eine Verlustbehafteten-Codec. Ein Hinweis auf die ausgewählte Codec-Familie und den visuellen Inhalt werden zu der Hostvorrichtung für das Anzeige-Rendern unter Verwendungdes bestimmten Codec gesendet.
  • In einer Ausführungsform beinhalten die Operationen die Bestimmung, basierend auf der Anwendungseigenschaft, welche der mehreren verfügbaren Codec-Parameter bei der Verarbeitung des visuellen Inhalts zu verwenden sind, wie Kompressionsverhältnisse und Auflösungslevel. Die Operationen beinhalten das Senden einer Kommunikation an die Hostvorrichtung, die den Codec-Parameter anzeigt, der bei der Verarbeitung des visuellen Inhalts auf der Hostvorrichtung zu verwenden ist.
  • Das tragbare System kann dort gespeicherte Kennungen aufweisen, die den verfügbaren Codefamilien und/oder den verfügbaren Codec-Parametern entsprechen. Der Speicher 112 kann das Abbilden von Daten beinhalten, die jede Anwendungseigenschaft mit einer verfügbaren Codec-Familien und/oder zumindest einem der verfügbaren Codec-Parameter verbindet, zur Verwendung bei der Bestimmung der entsprechenden Codec-Familie und Codec-Parameter in jeder Situation.
  • In verschiedenen Ausführungsformen ist die Hostvorrichtung Teil eines Kraftfahrzeugs, das eine Universal Serial Bus(USB)-Schnittstelle oder irgendeine Variante umfasst, wie drahtloses USB, und das tragbare System umfasst einen USB-Stecker oder drahtlose Schnittstelle, um mit dem Automobil zu verbinden.
  • In einem weiteren Aspekt der vorliegenden Technologie beinhaltet die Hostvorrichtung einen Prozessor, der konfiguriert ist, mit einem Kommunikationsanschluss und einer Anzeigebildschirmvorrichtung zu kommunizieren und verschiedene Operationen durchzuführen, einschließlich dem Empfangen, von dem tragbaren System, einer Kommunikation, die anzeigt (i) ein Codec, das in dem tragbaren System basierend auf einer Anwendung bestimmt wird, die auf dem tragbaren System ausgeführt wird, und (ii) ein Codec-Parameter, der auch auf dem tragbaren System basierend auf der Anwendung ausgewählt wird.
  • Die Operationen der Hostvorrichtung beinhalten das Empfangen weiterer visueller Inhalte von dem tragbaren System und die Verarbeitung des visuellen Inhalts unter Verwendung des Codecs und/oder der empfangenen Codec-Parameter, was verarbeiteten visuellen Inhalt ergibt.
  • Das tragbare System und die Hostvorrichtung sind in einigen Ausführungsformen für eine bidirektionale Datenübertragung konfiguriert. Bei verschiedenen Ausführungsformen ist die Konfiguration so angeordnet, dass die Datenübertragungen gemäß eines Zeitmultiplex-Kanalzugriffverfahrens (Time Division Multiple Access, TDMA) oder eine seiner Varianten durchgeführt werden können.
  • Medieninhalte und Nachrichten von dem tragbaren System werden durch einen Vorwärtskanal zu der Hostvorrichtung gesendet, und Nachrichten von der Hostvorrichtung werden durch einen Rückkanal an das tragbare System gesendet. Bei einigen Implementierungen sind das tragbare System, das Host-System und der die beiden verbindende Datenübertragungskanal so konfiguriert, dass sie gleichzeitige bidirektionale Datenübertragungen ermöglichen.
  • Ein Befehl von der Hostvorrichtung zu dem tragbaren System kann konfiguriert werden, um eine Funktion oder Einstellung in dem tragbaren System zu schaffen oder zu verändern. Die Funktion oder die Einstellung kann konfiguriert werden, um zum Beispiel die Auswahl am tragbaren System des Codecs und/oder des Codec-Parameters zu beeinflussen, die bei dem Anzeige-Rendern oder Replizieren der visuellen Medien an der Hostvorrichtung zu verwenden sind.
  • Bei einigen Ausführungsformen beinhaltet das tragbare System eine Human Machine Interface (HMI), wie beispielsweise eine Taste, ein Knopf oder ein Mikrophon. Das tragbare System ist so konfiguriert, dass es über die HMI-Schnittstelle eine Benutzereingabe empfängt und jedwede einer Reihe verschiedener von Aktionen, unter anderem, Ändern einer zuvor geschaffenen tragbaren System-Funktion oder Einstellung, Schaffen einer Funktion oder Einstellung und Erzeugen einer Nachricht zum Senden an die Hostvorrichtung, die Anweisungen enthält, um eine Funktion oder Einstellung der Hostvorrichtung zu ändern oder zu schaffen.
  • Bei einigen Ausführungsformen ist das Host-System Teil eines Automobils, oder zumindest für eine Implementierung als Bestandteil eines Automobils, mit dem Datenübertragungsanschluss und dem erwähnten Anzeigebildschirmvorrichtung konfiguriert. Nachstehend werden sich weitere Aspekte der vorliegenden Erfindung teilweise ohne Weiteres erschließen und teilweise explizit erwähnt.
  • BESCHREIBUNG DER ZEICHNUNGEN
  • 1 veranschaulicht schematisch eine Umgebung, in der die vorliegende Technologie implementiert ist, die ein tragbares System und eine Hostvorrichtung beinhaltet.
  • 2 veranschaulicht Operationen eines Algorithmus, der am tragbaren System von 1 programmiert ist.
  • 3 veranschaulicht Operationen eines Algorithmus, der an der Hostvorrichtung von 1 programmiert ist.
  • Die Figuren sind nicht unbedingt maßstabsgerecht, und einige Merkmale können vergrößert oder verkleinert dargestellt sein, um Einzelheiten von bestimmten Komponenten darzustellen.
  • In einigen Fällen wurden im Sinne eines besseren Verständnisses der vorliegenden Offenbarung gut bekannte Komponenten, Systeme, Materialien oder Verfahren nicht ausführlich beschrieben.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Wie dies erforderlich ist, werden hierin ausführliche Ausführungsformen der vorliegenden Offenbarung offenbart. Die offenbarten Ausführungsformen sind lediglich Beispiele, die in verschiedenen alternativen Formen und Kombinationen davon ausgebildet werden können. In ihrer hierin verwendeten Form beziehen sich beispielsweise exemplarische und ähnliche Begriffe in erhöhtem Maße auf Ausführungsformen, die als eine Veranschaulichung, ein Typ, Moder oder Muster dienen.
  • Folglich sind die hierin offenbarten aufbau- und funktionsspezifischen Details nicht als Beschränkungen zu verstehen, sondern lediglich als Darstellungsgrundlage für die Ansprüche sowie als repräsentative Grundlage, um den Fachleuten die Art und Weise der Nutzung der vorliegenden Offenbarung zu vermitteln.
  • Obgleich die vorliegende Technologie hierin vorwiegend im Zusammenhang mit Automobilen beschrieben wird, ist die Technologie nicht auf Automobile beschränkt. Die Konzepte können in einer großen Reihe verschiedener Anwendungen, wie beispielsweise im Zusammenhang mit Luft- und Seefahrzeugen, sowie Industrien außerhalb des Transportwesens, wie beispielsweise mit Fernsehvorrichtungen, verwendet werden.
  • Zu weiteren Nicht-Automobilimplementierungen können Plug-in-Peer-to-Peer, oder netzwerkangeschlossene Speichervorrichtungen (NAS) gehören.
  • I. Fig. 1 – Technologieumgebung
  • 1 zeigt eine Umgebung 100 in der die vorliegende Technologie implementiert ist. Die Umgebung 100 beinhaltet eine tragbare Vorrichtung 110 und eine Hostvorrichtung 150. Zur Vereinfachung und nicht als Einschränkung wird die tragbare Vorrichtung 110 hierin vorwiegend als tragbares System und die Hostvorrichtung 150 als Hostvorrichtung bezeichnet. In einer Ausführungsform handelt es sich bei dem tragbaren System und der Hostvorrichtung 110, 150 um ein konsolidiertes System.
  • Das tragbare System 110 kann eine Reihe verschiedener Formen annehmen und auf vielerlei andere Weise bezeichnet werden, wie beispielsweise als Peripherievorrichtung, Peripheriesystem, tragbares Peripherievorrichtung, Peripherievorrichtung, mobiles System, tragbares System und tragbares Massenspeichersystem.
  • Das tragbare System 110 kann als tragbar bezeichnet werden auf der Grundlage von vielerlei Gründen, wie beispielsweise einfach an der Hostvorrichtung zu Befestigen/Entfernen zu sein, wie beispielsweise eine Plug-in-Anordnung und/oder dadurch, mobil zu sein, indem es beispielsweise Drahtlos und Kompakt ist, um problemlos von einem Nutzer umhergetragen werden zu können. Das tragbare System 110 kann eine andere Vorrichtung 111 beinhalten oder Teil einer sein, beispielsweise ein Dongle oder eine mobile Datenübertragungsvorrichtung, wie beispielsweise ein Smartphone.
  • Obgleich keine Verbindungen zwischen allen Komponenten des tragbaren Systems 110 und der Hostvorrichtungen 150 dargestellt sind, interagieren die Komponenten miteinander, um die hierin beschriebenen Funktionen auszuführen.
  • Das tragbare System 110 beinhaltet ein Hardware-Speichervorrichtung 112. Das Hardware-Speichervorrichtung 112 kann mit anderen Begriffen, wie beispielsweise Speicher, oder computerlesbares Medium, bezeichnet werden und kann beispielsweise ein flüchtiges Medium, nichtflüchtiges Medium, entnehmbares Medium und nichtentnehmbares Medium beinhalten. Der Begriff Hardware-Speichervorrichtung und seine Varianten beziehen sich in der in der Spezifikation und den Ansprüchen verwendeten Form auf materielle oder nichttemporäre, computerlesbare Speichervorrichtungen. Die Komponente wird hierin vorwiegend als Hardware-Speichervorrichtung 112.
  • In einigen Ausführungsformen beinhaltet das Speichervorrichtung 112 flüchtige und/oder nichtflüchtige, entnehmbare und/oder nichtentnehmbare Medien, wie beispielsweise Arbeitsspeicher (RAM), Nur-Lese-Speicher (ROM), elektrisch löschbare Nur-Lese-Speicher (EEPROM), Solid-Speicher oder andere Speichertechnologie, CD ROM, DVD, BLU-RAY oder andere optische Plattenspeicher, Magnetband, Magnetplattenspeicher oder andere magnetische Speichervorrichtungen.
  • Das tragbare System 110 beinhaltet ferner einen Computerprozessor 114, die mit dem Hardware-Speichervorrichtung 112 über eine Datenübertragungsverbindung 116, wie beispielsweise einen Computerbus, verbunden oder verbindbar ist.
  • Der Prozessor 114 kann auch durch andere Begriffe, wie beispielsweise Verarbeitungs-Hardwareeinheit, Verarbeitungs-Hardwarevorrichtung, Verarbeitungs-Hardwaresystem, Verarbeitungseinheit, Verarbeitungsvorrichtung o. ä., bezeichnet werden.
  • Der Prozessor 114 kann aus mehreren Prozessoren gebildet sein, die verteilte Prozessoren oder Parallelprozessoren in einer einzelnen Maschine oder mehreren Maschinen beinhalten können. Der Prozessor 114 kann zur Unterstützung einer virtuellen Verarbeitungsumgebung verwendet werden.
  • Der Prozessor 114 kann eine Multicore-Einheit sein oder diese beinhalten, wie beispielsweise eine Multicore-Digital Signalprozessor (DSP) Einheit oder eine Multicore-Grafigverarbeitungseinheit (GPU).
  • Der Prozessor 114 kann zur Unterstützung einer virtuellen Verarbeitungsumgebung verwendet werden. Der Prozessor 114 könnte eine Zustandsmaschine, eine anwendungsspezifische integrierte Schaltung (ASIC), eine programmierbare Gate-Anordnung (PGA) aufweisend ein Field PGA (FPGA), DSP, GPU oder eine Zustandsmaschine beinhalten.
  • Das tragbare System 110 weist in verschiedenen Ausführungsformen einen oder mehrere komplementierende Mediencodec-Komponenten, wie beispielsweise eine Hardware-Komponente und eine Software-Komponente auf, die in der Verarbeitung zu verwenden sind. Die Hardware- oder Verarbeitungskomponente kann Teil der Verarbeitungsvorrichtung 114 sein.
  • Verweise hierin auf Prozessoren, die einen Code oder Anweisungen zum Durchführen von Operationen, Maßnahmen, Aufgaben, Funktionen, Schritten o. ä. ausführen, können den Prozessor 114 beinhalten, der die Operationen direkt und/oder dadurch durchführt, dass er einem anderen Gerät oder einer anderen Komponente das Durchführen der Operationen ermöglicht, diese dazu anweist und/oder mit im ihr/ihr dafür kooperiert.
  • Das Hardware-Speichervorrichtung 112 beinhaltet computerausführbare Anweisungen oder einen solchen Code 118. Der computerausführbare Code 118 ist vom Prozessor 114 so ausführbar, dass der Prozessor 114 und demzufolge das tragbare System 110 dazu veranlasst wird, jegliche Kombination der hierin in Bezug auf das tragbare System beschriebenen Funktionen auszuführen.
  • Das Hardware-Speichervorrichtung 112 beinhaltet in verschiedenen Ausführungsformen sonstige Code- oder Datenstrukturen, wie beispielsweise ein Dateiteilsystem 120, eine Bildspeicher-Erfassungskomponente 122 und eine Medien-Codec-Komponente 124.
  • Wie erwähnt, weist das tragbare System 110 in verschiedenen Ausführungsformen eine oder mehrere komplementierende Mediencodec-Komponenten, wie beispielsweise eine Verarbeitungs- oder Hardwarekomponente und eine Softwarekomponente, die in der Verarbeitung zu verwenden ist, auf. Die Software-Mediencodec-Komponente wird durch die Bezugszahl 124 gekennzeichnet.
  • Ein Bildspeicher des Anzeigebildschirms kann eine übertragene Videoquelle, wie beispielsweise in Form eines Dateninhaltspakets, sein, das von der Bildspeicher-Erfassungskomponente 122 erfasst wird.
  • Die Vorrichtung 112 speichert in verschiedenen Ausführungsformen wenigstens einige der empfangenen und/oder erzeugten und in der Verarbeitung zu verwendenden Daten in einer dateibasierten Anordnung entsprechend dem darin gespeicherten Code. Wird beispielsweise ein FPGA verwendet, kann das Hardware-Speichervorrichtung 112 Konfigurationsdateien aufweisen, die zur Verarbeitung durch die FPGA konfiguriert sind.
  • Jede der Hardware-Speichervorrichtungen 112-Komponenten kann kombiniert, getrennt oder entfernt werden. Bezugnahmen hierin auf Operationen tragbarer Systeme, die in Reaktion auf die Ausführung einer Speicher 112-Komponente durchgeführt werden, können durch Ausführung einer anderen oder einer kombinierten oder getrennten Speicher 112-Komponente durchgeführt werden. Zum Beispiel, wenn der erste dargestellte Code 118 beschrieben wird, konfiguriert zu sein, den Prozessor 114 zu veranlassen, eine bestimmte Operation auszuführen, können die Anweisungen einer anderen Speicher 112-Komponente konfiguriert sein, den Prozessor 114 zu veranlassen, die Operation durchzuführen.
  • Das Dateiteilsystem 120 kann einen Zwischenspeicher der ersten Ebene und in einigen Implementierungen auch einen Zwischenspeicher der zweiten Ebene beinhalten.
  • In einigen Ausführungsformen beinhaltet das Hardware-Speichervorrichtung 112 den Code einer dynamischen Programmiersprache 125, wie beispielsweise JavaScript, Java oder eine C/C++-Programmiersprache. Die Hostvorrichtung 150 weist dieselbe Programmiersprache auf, die in 1 durch Bezugszahl 164 gekennzeichnet ist. Die Komponenten 164 der Hostvorrichtungen 150 beinhaltet in einigen Ausführungsformen ein Anwendungsframework, wie beispielsweise die erwähnte Medienanwendung und/oder einen Anwendungs-Manager zum Verwalten von Operationen der Medienanwendung an der Hostvorrichtung 150.
  • Der Code der Programmiersprache kann die Einstellungen für Datenübertragungen zwischen dem tragbaren System 110 und der Hostvorrichtung 150 festlegen, wie beispielsweise Merkmale von einer oder mehreren Anwendungsprogrammschnittstellen (APIs), über die das tragbare System 110 und das Gerät 150 kommunizieren.
  • Das tragbare System 110 beinhaltet in einigen Ausführungen wenigstens eine Human-Machine-Schnittstellen-(HMI)Komponente 126. Für Implementierungen, bei denen die Schnittstellenkomponente 126 die Benutzereingabe in den Prozessor 114 und die Ausgabe vom Prozessor 114 an den Nutzer ermöglicht, kann die Schnittstellenkomponente 126 als Eingabe-/Ausgabe (I/O) Komponente bezeichnet werden.
  • Als Beispiele kann die Schnittstellenkomponente 126 beinhalten oder mit einem Sensor verbunden sein, der auf eine Reihe verschiedener Art und Weise konfiguriert ist, um Benutzereingaben zu empfangen. In verschiedenen Ausführungsformen beinhaltet die Schnittstellenkomponente 126 wenigstens einen Sensor, der so konfiguriert ist, dass er Benutzereingaben erfasst, die beispielsweise über eine Berührung, einen hörbaren Klang oder eine berührungslose Bewegung oder eine Geste bereitgestellt werden.
  • Eine Touchsensor-Schnittstellenkomponente kann ein mechanisches Betätigungselement zum Übersetzen einer mechanischen Bewegung des Bewegens eines Teils, wie beispielsweise einen mechanischen Knopf oder eine Taste, in ein elektrisches oder digitales Signal beinhalten. Der Touchsensor kann ferner ein berührungsempfindliches Pad oder einen solchen Bildschirm, wie einen Oberflächenkapazitätssensor, beinhalten.
  • Zum Erfassen von Gesten kann die Schnittstellenkomponente 126 exemplarisch einen projizierten Kapazitätssenor, ein Infrarotlaster-Teilsystem, eine Radarteilsystem oder ein Kamerateilsystem beinhalten oder einsetzen.
  • Die Schnittstellenkomponente 126 ist mit dem Prozessor 114 zum Weiterleiten von Benutzereingaben verbunden, die als entsprechende Signale oder Nachrichten an den Prozessor empfangen werden.
  • In verschiedenen Implementierungen beinhaltet die Schnittstellenkomponente 126 eine visuelle oder auditive Anzeige oder ist an diese angeschlossen, wie beispielsweise ein Licht, eine Digitalanzeige oder einen Tonerzeuger zum Kommunizieren von Ausgaben an den Benutzer.
  • Die Schnittstellenkomponente 126 kann zum Beeinflussen von Funktionen und Einstellungen von einem oder beiden des tragbaren Systems 110 und der Hostvorrichtungen 150 ausgehend von der Benutzereingabe verwendet werden. Signale oder Mitteilungen, die den durch die Schnittstellenkomponente 126 empfangenen Eingaben entsprechen, werden an den Prozessor 114 übertragen, der den Code (z. B. Code 118) der Hardware-Speichervorrichtung 112 ausführt oder eine Funktion am tragbaren System 110 einstellt oder ändert. Empfangene Eingaben können auch die Erzeugung einer Kommunikation, wie beispielsweise einer Anweisung oder einer Mitteilung für die Hostvorrichtung 150 und Senden der Kommunikation an die Hostvorrichtung 150 zum Einstellen oder Ändern einer Funktion oder Einstellung der Hostvorrichtung 150, auslösen.
  • Das tragbare System 110 ist in einigen Ausführungsformen so konfiguriert, dass es die Verbindung zu der Hostvorrichtung 150 über eine harte oder verdrahtete Verbindung 129 herstellt. Die Verbindung wird hierin vorrangig als verdrahtete Verbindung im nicht beschränkenden Sinne bezeichnet. Die Verbindung kann Komponenten verbindende Drähte, wie beispielsweise einen beschriebenen USB-Plug-and-Port oder drahtlose Komponente, wie beispielsweise einen drahtlosen USB, beinhalten.
  • Bei einigen anderen Ausführungsformen ist die Verbindung mit Verbindungen gemäß Anordnungen mit höherer Durchsatzleistung, wie beispielsweise unter Einsatz eines HDMI Anschlusses oder eines VGA-Anschlusses konfiguriert.
  • Das tragbare System 110 kann, wie beschrieben, als ein Dongle konfiguriert sein, indem es ein Datenkommunikations-Plug 128 zum Verbinden mit einem übereinstimmenden Datenkommunikationsanschluss 168 der Hostvorrichtungen 150 aufweist. Ein exemplarischer Datenkommunikations-Plug 128 ist ein USB-Plug zum Anschluss an einen USB-Anschluss der Hostvorrichtungen 150.
  • Auf diese Weise stehen erweiterte Funktionen anhand relativ niedriger qualitativer Verbindung zur Verfügung, wie z. B. USB-Geräteklasse-Komponenten, während sie anders nicht vorhanden wären. Und wenn eine höhere oder Hochleistungsklassevorrichtung verfügbar ist (beispielsweise wenn das Fahrzeug bereits mit oder für solche Vorrichtungsklassen konfiguriert ist), kann das System konfiguriert sein, direkt die höheren Leistungsklassevorrichtung verwenden, um die erweiterten Funktionen bereitzustellen.
  • Zum Beispiel, während das tragbare System 110 in einigen Ausführungsformen ein tragbares Massenspeichervorrichtung ist, könnten fortgeschrittene USB-Vorrichtungsklassen, wie beispielsweise Media Transfer Protocol (MTP), unterstützt werden.
  • Das tragbare System 110 ist in verschiedenen Ausführungsformen so konfiguriert, dass es einen beliebigen oder mehrere Typen von Computeranweisungen, mit denen es programmiert sein kann, für dynamische Operationen betreibt und/oder die es möglicherweise zur dynamischen Verarbeitung am System 110 empfängt
  • In einigen Ausführungsformen ist das tragbare System 110 zur Drahtloskommunikation mit der Hostvorrichtung 150 und/oder einem anderen System 132 extern zum tragbaren System 110, wie beispielsweise einem Remote-Netzwerk oder einer Remote-Datenbank, konfiguriert. Durch die Bezugszahl 130 in 1, wird ein drahtloses Eingabe- oder Eingabe-/Ausgabe (I/O) Gerät, zum Beispiel ein Transceiver, oder einfach ein Transmitter gekennzeichnet. Drahtloskommunikationen mit der Hostvorrichtung 150 und dem externen System 132 werden jeweils durch die Bezugszahlen 131, 133 gekennzeichnet.
  • Das Drahtlosvorrichtung 130 kann in verschiedenen Ausführungsformen mit einem beliebigen einer großen Reihe verschiedener Netzwerke unter anderem Zellularkommunikationsnetzwerken, Satellitennetzwerken und lokalen Netzwerken, zum Beispiel durch straßenseitige Infrastruktur oder anderen lokalen Drahtlos-Transceiver, Signalleuchte oder Hotspot kommunizieren. Das Drahtlosvorrichtung 130 kann ferner mit Near-Field-Communication-(NFC)Geräten zum Unterstützen von Funktionen, wie mobiler Zahlungsverarbeitung oder Kommunikations-Setup/Handover-Funktionen, oder jeglichen anderen Einsatzszenarien kommunizieren, die durch NFC ermöglicht werden. Das Drahtlosvorrichtung 130 kann beispielsweise ein Funkmodem zur Kommunikation mit Zellularkommunikationsnetzwerken aufweisen.
  • Demgemäß beinhält das Remote-System 132 in verschiedenen Ausführungsformen ein beliebiges von Zellularkommunikationsnetzwerken, straßenseitiger Infrastruktur oder anderen lokalen Netzwerken zum Erreichen von Zielorten, wie das Internet und Remote-Server. Das Remote-System 132 kann ein Server sein, und Bestandteil eines Kundendienst-Centers oder eines solchen Systems, wie beispielsweise das OnStar®-System, sein oder dadurch betrieben werden (ONSTAR ist eine eingetragene Handelsmarke von Onstar LLC of Detroit, Michigan).
  • Nachstehend werden weitere Merkmale des tragbaren Systems 110 im Zusammenhang mit dem Algorithmus von 2 beschrieben.
  • Die Hostvorrichtung 150 ist in einigen Ausführungsformen Bestandteil eines größeren Systems 151, wie beispielsweise eines Automobils.
  • Wie gezeigt, beinhält die Hostvorrichtung 150 ein Speicher sein, oder computerlesbares Medium 152, wie beispielsweise ein flüchtiges Medium, nichtflüchtiges Medium, entnehmbares Medium und nichtentnehmabres Medium beinhalten. Der Begriff computerlesbares Medium und seine Varianten beziehen sich in der in der Spezifikation und den Ansprüchen verwendeten Form auf materielle oder nichttemporäre, computerlesbare Speichervorrichtungen. Die Komponente wird hierin vorwiegend als Speichervorrichtung 152 bezeichnet.
  • In einigen Ausführungsformen beinhaltet das Speichervorrichtung flüchtige und/oder nichtflüchtige, entnehmbare und/oder nichtentnehmbare Medien, wie beispielsweise Arbeitsspeicher (RAM), Nur-Lese-Speicher (ROM), elektrisch löschbare Nur-Lese-Speicher (EEPROM), Solid-Speicher oder andere Speichertechnologie, CD ROM, DVD, BLU-RAY oder andere optische Plattenspeicher, Magnetband, Magnetplattenspeicher oder andere magnetische Speichervorrichtungen.
  • Die Hostvorrichtung 150 beinhaltet ferner einen eingebetteten Computerprozessor 154, der mit dem Speichervorrichtung 152 mittels einer Datenübertragungsverbindung 156, wie beispielsweise einem Computerbus, verbunden oder verbindbar ist.
  • Der Prozessor kann aus mehreren Prozessoren gebildet sein, die verteilte Prozessoren oder Parallelprozessoren in einer einzelnen Maschine oder mehreren Maschinen beinhalten können. Der Prozessor kann zur Unterstützung einer virtuellen Verarbeitungsumgebung verwendet werden. Der Prozessor könnte eine Zustandsmaschine, eine anwendungsspezifische integrierte Schaltung (ASIC), eine programmierbare Gate-Anordnung (PGA) aufweisend ein Field PGA oder eine Zustandsmaschine beinhalten. Verweise hierin auf Prozessoren, die einen Code oder Anweisungen zum Durchführen von Operationen, Maßnahmen, Aufgaben, Funktionen, Schritten, o. ä. ausführen, können den Prozessor 154 beinhalten, der die Operationen direkt und/oder dadurch durchführt, dass er einem anderen Gerät oder einer anderen Komponente das Durchführen der Operationen ermöglicht, diese dazu anweist und/oder mit im ihr/ihr dafür kooperiert.
  • Die Vorrichtung 152 speichert in verschiedenen Ausführungsformen wenigstens einige der empfangenen und/oder erzeugten und in der Verarbeitung zu verwendenden Daten in einer dateibasierten Anordnung entsprechend dem darin gespeicherten Code. Wird beispielsweise ein FPGA verwendet, kann das Hardware-Speichervorrichtung 152 Konfigurationsdateien aufweisen, die zur Verarbeitung durch die FPGA konfiguriert sind.
  • Die Speichervorrichtung 152 beinhaltet computerausführbare Anweisungen oder einen solchen Code 158. Der computerausführbare Code 158 ist vom Prozessor 154 so ausführbar, dass der Prozessor und demzufolge die Hostvorrichtung 150 dazu veranlasst wird, jegliche Kombination der hierin in Bezug auf das tragbare System 150 beschriebenen Funktion durchzuführen.
  • Die Hostvorrichtung 150 beinhaltet sonstige Code- oder Datenstrukturen, wie beispielsweise ein Dateiteilsystem 160, eine dynamische Programmiersprache (beispielsweise JavaScript, Java oder eine C/C++-Programmiersprache) und ein Anwendungsframework 162. Jede der Speicher 152-Komponenten kann kombiniert, getrennt oder entfernt werden. Bezugnahmen hierin auf Operationen von Host-Systemen, die in Reaktion auf die Ausführung einer Speicher 152-Komponente durchgeführt werden, können durch Ausführung einer anderen oder einer kombinierten oder getrennten Speicher 152-Komponente durchgeführt werden. Zum Beispiel, wenn der erste dargestellte Code 158 beschrieben wird, konfiguriert zu sein, den Prozessor 154 zu veranlassen, eine bestimmte Operation auszuführen, können die Anweisungen einer anderen Speicher 152-Komponente konfiguriert sein, den Prozessor 154 zu veranlassen, die Operation durchzuführen.
  • Das Dateiteilsystem 160 kann einen Zwischenspeicher der ersten Ebene und einen Zwischenspeicher der zweiten Ebene aufweisen. Das Dateiteilsystem 160 kann zum Speichern von Medien, wie beispielsweise Video- und Bilddateien, verwendet werden, bevor der Prozessor 154 die Datei(en) veröffentlicht.
  • Das Anwendungsframework der dynamischen Programmiersprache (zum Beispiel JavaScript, Java oder eine C/C++-Programmiersprache) 162 kann Bestandteil des Zwischenspeichers der zweiten Ebene sein. Die dynamische Programmiersprache wird zum Bearbeiten der vom tragbaren System 110 empfangenen Mediendaten, wie beispielsweise Bild- oder Videodaten, verwendet. Der Programmiersprachencode kann die Einstellungen für die Datenübertragungen zwischen dem tragbaren System 110 und der Hostvorrichtung 150, wie beispielsweise Eigenschaften von einer oder mehreren APIs, festlegen.
  • Die Hostvorrichtung 150 beinhaltet oder steht in Kommunikation mit einer oder mehreren Schnittstellenkomponenten 172, wie beispielsweise einer HMI-Komponente. Für Implementierungen bei denen die Komponenten 172 die Benutzereingabe in den Prozessor 154 und die Ausgabe vom Prozessor 154 an den Nutzer ermöglichen, können die Komponenten als Eingabe-/Ausgabe-(I/O)Komponenten bezeichnet werden.
  • Für die Ausgabe können die Schnittstellenkomponenten eine visuelle Ausgabe oder eine Anzeigekomponente 174, wie beispielsweise ein Bildschirm, und eine Audioausgabe, wie einen Lautsprecher, beinhalten. In einer vorgesehenen Ausführungsform können die Schnittstellenkomponenten 172 Komponenten zum Bereitstellen von taktilen Ausgaben, wie beispielsweise eine von einem Nutzer zu spürende Vibration, beispielsweise mittels eines Lenkrades oder Fahrzeugsitzes, um von einem Automobilfahrer gespürt zu werden, beinhalten.
  • Die Schnittstellenkomponenten 172 sind auf eine Reihe verschiedener Arten konfiguriert, um Nutzereingaben zu empfangen. Die Schnittstellenkomponenten 172 können zur Eingabe in die Hostvorrichtung 150 beispielsweise eine mechanische oder elektromechanische Sensorvorrichtung wie beispielsweise einen berührungssensitiven Display, der durch die Bezugszahl 174 gekennzeichnet ist und/oder eine Audiovorrichtung 176, wie beispielsweise einen Audiosensor, zum Beispiel ein Mikrophon, beinhalten. Bei verschiedenen Implementierungen beinhalten die Schnittstellenkomponenten 172 wenigstens einen Sensor. Der Sensor ist so konfiguriert, dass er Nutzereingaben erkennt, die beispielsweise durch Berührung, hörbar und/oder durch berührungslose Bewegung durch den Nutzer, wie beispielsweise durch Gesten bereitgestellt werden.
  • Eine Schnittstellenkomponente eines Touchsensors kann einen mechanischen Sensor zum Übersetzen von mechanischer Bewegung eines sich bewegenden Teils, wie einer mechanischen Taste, in ein elektrisches oder digitales Signal beinhalten. Der Touchsensor kann ferner ein berührungsempfindliches Pad oder einen solchen Bildschirm, wie einen Oberflächenkapazitätssensor, beinhalten. Zum Erkennen von Gesten kann eine Schnittstellenkomponente 172 beispielsweise einen Sensor mit projizierter Kapazität, ein Infrarotlaser-Teilsystem, ein Radarteilsystem oder ein Kamerateilsystem verwenden.
  • Die Schnittstellenkomponente 172 kann zum Empfang von Benutzereingaben zum Beeinflussen von Funktionen und Einstellungen von einem oder beiden des tragbaren Systems 110 und des Hostvorrichtungens 150 verwendet werden. Signale oder Nachrichten, die den Eingaben entsprechen, werden an der Komponente 172 erzeugt und an den Prozessor 154 geleitet, der den Code (z. B. Code 152) der Speichervorrichtung 150 ausführt oder eine Funktion oder Einstellung für das tragbare System 110 einstellt oder ändert oder eine Kommunikation für das tragbare System 110, wie beispielsweise eine Anweisung oder eine Mitteilung, erzeugt und die Kommunikation an das tragbare System zum Einstellen oder Ändern einer Funktion oder Einstellung des tragbaren Systems sendet 110.
  • Die Hostvorrichtung 150 ist in einigen Ausführungsformen so konfiguriert, dass es durch die verdrahtete Verbindung 129 mit dem tragbaren System 110 verbunden ist. In einer bestimmten Ausführungsform ist die Hostvorrichtung 150 mit einem Datenkommunikationsanschluss 168 konfiguriert oder mit ihm verbunden, der mit dem Datenkommunikations-Plug 128 des tragbaren Systems 110 übereinstimmt. Eine exemplarische Plug/Port-Anordnung ist der besagten USB-Anordnung bereitgestellt. Ein weiteres Beispiel könnte drahtloses USB-Protokoll sein.
  • In einigen Ausführungsformen ist die Hostvorrichtung 150 für Drahtloskommunikationen 131 mit dem tragbaren System 110 konfiguriert. Ein drahtloses Eingabe-/Ausgabe (I/O) Gerät, zum Beispiel ein Transceiver, der Hostvorrichtung 150, wird durch die Bezugszahl 170 in 1 gekennzeichnet. Der Prozessor 154, der den Code der Speichervorrichtung 152 ausführt, kann auf drahtlosem Weg Informationen, wie Mitteilungen oder paketierte Daten, von und an das tragbare System 110 und das Remote-System 132 über das drahtlose Gerät 170 senden, wie dies jeweils durch die Bezugszahlen 131, 171 angegeben ist.
  • Nachstehend werden weitere Merkmale und Funktionen der Hostvorrichtungen 150 vorrangig im Zusammenhang mit dem Algorithmus von 3 beschrieben.
  • II. Fig. 2 und Fig. 3 – Algorithmen und Funktionen
  • Nachstehend werden die Algorithmen, mit denen die vorliegende Technologie implementiert wird, ausführlicher beschrieben. Die Algorithmen werden mittels Ablaufplänen als Verfahren 200, 300 in 2 und 3 dargestellt.
  • 2 veranschaulicht Operationen eines am tragbaren System 110 von 1 programmierten Algorithmus. 3 veranschaulicht Operationen eines an der Hostvorrichtung 150 programmierten Algorithmus.
  • In einer Implementierung wird der Algorithmus konfiguriert, eine bevorzugte oder anwendbare Codec-Familie und/oder Codec-Parameter zur Verwendung in Verarbeitungsmedien (z. B. Video) auf der Grundlage einer vorliegenden Anwendung, die verwendet wird, um die Medien zu präsentieren, zu bestimmen. Die entsprechenden Verfahren können als geschlossene Schleife bezeichnet werden, weil sie keine Analyse anderer Daten erfordern, wie beispielsweise Echtzeit-Eigenschaften der Medien, die übertragen und Anzeigen gerendert oder reproduziert werden.
  • In einer anderen, offenen Schleife-Implementierung analysiert das tragbare System 110 die Medien und wählt einen Codec-Familie und/oder Codec-Parameter basierend auf Eigenschaften der Medien. Die Analyse in einigen Implementierungen wird in Echtzeit als Teil des Prozesses des Übertragens der Medien zu der Hostvorrichtung 150 und des Anzeigen Rendern dort durchgeführt. Exemplarische visuelle Eigenschaften beinhalten Schärfe und Konzentration, und sind nicht auf diese beiden Eigenschaften beschränkt. Analyse der Konzentration kann auch das Erzeugen oder zumindest Analysieren einer historischen oder Histogramm-Konzentration beinhalten.
  • In einer Ausführungsform ist das tragbare System 110 konfiguriert, entweder den geschlossenen Schleifen-Prozess oder den offenen Schleifen-Prozess selektiv zu erleichtern. Die Analyse kann verwendet werden, um eine Art von Bildschirmframes zu bestimmen, die verarbeitet werden, wie beispielsweise mehr Text-zentrische-Typ Bildschirmframes oder mehr Bild/Video-zentrische-Typ Bildschirmframes.
  • Als eine e Schärfen(SH)-Metrikberechnung, kann eine der folgenden Beziehungen verwendet werden:
    Figure DE102016113764A1_0002
  • In Bezug auf die Histogramm-Konzentration (HC), kann jede der folgenden Beziehungen verwendet werden:
    Figure DE102016113764A1_0003
    worin beispielsweise n eine Nummer der Konzentrationsspitze ist und N eine Anzahl von Gesamtgraustufen ist.
    Figure DE102016113764A1_0004
  • Zur Verarbeitung der Schärfen(SH)-Metrik und Histogramm-Konzentrations(HC)-Metrik, um einen entsprechenden Codec oder Codec-Familie (C) zu erhalten, kann die folgende Beziehung verwendet werden: CFrame_X = f(SHx, HCx) = αSHx + (1 – α)HCx Beziehung [6]
  • Die Schärfen (SH) und Histogramm-Konzentrations(HC)-Metriken können bei der Bestimmung eines Codec oder Codec-Familie (C) in einer Vielzahl von Arten verwendet werden, ohne vom Umfang der vorliegenden Technik abzuweichen. Als allgemeines Beispiel kann die Konzentration (C) niedrig sein, wenn die Schärfe (SH) niedrig ist (z. B. ≤ 0,4) und die Histogramm Konzentration (HC) niedrig ist; und die Konzentration (C) kann hoch sein, wenn die Schärfe (SH) hoch ist (z. B. > 0,4) und die Histogramm Konzentration (HC) hoch ist. Diese Allgemeinen Beziehungen können durch einfache Diagrammform wie folgt dargestellt werden:
    SH HC C
    Niedrig Niedrig Niedrig
    Hoch Hoch Hoch
  • In einer in Betracht gezogen, hybriden Ausführungsform werden die offenen und geschlossenen Schleifen beide zu einem gewissen Grad verwendet. In einer anderen in Betracht gezogenen Ausführungsform ist das tragbare System 110 konfiguriert, zu bestimmen welches Verfahren, offene Schleife oder geschlossene Schleife für ein bestimmtes Medienstück zu verwenden ist. Die Bestimmung kann auf Eigenschaften der Medien basieren, wie beispielsweise Schärfe und Konzentration des verarbeiteten Videos, und/oder die Bestimmung kann auf einer Identifizierung oder einer Kategorie einer Anwendung basieren, die verwendet wird, um das Video zu erhalten, anhand von Beispielen.
  • Es ist zu beachten, dass Operationen der Verfahren 200, 300 nicht notwendigerweise in einer bestimmten Reihenfolge dargestellt werden müssen und dass die Leistung einiger oder aller der Operationen auch in einer anderen Reihenfolge möglich und vorgesehen ist.
  • Die Operationen wurden im Sinne einer einfacheren Beschreibung und Veranschaulichung in der dargestellten Reihenfolge erläutert. Es können Operationen hinzugefügt, weggelassen und/oder gleichzeitig durchgeführt werden, ohne dass dabei vom Schutzumfang der angehängten Ansprüche abgewichen wird.
  • Es ist ferner zu beachten, dass die veranschaulichten Algorithmen 200, 300 jederzeit beendet werden können. In bestimmten Ausführungsformen werden einige oder alle Operationen dieses Prozesses und/oder im Wesentlichen äquivalente Operationen durch die Ausführung durch die hierin bereitgestellten Prozessoren 114, 154 des computerausführbaren Codes der Speichervorrichtungen 112, 152 durchgeführt.
  • II.A. Operationen des tragbaren Systems – Fig. 2
  • Der Algorithmus 200 von 2 wird voranging aus der Perspektive des tragbaren Systems 110 von 1 beschrieben.
  • Der Algorithmus 200 beginnt 201 und der Ablauf führt geht zu einer zuerst dargestellten Operation 202 über, in der das tragbare System 110 in Kommunikation mit der Hostvorrichtung platziert 150 wird. Die entsprechende Aktivität der Hostvorrichtungen 150 für diese Interaktionen 202 wird nachstehend weiter im Zusammenhang mit 3 und insbesondere Block 302 von 3 beschrieben.
  • Die Operation 202 richtet einen Kanal ein, über den Daten und Kommunikationen, wie beispielsweise Mitteilungen oder Anweisungen zwischen einem tragbaren System 110 und der Hostvorrichtung, gemeinsam genutzt werden können 150.
  • Das Verbinden mit der Hostvorrichtung 150 kann das Verbinden mit Draht 129 (z. B. Stecker zum Anschluss) oder drahtlos 131 beinhalten, die beide schematisch mit dem Bezugszeichen 203 in 2 dargestellt sind.
  • Exemplarische Hostvorrichtungen 150 beinhalten eine Head-Unit oder einen an Bord integrierten Computer eines Transportfahrzeuges, wie beispielsweise eines Automobils.
  • Das tragbare System 110 ist in dieser bestimmten Ausführungsform als Dongle, wie beispielsweise durch Aufweisen eines Datenkommunikations-Plug 128 z. B. einen USB-Plug, zum Verbinden mit einem passenden Anschluss 168 der Hostvorrichtungen 150 konfiguriert. Für Datenübertragungen zwischen dem tragbaren System 110 und der Hostvorrichtung 150 kann jeder in seinem jeweiligen Speichersystem 112, 512 ein Protokoll beinhalten, das mit dem Verbindungstyp betrieben werden kann. So kann mit dem Beispiel des USB-Plug/Port das Protokoll ein USB-Mass-Storage-Device-Class(MSC)-Protokoll zur Datenbearbeitung sein. Andere, weiter entwickelte USB-Protokolle, unter anderem Media Transfer Protokol (MTP) können ebenfalls unterstützt werden.
  • Das tragbare System 110 ist in einigen Ausführungsformen zur Verbindung mit der Hostvorrichtung 150 mittels Drahtlosverbindung, gekennzeichnet durch Bezugszahl 131 in 1 und ebenfalls durch Bezugszahl 203 in 2 konfiguriert.
  • Das tragbare System 110, das über eine Datenübertragung mit der Hostvorrichtung 150 in einigen Ausführungsformen verbunden ist, führt einen Handshake-Prozess mit der Hostvorrichtung 150 durch. Der Handshake-Prozess kann auch als durch das Bezugszeichen 203 in 2 angezeigt angesehen werden.
  • Für Ausführungsformen, bei denen beide Geräte eine dynamische Programmiersprache, wie beispielsweise JavaScript, Java oder einer C/C++-Programmiersprache verwenden, kann die Operation 202 eine Handshake- oder andere Schnittstellen-Routine zwischen dem tragbaren System 110 und der Hostvorrichtung 150 unter Verwendung der dynamischen Programmiersprache beinhalten.
  • Der Ablauf des Algorithmus 200 fährt mit Block 204 fort, bei dem der Prozessor 114, beispielsweise über die drahtlose Kommunikationskomponente 130, Quellmedien empfängt, wie Video-Streaming – beispielsweise einer Videodatei, – von einer Quelle, wie beispielsweise einer Remote-Quelle 132, oder virtuellen Videoquelle wie einem Framebuffer oder virtuelle Video-Datei, die mit dem Framebuffer, der in dem System verbunden ist, verknüpft ist – z. B. Systemspeicher – mit dem Bildschirm für das Rendern von einem Remote-Gerät empfangenen Medien. Die Remote-Quelle kann einen Server eines Service-Centers oder eines solchen Systems, wie beispielsweise einen Server des OnStar®-Systems, beinhalten.
  • In verschiedenen Ausführungsformen wird die Quellmediendatei als eine virtuelle Datei, wie beispielsweise in Form eines Links oder eines mit einem Speicherort verknüpften Zeigers bezeichnet, der bestimmte entsprechende Mediendateien oder ein bestimmtes Teilsystem der Mediendateien enthält.
  • Während die vorliegende Technologie Daten mit einem Dateiformat verarbeitet, ist das Ergebnis ein neuartiges Verfahren zum Streamen von Video- und Audioinhalt. Zu den jederzeit verarbeiteten Daten gehören ein Volumen an Standbildern. Die Standbild-Anordnung, die das Volumen (z. B. Tausende) von Standbildern beinhält, erleichtert die Bereitstellung von Hochgeschwindigkeits-Video-Streaming mit geringer Latenzzeit, einschließlich durch Leeren des Cache in der Implementierung eines Plug-in-Massenspeichersystems, wie beispielsweise diejenigen, die das USB-Massenspeicher-Klassen(USB MSC)-Protokoll verwenden.
  • Obgleich die Technologie zur Übertragung und Anzeige-Wiedergabe oder Replikation in Echtzeit, zum Beispiel zur Wiedergabe der Anzeige oder zu Anzeigezwecken für verschiedene Typen von Mediendateien, unter anderem jene mit oder ohne Video und mit oder ohne Audio verwendet werden kann, handelt es sich bei dem hierin vorrangig beschriebenen Typ von Datei vorrangig um eine Videodatei, die eine graphische Ausgabe darstellt, oder Daten zum Ausgeben als eine entsprechende graphische Anzeige auf einem Anzeigebildschirm, die in verschiedenen Ausführungsformen Audio beinhaltet oder auch nicht.
  • Bezugnahmen in der vorliegenden Offenbarung auf Streamingvideo oder Videodateien sollten für verschiedene Ausführungsformen als im Sinne verstanden werden, die jedwede möglichen Mediendateitypen beinhalten.
  • Die Operation 204 kann das Empfangen des Streamingvideo im Ganzen oder in separaten Abschnitte gleichzeitig oder im Lauf der Zeit beinhalten.
  • In einer Ausführungsform ist vorgesehen, dass die Videodatei von einer lokalen Quelle, wie beispielsweise einem virtuellen Videolink, der mit dem Bildspeicher zum System verbunden ist, zum Beispiel dem Systemspeicher, zugehörig ist, mit dem Anzeigebildschirm verbunden ist. In Ausführungsformen handelt es sich bei einer primären, wenn nicht der einzigen Videoquelle, um den Bildspeicher.
  • Die lokale Quelle kann beispielsweise ein Smartphone oder ein anderes mobiles Gerät beinhalten, das entweder das Streamingvideo von einer Remote-Quelle empfängt und sie an das tragbare System 110 weiterleitet, oder das Video an der lokalen Quelle gespeichert hat. Die Übertragung von der lokalen Quelle an ein solches tragbares System 110 kann verdrahtet oder drahtlos erfolgen.
  • Für Ausführungsformen, in denen eine Dienstmedien- oder Multimedia-Anwendung in dem tragbaren System 110 vorhanden ist, kann das Empfangen der Mediendatei (en) das Empfangen unter Verwendung der Anwendung beinhalten.
  • In verschiedenen Ausführungsformen hat das Streamingvideo eine Reihe verschiedener Formate, wie beispielsweise .mpeg, .wmv, oder .avi.
  • Der Ablauf fährt zum Block 206 fort, bei dem der Prozessor 114 eine Anwendungseigenschaft bestimmt. Die Anwendungseigenschaft beinhält in verschiedenen Ausführungsformen eine oder beide einer Anwendungsidentität und einer Anwendungskategorie, die einer Dienstanwendung zugeordnet ist.
  • Ausführungen der Dienstanwendung kann auf dem tragbaren System 110 und/oder auf der Hostvorrichtung 150 laufen. Die Anwendung kann eine Medien- oder Multimedia-Anwendung sein, wie zum Beispiel eine Video-Anwendung, die von einem Remote-Video-Anwendungsserver bedient wird.
  • Eine Identität der Anwendung kann in jeder einer Vielzahl von Arten angezeigt werden. Als Beispiele kann die Anwendung durch Anwendungsnamen, -Code, -Zahl oder einen anderen Indikator identifiziert werden.
  • Wie bereitgestellt, ist eine Anwendungskategorie in einigen Implementierungen die in Operation 206 verwendete Anwendungseigenschaft. Exemplarische Anwendungskategorien beinhalten Live-Video-Performance, gespeichertes Video, Videospiel, Text/Reader, Animation, Navigation, Verkehr, Wetter, und jede Kategorie, die einer oder mehreren Infotainment-Funktionen entspricht.
  • In einer in Betracht gezogenen Ausführungsform beinhalten verschiedene Kategorien Anwendungen einer gleichen oder ähnlichen Art oder Gattung basierend auf Eigenschaften, die die Anwendungen unterscheiden. Es könnte beispielsweise eine erste Wetteranwendung einer ersten Kategorie zugeordnet sein basierend auf ihren Eigenschaften, während eine zweite Wetteranwendung einer anderen Kategorie zugeordnet ist basierend auf ihrer Eigenschaft. Zur Veranschaulichung ist unten eine Liste von sechs (6) exemplarischen Kategorien. Die Formulierungen schwer, mittel und leicht zeigen die relativen Mengen des Formats von Medien (z. B. bewegende Karte, Video oder Text) an, das erwartet wird von, zum Beispiel historisch bereitgestellt wird durch, Anwendungen.
    • 1. Schwer bewegende Karte/schweres Imaging/leichtes Video/leichter Text (z. B. einige Wetteranwendungen)
    • 2. Leicht bewegende Karte/mittleres Imaging/leichtes Video/schwerer Text (z. B. einige andere Wetteranwendungen)
    • 3. Schwer bewegende Karte/mittlerer Text (z. B. einige Navigationsanwendungen)
    • 4. Mittel bewegende Karte/hoher Text (z. B. einige andere Navigationsanwendungen)
    • 5. Leichter Text/schweres Imaging und/oder Video (z. B. einige E-Leseanwendungen, wie zum Beispiel Kinderlesen oder visuelle Bildungs-E-Leseanwendungen)
    • 6. Schwerer Text/leichtes Imaging (z. B. einige andere E-Leseanwendungen).
  • Die Anwendungseigenschaft (beispielsweise Anwendungsidentität oder -Kategorie) können in irgendeiner einer Vielzahl von Wegen erhalten werden. Die Eigenschaft ist in verschiedenen Ausführungsformen vorbestimmt und auf der Hardware-Speichervorrichtung 112 des tragbaren Systems 110 gespeichert oder vorbestimmt und auf der Speichervorrichtung 152 der Hostvorrichtung 150 gespeichert. In einer Ausführungsform wird die Eigenschaft in einer oder mehreren Dateien angezeigt. Die Datei kann eine Nachschlagetabelle enthalten, die jeweils verschiedene Anwendungen (beispielsweise eine Navigationsanwendung) auf eine entsprechende Anwendungseigenschaft(en) abbildet. Die Datei kann auf der Speichervorrichtung 152 der Hostvorrichtung 150 oder auf einem anderen System gespeichert werden, wie beispielsweise einem Remote-Server, der mit dem Bezugszeichen 132 in 1 bezeichnet werden kann.
  • In einer in Betracht gezogenen Ausführungsform bezieht sich eine Anwendungskategorie auf eine Eigenschaft oder Art der Dienstanwendung. In einer in Betracht gezogenen Ausführungsform wird die Anwendungskategorie in Echtzeit bestimmt basierend auf den Aktivitäten der Anwendung statt durch den Empfang oder das Abrufen eines Indikators der Kategorie. Der Prozessor 114 kann bestimmen, dass die Anwendungskategorie zum Beispiel Wetter oder Verkehr sind, wenn festgestellt wird, dass die bereitgestellten visuellen Medien eine sich bewegende Karte sind, die mit Wetter oder Verkehr überlagert ist.
  • In einer in Betracht gezogenen Ausführungsform beinhaltet das Bestimmen der Kategorie das Schaffen einer neuen Kategorie oder neu Zuordnen der Anwendung zu einer bestehenden Anwendung. Während die Anwendung nicht einer Kategorie vorher zugeordnet sein kann, kann der Prozessor 114 bestimmen, dass die Anwendung eine bestimmte Eigenschaft oder Art aufweist, die sich für die Zuordnung zu einer vorhandenen Kategorie eignet. In einer bestimmten in Betracht gezogenen Ausführungsform sind die Anweisungen 118 konfiguriert, den Prozessor 114 zu veranlassen, eine neue Kategorie zu schaffen, um mit einer Anwendung in zugeordnet zu werden, die bestimmt ist, nicht zu einer vorhandenen Kategorie zugeordnet zu sein. In einer Ausführungsform existiert eine Standardkategorie oder ist geschaffen, um solche Anwendungen, die nicht zu anderen Kategorien passt, aufzunehmen.
  • Bei Block 208 bestimmt der Prozessor 114, basierend auf der Anwendungseigenschaft, welche der verfügbaren mehrere Codec-Familien und/oder Mediensystemeigenschaften oder Parameter die Hostvorrichtung 150 verwenden sollte, um die visuellen Inhalte zu verarbeiten.
  • Codec-Familien werden im Folgenden einfach als Codecs bezeichnet und die Mediensystem-Eigenschaften oder Parameter als Codec-Parameter.
  • In einer Ausführungsform beinhält die vorliegende Technologie das Erzeugen von Abbildungs-Daten. Das Abbildungs-Verfahren kann auf dem tragbaren System 110, auf einem Remote-System 132 oder auf der Hostvorrichtung 150 durchgeführt werden. Das Abbildungs-Verfahren beinhält das Bestimmen von Assoziationen zwischen Codec-Familien-Optionen und Anwendungsidentitäten oder -Kategorien, und das Speichern der Assoziationen, wie zum Beispiel in Form einer Nachschlagetabelle. Ein System, das eine Identität oder Kategorie einer Anwendung bestimmt hat (z. B. System 110, 132, 150), kann die Abbildungsdaten konsultieren, um die zugewiesene Codec-Familie zu bestimmen.
  • Abbildungsdaten können auf ähnliche Weise in Verbindung mit Codec-Parametern erzeugt werden, und Abbildungsdaten können Assoziationen zwischen einer Anwendungscharakteristik (beispielsweise Anwendungsidentität oder Anwendungsklasse) und Codec-Parametern beinhalten.
  • In einigen Ausführungsformen, umfasst die Identifizierung des Codecs und/oder der Codec-Parameteroptionen das Abrufen von einer Quelle außerhalb des tragbaren Systems 110, wie beispielsweise der Hostvorrichtung 150 oder einer Remote-Quelle 132, wie beispielsweise einem Remote-Server oder einer Remote-Datenbank.
  • In einem Aspekt der vorliegenden Technologie, werden mehrere verfügbare Codecs und/oder Codec-Parameter, die eine Hostvorrichtung verwenden sollte, um die visuellen Inhalte zu verarbeiten, basierend auf visuellen Eigenschaften bestimmt – z. B. Eigenschaften von Dienstbildern oder -Video. Vorteile der Auswahl der Codecs und/oder Codec-Parameter basierend auf einer Identifizierung oder Kategorie der Dienstanwendung, im Vergleich zu zum Beispiel der Auswahl der Codecs und/oder Codec-Parameter basierend auf visuellen Eigenschaften der Medien, die in Echtzeit übertragen und Anzeigen gerendert werden, beinhalten in einigen Fällen eine geringere Anforderung für die Verarbeitung von Ressourcen und eine schnellere Bearbeitungszeit, um das bevorzugte oder anwendbare Codec und/oder Parameter zu bestimmen.
  • Die Codecs und Codec-Parameter können in irgendeiner einer Vielzahl von Wegen erhalten werden. Wie erwähnt, sind die Codecs und/oder Codec-Parameter in verschiedenen Ausführungsformen vorbestimmt und auf der Hardware-Speichervorrichtung 112 des tragbaren Systems 110 gespeichert oder vorbestimmt und auf der Speichervorrichtung 152 der Hostvorrichtung 150 gespeichert. In einer Ausführungsform werden die Codecs und/oder die Codec-Parameter in einer oder mehreren Dateien identifiziert, wie beispielsweise eine Datei, die eine Nachschlagetabelle enthält, die jede der verschiedenen Anwendungseigenschaften zu einem zugeordneten einen oder mehreren Codecs und/oder Codec-Parameter auf ihr entsprechendes Anwendungs-Merkmal(e) abbildet – z. B. Kennung und/oder Kategorie. Die Abbildungsdatei kann auf der Speichervorrichtung 152 der Hostvorrichtung 150 oder auf einem anderen System gespeichert werden, wie beispielsweise einem Remote-Server, der mit dem Bezugszeichen 132 in 1 bezeichnet werden kann.
  • In einer Ausführungsform ruft der Prozessor 114 bei Operation 208 Betriebs-Codecs und/oder optional Codec-Parameter, die zur Auswahl verfügbar sind, ab, beispielsweise durch Anfordern und Empfangen einer oder mehrerer Listen von der Hostvorrichtung 150. Der Prozessor 114 wählt dann unter den empfangenen Optionen aus.
  • Exemplarische Codecs beinhalten verlustfreie und verlustbehaftete Codecs. In verschiedenen in Betracht gezogenen Ausführungsformen ist mehr als eine unterschiedliche Art oder Höhe der verlustbehafteten Codecs verfügbar.
  • Im Allgemeinen sind verlustbehaftete Codecs konfiguriert, um gewissen Verlust von einigen der Details der Dienstmedien zu ermöglichen – beispielsweise Video – die verarbeitet werden. Die Verarbeitung durch verlustbehaftete Codecs ergibt somit ungenaue Annäherungen, die den ursprünglichen Inhalt darstellen. Die Ergebnisse der Verwendung von verlustbehafteten Codecs beinhalten die Reduzierung einer Datenmenge, die sonst benötigt würde, um den dargestellten Inhalt zu speichern, handzuhaben und/oder zu übertragen. Einige verlustbehaftete Codecs ermöglichen die Reduzierung der visuellen Inhaltsdaten mit keinen oder sehr geringer, wahrnehmbarer Bildverschlechterung für den flüchtigen Betrachter.
  • Im Gegensatz dazu sind verlustbehaftete Codecs konfiguriert, Originaldaten zu ermöglichen, perfekt, oder nahezu perfekt rekonstruiert zu sein bei der Verarbeitung nach der Übertragung. Ein exemplarisches verlustfreies Format oder Kompression ist RFB/VNC.
  • Die Vorteile solcher verlustfreier Formate beinhalten die Fähigkeit, alle oder das Wesentliche der Medien zu übertragen, wie zum Beispiel Video, zum Rendern ohne Unschärfe-Effekte oder andere verminderte visuelle Eigenschaften, und dies ohne eine sorgfältige Verwaltung durch die Verarbeitungsvorrichtung. Das Vermeiden der Unschärfe oder anderer verminderter visueller Eigenschaften ist wichtig für die Anzeige von Medien, bei denen Details wichtig für Genuss oder Verständnis sind. Ein Beispiel dafür sind textbasierte Seiten, die durch Verwischung unklar oder erschwert zu lesen gerendert werden können.
  • Exemplarische verlustbehaftete Formate oder Kompressionen beinhalten H.264, JPEG, und M-JPEG. Das Format kann HEVC beinhalten. Vorteile der Verwendung einer verlustbehafteten Kompression beinhalten die Fähigkeit, rechtzeitig qualitativ hochwertiges Videobild und Grafikdaten zu übertragen und zu rendern.
  • Eine Nachschlagedatei oder Code, der ein oder mehrere Anwendungsidentitäten oder Anwendungskategorien auf jeden der mehreren Codecs bezieht, ist konfiguriert, basierend auf der Art der Medien – z. B. Video oder Bilder – die erwartet werden, von der Anwendung oder Anwendungen der Kategorie empfangen zu werden.
  • In einigen Implementierungen ist die Nachschlagedatei oder Code, der eine oder mehrere Anwendungskategorien oder Identität auf einen Codec bezieht, konfiguriert, sodass Anwendungen, die visuelle Medien bereitstellen, die weniger kritisch bei visuellen Details sind, einem verlustbehafteten Codec zugeordnet sind. Zum Beispiel bei Video-, obwohl Bewegung in der Regel auf dem Bildschirm sichtbar ist, wie eine Person, die über eine Wiese läuft in dem Video, das meiste der Zeit, ändert sich viel von dem Imaging nicht sehr und/oder es gibt keinen hohen Wert des Anzeige-Rendern des gesamten Imaging in hohem Detail. Darüber hinaus könnte am Beispiel einer auf dem Gebiet bewanderten Person, ein gewisses Maß an verlustbehafteten Code verwendet werden, wenn berücksichtigt wird, dass sich das Feld mit der Zeit nicht viel verändert, und wenn berücksichtigt wird, dass im Außeneinsatz der Wert des Bereitstellens des Grases mit hohen visuellen Details nicht sehr hoch ist. Mit anderen Worten gilt, dass das gesamte Benutzeransichtserlebnis oder Verständnis nicht sehr, wenn überhaupt, vermindert iwrd, wenn einige der Details bei der Verarbeitung unter Verwendung eines verlustbehafteten Codecs entfernt werden.
  • Die Nachschlagedatei oder -Code kann konfiguriert werden, sodass Anwendungen, die visuelle Medien, wie beispielsweise Text oder kartenbasierte Navigationsinformationen, bereitstellen, mit einem verlustfreien-Codec verbunden sind, oder zumindest einem weniger verlustbehafteten Codec. Der Grund ist, dass das Verwerfen von Details bei solchen Arten von Medien eher von einem Betrachter wahrgenommen werden, was das Zuschauererlebnis senkt, was das Verständnis unbequem oder schwierig macht.
  • Für Ausführungsformen, in denen mehrere verlustbehaftete Codes zur Verfügung stehen, je mehr Medien einer Dienstanwendung dazu neigen, eine bestimmte Art von Medien bereitzustellen, wie zum Beispiel Video im Vergleich zu Text, desto verlustbehafteter ist der Codec, der der identifizierten Anwendung oder Dienstanwendungskategorie zugeordnet ist. Eine Anwendung, die zu verschiedenen Zeiten verschiedene Formen von Medien bereitstellt, zum Beispiel Video, Karten und Text, wie eine Wetter- oder Nachrichtenanwendung, die, durch ihre Identität oder Kategorie, mit einem Level von verlustbehafteten Codecs entsprechend den jeweiligen Leveln dieser verschiedenen Arten von Medien, die die Anwendung in der Vergangenheit bereitstellt, in Verbindung gebracht werden können.
  • Als Beispiel für eine Anwendungskategorie/Codec-Abbildung, kann eine Anwendung, die bestimmte ist, einer Navigationskategorie zugeordnet zu sein, in einer Nachschlagedatei oder -Code zugeordnet werden, wo auch immer sie gespeichert ist (z. B. Speicher 112, 152 oder Remote 132), mit einem verlustfreien-Codec. Als weitere exemplarische Anwendungskategorie/Codec-Abbildung, kann die Nachschlagedatei oder -Code konfiguriert sein, den Codec/Kategorie auf einen verlustbehafteten Codec abbzubilden, wenn die Anwendung bestimmt wird, einer Video Kategorie zugeordnet zu sein.
  • Exemplarische Codecs-Parameter beinhalten beliebige einer Vielzahl von Kompressionsverhältnissen. Als ein anderes Beispiel können die Codecs-Parameter beliebige einer Vielzahl von Auflösungsleveln beinhalten.
  • Wenn eine Dienstanwendung bestimmt ist, einer Navigationskategorie zugeordnet zu sein, als ein Beispiel, kann das System 110 bestimmen, basierend auf der Anwendungseigenschaft, dass eine relativ hohe Auflösung (wie 1280×800 Pixel und/oder ein Kompressionsverhältnis von 0,5) bei der Verarbeitung der entsprechenden visuellen Navigationsmedien von der Anwendung verwendet werden sollten. Es sollte verstanden werden, dass diese Parameterwerte rein exemplarisch sind.
  • Als ein weiteres Beispiel, wenn eine Anwendung bestimmt ist, einer Video-Kategorie zugeordnet zu sein, kann das System 110 bestimmen, basierend auf der Anwendungseigenschaft, dass eine niedrigere Auflösung, wie 800×480 Pixel und/oder ein niedrigeres Kompressionsverhältnis, wie beispielsweise 0,2, bei der Verarbeitung der entsprechenden Video-Medien von der Anwendung verwendet werden sollten. Wiederum sind diese Parameterwerte rein exemplarisch.
  • Wie dies erwähnt wurde, besitzt das tragbare System 110 bei einigen Ausführungsformen in dem Hardware-Speichervorrichtung 112 einen Code einer dynamischen Programmiersprache 125, wie beispielsweise JavaScript, Java oder einer C/C++-Programmiersprache. Die Sprache kann in System 110-Operationen verwendet werden, einschließlich Bildverarbeitungsoperationen, wie beispielsweise die Funktion der Auswahl eines bevorzugten oder geeigneten Codec und/oder Codec-Parameter, die unter den Umständen zu verwenden sind.
  • Unter weiterer Bezugnahme auf 2 sendet, bei Block 210, der Prozessor 114 eine Kommunikation an die Hostvorrichtung 150, die den Codec und/oder Codec-Parameter anzeigt, die für den Einsatz bei der Verarbeitung der Medien – z. B. visuelle Inhalte – bestimmt sind. Die Übertragung wird durch die Bezugszahl 211 gekennzeichnet. Nachstehend wird die entsprechende Aktivität der Hostvorrichtung 150 im Zusammenhang mit 3 und insbesondere in Block 304 dort beschrieben.
  • Bei Block 212 sendet der Prozessor 114 den Medieninhalt an die Hostvorrichtung 150 für das Anzeige-Rendern auf der Hostvorrichtung 150 unter Verwendung des bestimmten Codec und/oder des Codec-Parameters. Die Übertragung wird durch die Bezugszahl 213 gekennzeichnet. Nachstehend wird die entsprechende Aktivität der Hostvorrichtung 150 im Zusammenhang mit 3 und insbesondere in Block 306 dort beschrieben.
  • Bei Block 214, erzeugt, identifiziert, ruft ab, empfängt oder bezieht der Prozessor 114 anderweitig Anweisungen oder Mitteilungen, die zum Ändern einer Einstellung oder Schaffen einer Einstellung oder Funktion konfiguriert sind. Für Anweisungen zum Anpassen einer Einstellung oder einer Funktion des tragbaren Systems 110 führt der Prozessor 114 die Anweisung aus. Für Anweisungen zum Anpassen einer Einstellung oder einer Funktion der Hostvorrichtungen 150 erzeugt der Prozessor 114 die Kommunikation und sendet 215 sie an die Hostvorrichtung 150. Beide Kommunikationskanäle werden durch eine Doppelpfeillinie angezeigt, die mit 215 in 2 markiert ist. Entsprechende Aktivität der Hostvorrichtung 150 ist mit dem Bezugszeichen 312 angezeigt.
  • Die Funktion kann sein oder sich auf mehrere tragbare-Systemfunktionen beziehen, die die Operation des Bestimmens beeinflussen, welchen der mehreren verfügbaren Codecs zu verwenden ist, um den visuellen Inhalt zu verarbeiten.
  • In verschiedenen Ausführungsformen kann die Operation 214 das Empfangen eines Signals oder einer Nachricht von der HMI-Schnittstellenkomponente 126 an dem Prozessor 114 beinhalten. Die Schnittstellenkomponente 126 kann wenigstens, zum Beispiel, einen Sensor beinhalten, der konfiguriert ist, dass er Benutzereingaben erfasst, die über eine Berührung, einen Klang oder eine berührungslose Bewegung oder eine Geste bereitgestellt werden. Die Schnittstelle 126 können eine Taste, Knopf, oder Mikrofon, zum Beispiel, beinhalten, durch die der Benutzer eine Eingabe an das tragbare System 110 zur Beeinflussung bzw. Schaffung von Einstellungen oder Funktionen des tragbaren Systems 110 und/oder der Hostvorrichtung 150 bereitstellen kann.
  • Wie erwähnt sind das tragbare System 110 und die Hostvorrichtung 150 für eine bidirektionale Kommunikation zwischen ihnen konfiguriert. Die Konfiguration ermöglicht in einigen Fällen die gleichzeitige bidirektionale Kommunikation zwischen ihnen. Auch gemäß Beschreibung ist bei verschiedenen Ausführungsformen die Konfiguration so angeordnet, dass sie die Datenübertragungen gemäß TDMA-Kanalzugriffsverfahren ermöglicht.
  • Ein Vorwärtskanal, von dem tragbaren System 110 zu der Hostvorrichtung 150, trägt den ausgewählten 210 Codec und/oder Codec-Parameter, die Dienstmedien (z. B. Video- oder Bilddateien) und alle Anweisungen oder nachrichten, die konfiguriert sind, um Funktionen oder Einstellungen der Hostvorrichtung 150 zu beeinflussen. Ein Rückwärtskanal könnte von der Hostvorrichtung 150 zu dem tragbaren System 110 alle Anweisungen oder Nachrichten tragen, die konfiguriert sind, um eine Funktion oder Einstellung des tragbaren Systems 110 zu verändern oder zu schaffen.
  • Der Prozess 200 kann enden 217 oder Abschnitte davon können beispielsweise im Zusammenhang mit einer Datei, die zu einem neuen Video gehört oder mit nachfolgenden Abschnitten desselben Videos wiederholt werden.
  • In verschiedenen Ausführungsformen kann das tragbare System 110 beispielsweise durch Einstellungen oder Nutzerpräferenzen personalisiert oder angepasst werden. Diese können am tragbaren System 110 durch jedwede einer Reihe verschiedener Verfahren, unter anderem durch die Hostvorrichtung 150, einen Personalcomputer (nicht dargestellt), ein Mobiltelefon o. ä. programmiert werden. In einigen Ausführungsformen werden standardmäßige Einstellungen oder Präferenzen bereitgestellt, ehe irgendeine Personalisierung durchgeführt wird. Die Einstellungen oder Funktionen, die personalisiert werden sollen, können jegliche der hierin beschriebenen beinhalten, wie beispielsweise eine Art, durch die eingehendes Video verarbeitet wird, oder Wiedergabeeigenschaften an der Hostvorrichtung 150, wie beispielsweise zurückspulen, vorspulen. Die Art und Weise, durch die eingehendes Video verarbeitet wird, kann zum Beispiel eine Art und Weise beinhalten, durch die Codecs oder Codec-Parameter ausgewählt werden. Die Art und Weise, durch die Codecs oder Codec-Parameter ausgewählt werden, kann andere Prozesse beeinflussen, wie zum Beispiel durch das zur Verfügung stellen von Bandbreite für einen VoIP-Anruf.
  • II.B. Operationen der Hostvorrichtung – Fig. 3
  • Der Algorithmus 300 von 3 wird voranging aus der Perspektive der Hostvorrichtungen 150 von 1 beschrieben. Wie beschrieben, kann die Hostvorrichtung 150 eine Head-Unit oder einen an Bord integrierten Computer eines Transportfahrzeuges, wie beispielsweise einem Automobil, beinhalten oder Bestandteil der Genannten sein.
  • Der Algorithmus 300 starrtet 301 und der Ablauf begibt sich zu der ersten Operation 302 in der die Hostvorrichtung 150 in Kommunikation mit dem tragbaren System 110 platziert wird. Das Verbinden mit der Hostvorrichtung 150 kann das Verbinden über eine Draht- oder Drahtlosverbindung beinhalten 129, 131.
  • Die Verbindung von Block 302 kann einen Handshake-Prozess zwischen der Hostvorrichtung 150 und dem tragbaren System 110 beinhalten, der ebenfalls als durch Bezugszahl 203 in den 2 und 3 gekennzeichnet erachtet werden kann. Der Prozess unter Operation 302 richtet einen Kanal ein, über den Daten und Kommunikationen, wie beispielsweise Mitteilungen oder Anweisungen, zwischen dem tragbaren System 110 und der Hostvorrichtung 150 gemeinsam genutzt werden können.
  • Für Ausführungsformen, bei denen beide Geräte eine dynamische Programmiersprache, wie beispielsweise JavaScript, Java oder einer C/C++-Programmiersprache verwenden, kann die Operation 302 eine Handshake-Routine zwischen dem tragbaren System 110 und der Hostvorrichtung 150 unter Verwendung der dynamischen Programmiersprache beinhalten.
  • Der Ablauf fährt zum Block 304 fort, bei dem der Prozessor 154 empfängt den Codec und/oder Codec-Parameter, die auf dem tragbaren System 110 bestimmt sind, von dem tragbaren System 110. Die Übertragung wird im Zusammenhang mit der dazugehörigen Operation 210 des tragbaren Systems 110 durch Bezugszahl 211 gekennzeichnet.
  • Bei Block 306 empfängt der Prozessor 154 die Mediendatei von dem tragbaren System 110. Die Übertragung wird im Zusammenhang mit der dazugehörigen Operation 212 des tragbaren Systems 110 durch Bezugszahl 213 gekennzeichnet.
  • Der Ablauf fährt zum Block 308 fort, bei dem der Prozessor 154 die Mediendatei verarbeitet, die unter Verwendung des empfangenen Codecs und/oder Codec-Parameter empfangen wird.
  • Die Mediendatei kann eine beliebige einer Vielzahl von Formen annehmen, beispielsweise in Form von einem Streaming-Video (beispielsweise .mpeg) oder in Form von Bildauszüge (z. B. .jpegs), die das Video ausmachen. In einer Ausführungsform ist beispielsweise das tragbare System 110 konfiguriert, ein eingehendes Video in eine Vielzahl von indizierten (beispielsweise aufeinanderfolgend geordneten) Bildkomponenten aufzuteilen, und sendet bei Block 212 die Bildkomponenten, die dem Video entsprechen, an die Hostvorrichtung 150 zum Anzeige-Rendern der Bilder als Video unter Verwendung des empfangenen Codes und/oder Codec-Parameters.
  • Wie beschrieben, hat die Hostvorrichtung 150 in einigen Ausführungsformen in seinem Speichervorrichtung 152 den Code einer dynamischen Programmiersprache 164, wie beispielsweise JavaScript, Java oder einer C/C++-Programmiersprache, gespeichert. Die Sprache beinhaltet in einigen Implementierungen ein Anwendungsframework für bildbearbeitende Funktionen der Hostvorrichtungen 150. Der Programmiersprachencode kann die Einstellungen für Datenübertragungen zwischen dem tragbaren System 110 und der Hostvorrichtung 150, wie beispielsweise Parameter einer oder mehrerer APIs, und/oder die Art und Weise einstellen, mit der Mediendateien (z. B. Video- oder Bilddateien) unter Verwendung des Codecs und/oder Codec-Parameter verarbeitet werden.
  • Der Ablauf fährt zum Block 310 fort, bei dem das resultierende Video übertragen wird, über Draht oder drahtlos, an eine visuelle Anzeigekomponente 174. Eine exemplarische visuelle Komponente ist ein Infotainment-Bildschirm eines größeren Systems 151, wie beispielsweise ein Automobil. Die Übertragung wird durch die Bezugszahl 309 in 3 gekennzeichnet.
  • In Block 312, erzeugt die Hostvorrichtung 150 identifiziert, ruft ab, empfängt oder bezieht anderweitig Anweisungen oder Mitteilungen, wie beispielsweise Befehle oder Anfragen zum Ändern einer Einstellung oder einer Funktion. Hinsichtlich der Anweisungen zum Anpassen einer Einstellung oder einer Funktion der Hostvorrichtungen 150 führt der Prozessor 154 die Anweisung aus. Hinsichtlich der Anweisungen zum Anpassen einer Einstellung oder einer Funktion des tragbaren Systems 110 sendet der Prozessor 154 die Anweisung oder Mitteilung an das tragbare System 110. Beide Kommunikationskanäle werden durch die Doppelpfeillinie angezeigt, die mit 215 in 3 markiert ist. Entsprechende Aktivität des tragbaren Systems ist mit dem Bezugszeichen 214 angezeigt.
  • Die Erzeugung von Kommunikationen 215 von der Hostvorrichtung 150 an das tragbare System 110 kann durch eine Nutzereingabe in eine Eingabekomponente 172 der Hostvorrichtung 150 ausgelöst werden. Die Eingabe kann beispielsweise eine Touch-Eingabe an einem berührungssensitiven Bildschirm 174 oder eine Audioeingabe in ein Fahrzeugmikrophon 176 sein.
  • In verschiedenen Ausführungsformen ist die Hostvorrichtung 150 (z. B. Code 158 davon) konfiguriert, um die Erzeugung von Nachrichten oder Anweisungen zur Personalisierung oder Anpassung des tragbaren Systems 110 zu ermöglichen, wie beispielsweise durch dazu konfiguriert sein, eine Funktion oder Einstellung des tragbaren Systems 110 zu schaffen oder anzupassen, wie durch eine Benutzereingabe an die Hostvorrichtung 150 angefordert. Einstellungen oder Funktionen des tragbaren Systems 110 können auch auf andere Wege erschaffen oder eingestellt werden, beispielsweise über einen Personalcomputer (nicht gezeigt), ein Mobiltelefon oder dergleichen. Die Einstellungen oder Funktionen des tragbaren Systems 110, die personalisiert werden sollen, können jegliche der hierin beschriebenen beinhalten, wie beispielsweise eine Art, durch die eingehendes Video an dem tragbaren System 110 verarbeitet wird, oder Wiedergabeeigenschaften.
  • Der Prozess 300 oder Abschnitte davon können beispielsweise im Zusammenhang mit einem neuen Video oder Media, oder mit nachfolgenden Abschnitten desselben Videos wiederholt werden.
  • III. Ausgewählte Vorteile der Vorliegenden Technologie
  • Vorstehend werden viele Vorteile und Nutzen der vorliegenden Technologie beschrieben. Der vorliegende Abschnitt hebt einige dieser noch einmal hervor und verweist auf weitere. Die Vorteile werden exemplarisch angeführt und sind nicht als im die Vorteile der vorliegenden Technologie erschöpfenden Sinne zu verstehen.
  • Die Technologie ermöglicht die Übertragung und das Echtzeit-Anzeige-Rendern oder Replizieren von Videodaten in einer effizienten und effektiven Art und Weise von einem tragbaren System zu einem Hostvorrichtung, wie beispielsweise einer Automobilkopfeinheit.
  • Die beschriebenen Systeme und Algorithmen können zur Übertragung und Anzeige-Rendern oder Replizieren in Echtzeit von Hochgeschwindigkeits-Videostreams über Verbindungen mit einer relativ niedrigen Datenübertragungsgeschwindigkeit, wie beispielsweise einer USB-Verbindung, verwendet werden. Auf diese Weise stehen erweiterte Funktionen anhand relativ niedriger Leistungsfähigkeit USB-Geräteklasse-Komponenten, während sie anders nicht vorhanden wären. Und wenn eine höhere oder Hochleistungsklassevorrichtung verfügbar ist (beispielsweise wenn das Fahrzeug bereits mit oder für solche Vorrichtungsklassen konfiguriert ist), kann das System konfiguriert sein, direkt die höheren Leistungsklassevorrichtung verwenden, um die erweiterten Funktionen bereitzustellen.
  • Das tragbare System erleichtert das effiziente und effektive Streaming von Video- oder anderen visuellen Mediendaten an einer existierenden Hostvorrichtung, wie beispielsweise ein alter, an Bord eines Fahrzeuges integrierter Computer, in einem gebrauchten, im Verkehr befindlichen Fahrzeug. Alte Systeme weisen begrenzte Rechenleistung und Software und/oder Hardware-Kapazität auf, im Vergleich zu einigen sehr modernen und Systemen der nächsten Generation. Die vorliegende Technologie ermöglicht die Präsentation von Video von einer Remote-Quelle zu einem Benutzer durch solche Alte Systeme, und mit einer Qualität und Timing vergleichbar mit den sehr modernen und Systemen der nächsten Generation.
  • Die Vorteile der Verwendung verlustfreier Kompressionen beinhalten ihre Fähigkeit, alle oder das Wesentliche der Dienstmedien zu übertragen, wie zum Beispiel Video, zum Rendern ohne Unschärfe-Effekte oder andere verminderte visuelle Eigenschaften, und dies ohne eine sorgfältige Verwaltung an der Verarbeitungsvorrichtung. Vorteile der Verwendung einer verlustbehafteten Kompression beinhalten die Fähigkeit, rechtzeitig – z. B. in Echtzeit – qualitativ hochwertige visuelle Medien, wie beispielsweise Video- und Grafikdaten zu übertragen und zu rendern.
  • Die Verfahren für die Übertragung und Echtzeit-Anzeige-Rendern oder Replizieren von Videodaten können auch andere lokale Verfahren beeinflussen, beispielsweise durch zur Verfügung stellen von Bandbreite an einem Host-Fahrzeug für einen VoIP-Anruf.
  • Als weiterer Vorteil können die hierin beschrieben Fähigkeiten bereitgestellt werden unter Verwendung eines bequemen tragbaren Systems. Das tragbare System kann hauptsächlich oder vollständig mit Teilen hergestellt werden, die leicht verfügbar und relativ kostengünstig sind.
  • IV. Schlussfolgerung
  • Hierin werden verschiedene Ausführungsformen der vorliegenden Offenbarung offenbart. Die offenbarten Ausführungsformen sind lediglich Beispiele, die in verschiedenen alternativen Formen und Kombinationen davon ausgebildet werden können.
  • Die vorstehend beschriebenen Ausführungsformen sind lediglich exemplarische Veranschaulichungen von Implementierungen, die für ein leichtes Verstehen der Grundgedanken der Offenbarung angeführt werden. An den vorstehend beschriebenen Ausführungsformen können Abweichungen, Modifizierungen und Kombination vorgenommen werden, ohne dabei vom Schutzumfang der Ansprüche abzuweichen. Diese Änderungen, Modifizierungen und Kombinationen sind über die folgenden Ansprüche hierin in dem Schutzumfang dieser Offenbarung enthalten.

Claims (10)

  1. Tragbares System, das Folgendes umfasst: einen Prozessor; und eine nicht-temporäre Speichervorrichtung, umfassend computerausführbaren Code, der bei seiner Ausführung durch den Prozessor den Prozessor zum Durchführen von Operationen veranlasst, umfassend: Empfangen, von einer Quelle, einer Mediendatei, die visuellen Inhalt umfasst; Bestimmen einer Anwendungseigenschaft ausgewählt aus einer Gruppe bestehend aus einer Anwendungsidentität und einer Anwendungskategorie, die einer Anwendung, die bei der Lieferung des visuellen Inhalts zu verwenden ist, zugeordnet ist; Bestimmen, auf der Grundlage der Anwendungseigenschaft, welche von mehreren verfügbaren Codecs die Hostvorrichtung verwenden sollte, um die visuellen Inhalte zu verarbeiten; Senden einer Kommunikation an die Hostvorrichtung, die den Codec anzeigt, der bei der Verarbeitung des visuellen Inhalts zu verwenden ist; und Senden des visuellen Inhalts an die Hostvorrichtung für das Anzeige-Rendern unter Verwendung des bestimmten Codec.
  2. Tragbares System nach Anspruch 1, worin die Operationen ferner aufweisen: Bestimmen, auf der Grundlage der Anwendungseigenschaft, welche der mehreren verfügbaren Codec-Parametern zu verwenden sind, um den visuellen Inhalt zu verarbeiten; und Senden einer Kommunikation an die Hostvorrichtung, die den Codec-Parameter anzeigt, der bei der Verarbeitung des visuellen Inhalts zu verwenden ist.
  3. Tragbares System nach Anspruch 2, worin die verfügbaren Codec-Parameter verschiedene Kompressionsverhältnisse und verschiedene Auflösungsstufen umfassen.
  4. Tragbares System nach Anspruch 1, worin die verfügbaren Codecs einen verlustfreien Codec und mehrere verlustbehaftete Codecs beinhält, und die Operation des Bestimmens des zu verwendenden Codecs, um den visuellen Inhalt zu verarbeiten, die Auswahl des verlustfreien Codecs oder eines der mehreren verlustbehafteten Codecs umfasst.
  5. Tragbares System nach Anspruch 1, worin die Operationen ferner aufweisen: Empfangen einer von der Hostvorrichtung gesendeten Anweisung; und Ändern einer Funktion am tragbaren System gemäß der Anweisung.
  6. Tragbares System nach Anspruch 5, worin die Funktion die Operation des Bestimmens beeinflusst, welcher der mehreren verfügbaren Codecs zu verwenden ist, um den visuellen Inhalt zu verarbeiten.
  7. Tragbares System nach Anspruch 1, ferner aufweisend eine Human-Machine-Schnittstelle, die mit dem Prozessor verbunden ist, worin die Operationen ferner aufweisen: Empfangen eines Nutzereingabesignals über die Human-Machine-Schnittstelle; und Durchführen, ausgehend vom Nutzereingabesignal, von wenigstens einer Systemprogrammierungsroutine, die aus einer Gruppe bestehend aus den Folgenden ausgewählt wird: Schaffen einer Einstellung, die einer Funktion des tragbaren Systems zugeordnet ist, und Speichern der Einstellung in der Speichervorrichtung; und Ändern einer vorher in der Speichervorrichtung gespeicherten Einstellung.
  8. Tragbares System nach Anspruch 1, worin: die Hostvorrichtung Bestandteil eines Automobils ist, das einen Universal Serial Bus (USB) aufweist; das tragbare System einen entsprechenden USB-Stecker für das Koppeln mit dem Automobil umfasst; und der computerausführbare Code ein USB-Massenspeichervorrichtungs-Klassen-Verarbeitungsprotokoll oder ein fortgeschritteneres Vorrichtungsklassen-Protokoll zur Verwendung beim Senden der Kommunikation und des visuellen Inhalts an die Hostvorrichtung umfasst.
  9. Host-System, Folgendes umfassend: einen Prozessor, der konfiguriert ist, um mit einem Kommunikationsanschluss und einer Anzeigebildschirmvorrichtung zu kommunizieren; und ein nicht-temporäres Speichervorrichtung, aufweisend einen computerausführbaren Code, der bei seiner Ausführung durch den Prozessor den Prozessor zum Durchführen von Operationen veranlasst, aufweisend: Durchführen einer Handshake-Funktion mit einem tragbaren System mit einem Kommunikationsstecker, der mit dem Kommunikationsanschluss verbunden ist; Empfangen, von dem tragbaren System, einer Kommunikation, die anzeigt (i) einen Codec, der auf dem tragbaren System basierend auf einer Dienstanwendung ausgewählt ist, die in dem tragbaren System und/oder der Hostvorrichtung vorliegt, und (ii) einen Codec-Parameter, der auch auf dem tragbaren System basierend auf der Anwendung ausgewählt ist; Empfangen von visuellem Inhalt von dem tragbaren System; Verarbeitung des visuellen Inhalts unter Verwendung des empfangenen Codecs und der Codec-Parameter, der verarbeitete visuelle Inhalte ergibt; und Veröffentlichung des verarbeiteten visuellen Inhalts unter Verwendung der Anzeigebildschirmvorrichtung.
  10. Nicht-temporäres computerlesbares Speichervorrichtung, aufweisend einen computerausführbaren Code, der bei seiner Ausführung durch einen Prozessor den Prozessor zum Durchführen von Operationen veranlasst, aufweisend: Empfangen, von einer Quelle, einer Mediendatei, die visuellen Inhalt umfasst; Bestimmen einer Anwendungseigenschaft ausgewählt aus einer Gruppe bestehend aus einer Anwendungsidentität und einer Anwendungskategorie, die einer Anwendung, die bei der Darstellung des visuellen Inhalts zu verwenden ist, zugeordnet ist; Bestimmen, auf der Grundlage der Anwendungseigenschaft, welche von mehreren verfügbaren Codecs eine Hostvorrichtung verwenden sollte, um die visuellen Inhalte zu verarbeiten; Senden einer Kommunikation an die Hostvorrichtung, die den Codec anzeigt, der bei der Verarbeitung des visuellen Inhalts zu verwenden ist; und Senden des visuellen Inhalts an die Hostvorrichtung für das Anzeige-Rendern unter Verwendung des bestimmten Codec.
DE102016113764.2A 2015-07-29 2016-07-26 Dynamische bildschirmreplikation und display-darstellung in echtzeit basierend auf medienanwendungseigenschaften Withdrawn DE102016113764A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/812,025 2015-07-29
US14/812,025 US20170034551A1 (en) 2015-07-29 2015-07-29 Dynamic screen replication and real-time display rendering based on media-application characteristics

Publications (1)

Publication Number Publication Date
DE102016113764A1 true DE102016113764A1 (de) 2017-02-02

Family

ID=57795901

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016113764.2A Withdrawn DE102016113764A1 (de) 2015-07-29 2016-07-26 Dynamische bildschirmreplikation und display-darstellung in echtzeit basierend auf medienanwendungseigenschaften

Country Status (3)

Country Link
US (1) US20170034551A1 (de)
CN (1) CN106411841A (de)
DE (1) DE102016113764A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10430665B2 (en) 2017-09-07 2019-10-01 GM Global Technology Operations LLC Video communications methods using network packet segmentation and unequal protection protocols, and wireless devices and vehicles that utilize such methods
US10567512B2 (en) * 2017-10-13 2020-02-18 GM Global Technology Operations LLC Systems and methods to aggregate vehicle data from infotainment application accessories
US11006184B2 (en) * 2018-05-16 2021-05-11 Quantum Radius Corporation Enhanced distribution image system
CN109120988B (zh) * 2018-08-23 2020-07-24 Oppo广东移动通信有限公司 解码方法、装置、电子设备以及存储介质
CN111010587A (zh) * 2019-12-24 2020-04-14 网易(杭州)网络有限公司 直播控制方法、装置及系统
JP2022051363A (ja) 2020-09-18 2022-03-31 キオクシア株式会社 メモリシステム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9049690B2 (en) * 2006-12-27 2015-06-02 Kyocera Corporation Communication system, wireless communication terminal, communication method, wireless communication method, wireless communication apparatus and control method thereof
JP5623287B2 (ja) * 2007-12-05 2014-11-12 ジョンソン コントロールズテクノロジーカンパニーJohnson Controls Technology Company 車両ユーザインターフェースシステム及び方法
US9183580B2 (en) * 2010-11-04 2015-11-10 Digimarc Corporation Methods and systems for resource management on portable devices
KR101677638B1 (ko) * 2010-09-29 2016-11-18 엘지전자 주식회사 이동 단말기 및 그 제어 방법

Also Published As

Publication number Publication date
US20170034551A1 (en) 2017-02-02
CN106411841A (zh) 2017-02-15

Similar Documents

Publication Publication Date Title
DE102016113764A1 (de) Dynamische bildschirmreplikation und display-darstellung in echtzeit basierend auf medienanwendungseigenschaften
DE102014220302B4 (de) Verfahren zur Durchführung einer Aktions-Erkennung auf einem Bild eines Fahrers in einem Fahrzeug sowie entsprechendes Nichtflüchtiges, Computer-lesbares Speichermedium und Verfahren zum Lernen eines Random Forest Modells zur Aktionserkennung
DE102016113431B4 (de) System und Verfahren zur ereignisbasierten Synchronisierung bei der Mediendateiübertragung und Anzeigewiedergabe zwischen einem Peripheriesystem und einem Host-Gerät
DE102018121808A1 (de) Verfeinern von synthetischen daten mit einem generative adversarial network unter verwendung von hilfseingaben
DE112011105241T5 (de) Fernsteuerkommunikationsvorrichtung und Navigationsvorrichtung
DE102015104344A1 (de) System und verfahren für ein fahrzeugsystem mit einem hochgeschwindigkeitsnetz
DE102019106217A1 (de) Edge-unterstützte Datenübertragung für verbundene Fahrzeuge
DE112012004778T5 (de) Universeller Bus im Auto
DE112016000715T5 (de) Verfahren, systeme und medien zum präsentieren eines vorschlags, videos anzuschauen
DE202009019122U1 (de) Mobiles System für Virtuelle und erweiterte Realität
WO2014063896A1 (de) Vorrichtung und verfahren zur bereitstellung multimedialer daten in einem kraftfahrzeug
DE102015204991A1 (de) Verfahren und Vorrichtung zum Steuern eines Audio/Video-Bridging-Datenstroms für ein Fahrzeugethernet
DE102018132369A1 (de) Fahrzeugübergreifende zusammenarbeit zur selbstabbildung von fahrzeugen
DE102016209881A1 (de) Vorrichtung und Verfahren zum Steuern einer sich mit dem Fahrzeug verknüpfenden Mobilvorrichtung
DE102020111960A1 (de) Dynamische vergabe von rechenressourcen zur erzeugung von höhepunkten in cloudspiel-systemen
DE102011056113A1 (de) Videoübertragungsverfahren und System mit Bildqualitätsjustierfunktion
DE102014100183B4 (de) Verfahren und Vorrichtung zum Verwenden eines separaten Rückwärtskanals für Benutzereingaben bei der Replizierung der Anzeige eines mobilen Geräts
DE102010030068A1 (de) Verarbeitung von Bilddaten, die durch ein Fahrzeug aufgenommen werden
DE102016124499A1 (de) Verfahren und System zum Kommunizieren eines Videobildes
DE112010005047T5 (de) Fahrzeuginformationssystem
DE102018209377A1 (de) Verfahren zur Darstellung von AR-/VR-Inhalten auf einem mobilen Endgerät und mobiles Endgerät, auf dem AR-/VR-Inhalte dargestellt werden
DE102019118189A1 (de) Koppelung von Benutzeroberflächen
DE112014006697B4 (de) Fahrzeugbildübertragungssystem
DE102007062882B4 (de) Präsentations-System und -Verfahren
DE102012019063A1 (de) Verfahren und System zum Bereitstellen von Daten in einem Kraftwagen

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: MANITZ FINSTERWALD PATENT- UND RECHTSANWALTSPA, DE

Representative=s name: MANITZ, FINSTERWALD & PARTNER GBR, DE

Representative=s name: MANITZ FINSTERWALD PATENTANWAELTE PARTMBB, DE

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee