DE102008048649A1 - System und Verfahren zum Synchronisieren einer simultanen Medienstromwiedergabe über nichtsynchronisierte Netzsynchronisations-/-Taktinseln - Google Patents

System und Verfahren zum Synchronisieren einer simultanen Medienstromwiedergabe über nichtsynchronisierte Netzsynchronisations-/-Taktinseln Download PDF

Info

Publication number
DE102008048649A1
DE102008048649A1 DE102008048649A DE102008048649A DE102008048649A1 DE 102008048649 A1 DE102008048649 A1 DE 102008048649A1 DE 102008048649 A DE102008048649 A DE 102008048649A DE 102008048649 A DE102008048649 A DE 102008048649A DE 102008048649 A1 DE102008048649 A1 DE 102008048649A1
Authority
DE
Germany
Prior art keywords
target devices
nearest
protocol
time
source device
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.)
Granted
Application number
DE102008048649A
Other languages
English (en)
Other versions
DE102008048649B4 (de
Inventor
Kevin B. Hillsboro Stanton
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of DE102008048649A1 publication Critical patent/DE102008048649A1/de
Application granted granted Critical
Publication of DE102008048649B4 publication Critical patent/DE102008048649B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • H04J3/0667Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/062Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
    • H04J3/0632Synchronisation of packets and cells, e.g. transmission of voice via a packet network, circuit emulation service [CES]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/28Timers or timing mechanisms used in protocols
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Electric Clocks (AREA)

Abstract

Ein System und ein Verfahren zum Synchronisieren einer simultanen Medienstromwiedergabe über disjunkte Netzsynchronisations-/-taktinseln. Eine Ausführungsform eines Verfahrens beinhaltet das Ermitteln eines einem Quellengerät nächstgelegenen Geräts in einem Netzwerk-Kommunikationsweg zwischen dem Quellengerät und einem oder mehreren Zielgeräten. Hier werden Takte des nächstgelegenen Geräts und des einen oder der mehreren Zielgeräte synchronisiert, und ein Takt des Quellengeräts wird nicht unbedingt mit den Takten des nächstgelegenen Geräts und des einen oder der mehreren Zielgeräte synchronisiert. Dann wird eine aktuelle Zeit für das nächstgelegene Gerät ermittelt. Eine Startzeit wird auf mindestens die aktuelle Zeit plus eine maximale Latenzzeit über den Netzwerk-Kommunikationsweg festgesetzt. Ein Datenstrom und die Startzeit werden zum Rendern an das eine oder die mehreren Zielgeräte gesendet. Es werden weitere Ausführungsformen beschrieben und beansprucht.

Description

  • Hintergrund der Erfindung
  • Wenn mehrere Geräte einen entsprechenden Inhalt rendern, sind eine exakte Zeit- oder Taktsynchronisation und eine Frequenzgenauigkeit/-stabilität erforderlich. Beispiele für diesen entsprechenden Inhalt sind unter anderem Audio und Video (Lippensynchronisierung), Audio und Audio (vernetzte Stereo-Lautsprecher) und so weiter.
  • Aber gelegentlich sind eine exakte Zeit- oder Taktsynchronisation und eine Frequenzstabilität über das gesamte Netzwerk weder vorhanden noch notwendig, zum Beispiel wenn nur ein Teil des Netzwerks ein Exakte-Zeit-Protokoll unterstützt und die Strom-Quelle nur eine Schätzung der aktuellen Uhrzeit benötigt, sodass sie zum Beispiel den Lautsprechern (die exakt synchronisiert sind) mitteilen kann, dass sie den Strom starten sollen. Netzwerk-Technologien können unter anderem Ethernet [IEEE-Standard 802.3, (IEEE: Institute of Electrical and Electronics Engineers)], Wireless (IEEE-Standard 802.11) und Powerline [HomePlug AV (HPAV)] sein.
  • Kurze Beschreibung der Zeichnungen
  • 1 zeigt eine Ausführungsform einer Umgebung.
  • 2 zeigt eine Ausführungsform eines Quellengeräts.
  • 3 zeigt eine Ausführungsform eines logischen Ablaufs.
  • Detaillierte Beschreibung
  • Verschiedene Ausführungsformen können allgemein ein System und ein Verfahren zum Synchronisieren einer simultanen Medienstromwiedergabe über disjunkte Netzsynchronisations-/-taktinseln betreffen. Ausführungsformen der Erfindung gestatten es vernetzten Geräten, die ein Zeitsynchronisationsprotokoll unterstützen, ein synchronisiertes Audio/Video oder Audio/Audio (z. B. zwei oder mehr Lautsprecher) auch dann zu rendern, wenn nicht das gesamte Netzwerk das Zeitsynchronisationsprotokoll unterstützt. Beispiele für Zeitsynchronisationsprotokolle können unter anderem IEEE 802.1AS, IEEE 1588 und Network Time Protocol (NTP) sein. Es werden weitere Ausführungsformen beschrieben und beansprucht.
  • Verschiedene Ausführungsformen können ein oder mehrere Elemente oder Komponenten umfassen. Ein Element kann eine Struktur aufweisen, die so eingerichtet ist, dass sie bestimmte Operationen ausführt. Jedes Element kann als Hardware, Software oder eine Kombination davon implementiert werden, wie es für einen gegebenen Satz von Entwurfsparametern oder Leistungsrandbedingungen gewünscht wird. Eine Ausführungsform kann zwar mit einer begrenzten Anzahl von Elementen in einer bestimmten Topologie beispielhaft beschrieben werden, aber die Ausführungsform kann in alternativen Topologien mehr oder weniger Elemente enthalten, wie es für eine gegebene Implementierung zweckmäßig ist. Man beachte, dass die Bezeichnung „eine Ausführungsform" bedeutet, dass ein bestimmtes Merkmal, eine bestimmte Struktur oder eine bestimmte Eigenschaft, die in Zusammenhang mit der Ausführungsform beschrieben wird, Bestandteil mindestens einer Ausführungsform ist. Die Wendung „bei einer Ausführungsform", die an verschiedenen Stellen in der Patentbeschreibung auftritt, bezieht sich nicht immer auf ein und dieselbe Ausführungsform.
  • 1 zeigt eine Ausführungsform einer Umgebung 100 zum Synchronisieren einer simultanen Medienstromwiedergabe über disjunkte Netzsynchronisations-/-taktinseln. Bei Ausführungsformen besteht die Umgebung 100 aus mehreren heterogenen Netzwerktechnologien. Diese Netzwerktechnologien können unter anderem Ethernet (IEEE-Standard 802.3,), Wireless (IEEE-Standard 802.11) und Powerline [HomePlug AV (HPAV)] sein.
  • Wie bei der Ausführungsform von 1 gezeigt ist, bilden ein Netzwerk 108 und ein lokales Netzwerk (LAN) 110 einen beispielhaften Kommunikationsweg zwischen einem Quellengerät 102 und Zielgeräten 104 und 106. Bei Ausführungsformen enthält das Netzwerk 108 (z. B. das Internet) Geräte oder Elemente, die kein Zeitsynchronisationsprotokoll unterstützen. Das LAN 110 hat Geräte oder Elemente, die ein Zeitsynchronisationsprotokoll unterstützen oder nur ein ungenaues Zeitsynchronisationsprotokoll unterstützen. Wegen einiger Geräte in der Umgebung 100, die synchronisierte Takte (wie bei dem LAN 110) haben, und wegen einiger Geräte, die keine synchronisierten Takte (wie bei dem Netzwerk 108) haben, hat die Umgebung 100 möglicherweise disjunkte Netzsynchronisations-/-taktinseln. Beispiele für Zeitsynchronisationsprotokolle können unter anderem IEEE 802.1AS, IEEE 1588 und Network Time Protocol (NTP) sein. Bei Ausführungsformen kann die Zeitsynchronisation des IEEE-Standards 802.1AS zum Synchronisieren von Gerätetakten auf einen Bereich von einigen Mikrosekunden (10–6 Sekunden) voneinander verwendet werden.
  • Das Quellengerät 102, das ein Zeitsynchronisationsprotokoll unterstützen kann oder auch nicht, muss zum synchronisierten Rendern einen oder mehrere entsprechende Mediendatenströme an die Zielgeräte 104 und 106 senden. Es wird unterstellt, dass die Zielgeräte 104 und 106 ein Zeitsynchronisationsprotokoll unterstützen, und bei Ausführungsformen werden ihre Takte direkt miteinander synchronisiert. Die Zielgeräte 104 und 106 können jedes Audio- und/oder Videogerät sein, das Mediendaten rendern kann, unter anderem ein Lautsprecher, ein Personal Computer, ein Laptop, ein Personal Digital Assistant (PDA), ein Audio/Video-Tuner, ein Mikrofon, ein Video-Anzeigegerät und so weiter. In 2 sind zwar zwei Zielgeräte dargestellt, aber die Erfindung ist nicht hierauf beschränkt.
  • Wie vorstehend dargelegt worden ist, muss das Quellengerät 102 zum synchronisierten Rendern einen oder mehrere entsprechende Mediendatenströme an die Zielgeräte 104 und 106 senden. Normalerweise sendet das Quellengerät 102 die zu rendernden Mediendatenströme zusammen mit einer „Startzeit" an die Zielgeräte 104 und 106. Die „Startzeit" teilt den Zielgeräten 104 und 106 mit, wann sie das Rendern der Daten beginnen oder wiederaufnehmen sollen, um sie in der richtigen synchronisierten Weise zu rendern.
  • Normalerweise stellt das Quellengerät 102 die „Startzeit" so ein, dass sie größer als die aktuelle Taktzeit plus die maximale Latenzzeit über den Netzwerk-Kommunikationsweg ist, der das Quellengerät 102 und die Zielgeräte 104 und 106 trennt. Wie jedoch vorstehend dargelegt worden ist, ist wegen der disjunkten Netzsynchronisations-/-taktinseln in der Umgebung 100 die aktuelle Taktzeit nicht für jedes Gerät in der Umgebung 100 gleich. Daher wird angenommen, dass in dem Fall, dass das Quellengerät 102 und die Zielgeräte 104 und 106 nicht das gleiche Zeitsynchronisationsprotokoll unterstützen, ihre Takte nicht synchronisiert werden. Bei Ausführungsformen wird hingegen angenommen, dass die Zielgeräte 104 und 106 und ein oder mehrere Geräte in dem Kommunikationsweg zwischen ihnen (z. B. in dem LAN 110) das gleiche Zeitsynchronisationsprotokoll unterstützen. Damit also das Quellengerät 102 die Zielgeräte 104 und 106 mit einer ausreichend guten Schätzung der „Startzeit" versorgen kann, muss das Gerät 102 die Taktzeit oder „aktuelle Zeit" kennen, die den Geräten bekannt ist, die an das LAN 110 oder in dem Kommunikationsweg zwischen dem Quellengerät 102 und den Zielgeräten 104 und 106 angeschlossen sind.
  • Damit das Quellengerät 102 die Taktzeit oder „aktuelle Zeit" der Zielgeräte 104 und 106 ermitteln kann, ermittelt es bei Ausführungsformen das dem Gerät 102 „nächstgelegene Gerät" in dem Kommunikationsweg, das das gleiche Zeitsynchronisationsprotokoll wie die Zielgeräte 104 und 106 unterstützt, und fragt das „nächstgelegene Gerät", wie spät es ist (d. h., es fordert dessen „aktuelle Zeit" an). Bei Ausführungsformen ermittelt das Quellengerät 102 das „nächstgelegene Gerät", das ein Protokoll, wie etwa das Link Layer Discovery Protocol (LLDP) oder ein UPnP-Protokoll (UPnP: Universal Plug and Play), verwendet. In dem in 1 gezeigten Beispiel ist ein nächstgelegenes Gerät 112 das „nächstgelegene Gerät". Hier sendet das nächstgelegene Gerät 112 seine „aktuelle Zeit" oder „Jetzt" an das Quellengerät 102. Bei Ausführungsformen könnte das Fragen des „nächstgelegenen Geräts" nach der Uhrzeit zum Beispiel dadurch realisiert werden, dass das „nächstgelegene Gerät" aufgefordert wird, die aktuelle Zeit regelmäßig zu senden, dass das „nächstgelegene Gerät" nach der Uhrzeit gefragt wird und auf die Antwort gewartet wird, oder durch andere Mittel, wie etwa NTP.
  • Wenn der Takt des Quellengeräts 102 mit den Takten der Zielgeräte 104 und 106 synchronisiert wird (d. h., das Gerät 102 und die Zielgeräte 104 und 106 unterstützen das gleiche Zeitsynchronisationsprotokoll, und dadurch werden ihre Takte synchronisiert), wird das Gerät 102 als das „nächstgelegene Gerät" angesehen, und Ausführungsformen der Erfindung beschränken sich auf zeitsynchronisiertes Standardverhalten (z. B. das Verhalten nach dem IEEE-Standard 802.1AS). Wenn kein anderes Gerät in der Umgebung das gleiche Zeitsynchronisationsprotokoll wie die Zielgeräte 104 und 106 unterstützt, beschränken sich Ausführungsformen der Erfindung auf das NTP-Standardverhalten, wo keine Unterstützung für das Quellengerät 102 beim Ermitteln einer besseren Schätzung der „aktuellen Zeit" erhältlich ist. Somit wird die Schätzung der „aktuellen Zeit" oder des „Jetzt" immer besser, je näher das „nächstgelegene Gerät" dem Quellengerät 102 kommt.
  • Da das nächstgelegene Gerät 112 und die Zielgeräte 104 und 106 das gleiche Zeitsynchronisationsprotokoll unterstützen, ist die Taktzeit oder „aktuelle Zeit" des nächstgelegenen Geräts 112 und der Zielgeräte 104 und 106 gleich. Hier kann nun das Quellengerät 102 die „Startzeit", zu der die Zielgeräte 104 und 106 das Rendern der Mediendatenströme starten oder wiederaufnehmen sollen, auf mindestens die „aktuelle Zeit", die von dem nächstgelegenen Gerät 112 bereitgestellt wird, plus die maximale Latenzzeit über den Netzwerk-Kommunikationsweg einstellen, der das Quellengerät 102 und die Zielgeräte 104 und 106 trennt. Da diese maximale Latenzzeit normalerweise viel langer als die Anforderung der Zielgeräte, die entsprechende Mediendaten rendern, an die Zeitgenauigkeit ist, reicht die Schätzung des Quellengeräts für die „Startzeit", die für die Zielgeräte bereitgestellt wird, aus, damit die Zielgeräte die Mediendatenströme synchronisiert rendern können.
  • Bei verschiedenen Ausführungsformen kann die Umgebung 100 über drahtlose Technologien, drahtgebundene Technologien oder eine Kombination aus beiden implementiert werden. Die Arten von Netzwerktechnologien und -geräten, die in 1 gezeigt sind, dienen nur der Erläuterung und sollen die Erfindung nicht beschränken.
  • Die verschiedenen Geräte, die in 1 gezeigt sind, können eine drahtlose Funktionalität, eine drahtgebundene Funktionalität oder eine Kombination aus beiden haben. Wenn ein Gerät zum Beispiel mit einer drahtlosen Funktionalität implementiert ist, kann es Komponenten und Schnittstellen haben, die zum Kommunizieren über ein drahtloses Shared-Medium geeignet sind, wie etwa eine oder mehrere Antennen, Sender, Empfänger, Sende-Empfänger, Verstärker, Filter, Steuerlogik und so weiter. Ein Beispiel für drahtlose Shared-Medien sind Teile eines drahtlosen Spektrums, wie etwa des HF-Spektrums, und dergleichen. Wenn ein Gerät mit einer drahtgebundenen Funktionalität implementiert ist, kann es Komponenten und Schnittstellen haben, die zum Kommunizieren über drahtgebundene Kommunikationsmedien geeignet sind, wie etwa Eingabe-/Ausgabe(E/A)-Adapter, physische Verbinder zum Verbinden des E/A-Adapters mit einem entsprechenden drahtgebundenen Kommunikationsmedium, eine Netzwerkschnittstellenkarte (NIC) und dergleichen. Beispiele für drahtgebundene Kommunikationsmedien sind Drähte, Kabel, Metallzuleitungen, Leiterplatten, Rückwandplatinen, Switch Fabrics, Halbleitermaterialien, verdrillte Doppelleitungen, Koaxialkabel, optische Fasern und so weiter.
  • 2 zeigt ein Beispiel für das Quellengerät 102. Bei einer Ausführungsform kann das Gerät 102 eine Medienplattform 202, wie etwa die Medienplattform ViivTM von Intel® Corporation, aufweisen oder als solche implementiert sein. Bei einer Ausführungsform kann die Plattform 202 Datenfluss-Anforderungen von einem oder mehreren der Geräte in der Umgebung 100 empfangen.
  • Bei einer Ausführungsform kann die Plattform 202 eine CPU 212, einen Chipsatz 213, einen oder mehrere Treiber 214, eine oder mehrere Netzwerkverbindungen 215, ein Betriebssystem 216 und/oder eine oder mehrere Medienzentrums-Anwendungen 217, zum Beispiel mit einer oder mehreren Software-Anwendungen, aufweisen. Die Plattform 202 kann außerdem einen Speicher 218 und eine Logik 220 aufweisen.
  • Bei einer Ausführungsform kann die CPU 212 einen oder mehrere Prozessoren, wie etwa Doppelkernprozessoren, aufweisen. Beispiele für Doppelkernprozessoren sind der Pentium®-D-Prozessor und der Pentium®-Prozessor Extreme Edition, beide hergestellt von Intel® Corporation, die zum Beispiel als Intel®-Core-Duo®-Prozessoren bezeichnet werden können.
  • Bei einer Ausführungsform kann der Chipsatz 213 einen oder alle Chipsätze der Intel®-945-Express-Chipset-Familie, der Intel®-955X-Express-Chipset-Familie und der Intel®-975X-Express-Chipset-Familie sowie die Steuer-Hubs ICH7-DH, ICH7-MDH, ICH8 oder ICH9 aufweisen, die alle von Intel® Corporation hergestellt werden.
  • Bei einer Ausführungsform können die Treiber 214 Quick-Resume-Technology-Treiber, hergestellt von Intel®, sein, um Nutzer in der Lage zu versetzen, die Plattform 202 wie ein Fernsehgerät durch Berührung einer Taste nach dem ersten Booten, zum Beispiel beim In-Betrieb-Setzen, sofort ein- und auszuschalten. Darüber hinaus kann der Chipsatz 213 Hardware- und/oder Software-Unterstützung zum Beispiel für ein 5.1-Raumklang-Audio und/oder ein hochauflösendes 7.1-Raumklang-Audio aufweisen. Die Treiber 214 können einen Grafiktreiber für integrierte Grafik-Plattformen umfassen. Bei einer Ausführungsform kann der Grafiktreiber eine PCI-Express-Grafikkarte (PCI: Peripheral Component Interconnect) umfassen.
  • Bei einer Ausführungsform können die Netzwerkverbindungen 215 eine PRO/1000-PM- oder eine PRO/100-VE/VM-Netzwerkverbindung, beide hergestellt von Intel® Corporation, umfassen.
  • Bei einer Ausführungsform kann das Betriebssystem 216 das Windows® XP Media Center, hergestellt von Microsoft® Corporation, umfassen. Bei einer Ausführungsform können eine oder mehrere Medienzentrums-Anwendungen 217 eine Media Shell aufweisen, um Nutzer in der Lage zu versetzen, zum Beispiel mit einer Fernbedienung aus einer Entfernung von etwa 10 ft (≈3 m) von der Plattform 202 oder einem Anzeigegerät zu interagieren. Bei einer Ausführungsform kann die Media Shell zum Beispiel als „10-ft-Nutzer-Schnittstelle" bezeichnet werden. Darüber hinaus können die. eine oder die mehreren Medienzentrums-Anwendungen 217 die Quick Resume Technology von Intel® haben, die eine Sofort-EIN/AUS-Funktionalität ermöglicht, und sie können der Plattform 202 gestatten, Inhalt an Medienadaptoren zu streamen, wenn die Plattform ausgeschaltet ist.
  • Bei einer Ausführungsform kann der Speicher 218 die Matrix-Storage-Technologie von Intel® aufweisen, um die Speicherleistung bei verbessertem Schutz für wertvolle digitale Medien zu erhöhen, wenn mehrere Festplattenlaufwerke einbezogen sind. Bei einer Ausführungsform ermöglicht die Logik 220 die Funktionalität des Quellengeräts 102, die hier beschrieben wird. Die Ausführungsformen sind jedoch nicht auf die Elemente oder den Zusammenhang beschränkt, die/der in 2 gezeigt oder beschrieben sind/ist.
  • Die Funktionsweise für die vorstehenden Ausführungsformen kann unter Bezugnahme auf die folgenden Figuren und zugehörigen Beispiele näher beschrieben werden. Einige der Figuren können einen logischen Ablauf enthalten. Diese Figuren, die hier dargestellt sind, können zwar einen speziellen logischen Ablauf enthalten, aber es ist wohlverstanden, dass der logische Ablauf lediglich ein Beispiel dafür darstellt, wie die hier beschriebene allgemeine Funktionalität implementiert werden kann. Außerdem braucht der gegebene logische Ablauf nicht unbedingt in der dargestellten Reihenfolge ausgeführt zu werden, falls nicht anders angegeben. Darüber hinaus kann der gegebene logische Ablauf mit einem Hardware-Element, einem von einem Prozessor abgearbeiteten Software-Element oder einer Kombination davon implementiert werden.
  • 3 zeigt eine Ausführungsform eines logischen Ablaufs 300. Wie in dem logischen Ablauf 300 gezeigt ist, wird angenommen, dass alle lokalen Takte der Geräte in einem Netzwerk-Kommunikationsweg zwischen dem Quellengerät 102 und den Zielgeräten 104 und 106, die das gleiche Zeitsynchronisationsprotokoll unterstützen, synchronisiert werden (Block 302).
  • Das Quellengerät 102 ermittelt das „nächstgelegene Gerät" in dem Netzwerk-Kommunikationsweg, das das gleiche Zeitsynchronisationsprotokoll wie die Zielgeräte 104 und 106 unterstützt (Block 304). Bei Ausführungsformen ermittelt das Quellengerät 102 das „nächstgelegene Gerät" unter Verwendung eines Protokolls, wie etwa des LLDP- oder UPnP-Protokolls.
  • Das Quellengerät 102 fragt das „nächstgelegene Gerät", wie spät es gerade ist (d. h., es fragt nach der „aktuellen Zeit" oder „Jetzt") (Block 306).
  • Das Quellengerät 102 setzt dann der „Startzeit" auf mindestens die „aktuelle Zeit" plus die maximale Latenzzeit über den Netzwerk-Kommunikationsweg fest (Block 308).
  • Das Quellengerät 102 sendet den Datenstrom / die Datenströme zusammen mit der „Startzeit" an die Zielgeräte 104 und 106 (Block 310).
  • Die Zielgeräte 104 und 106 verwenden die „Startzeit" zum Starten oder Wiederaufnehmen des Renderns des Datenstroms / der Datenströme zu dem entsprechenden Zeitpunkt und mit der entsprechenden Rate (Block 312). Ausführungsformen der Erfindung sind jedoch nicht auf den in 3 dargestellten oder beschriebenen Kontext beschränkt.
  • Verschiedene Ausführungsformen können unter Verwendung von Hardware-Elementen, Software-Elementen oder einer Kombination aus beiden implementiert werden. Beispiele für Hardware-Elemente sind Prozessoren, Mikroprozessoren, Schaltkreise, Schaltkreiselemente (z. B. Transistoren, Widerstände, Kondensatoren, Induktoren und dergleichen), integrierte Schaltkreise, anwendungsspezifische integrierte Schaltkreise (ASICs), programmierbare Logikschaltungen (PLDs), digitale Signalprozessoren (DSPs), frei programmierbare Gate-Arrays (FPGAs), Logikgatter, Register, Halbleiteranordnungen, Chips, Mikrochips, Chipsätze und so weiter. Beispiele für Software sind Software-Komponenten, Programme, Anwendungen, Computerprogramme, Anwendungsprogramme, Systemprogramme, Maschinenprogramme, Betriebs system-Software, Middleware, Firmware, Software-Module, Routinen, Subroutinen, Funktionen, Verfahren, Prozeduren, Software-Schnittstellen, Anwendungsprogramm-Schnittstellen (API), Befehlssätze, Rechencodes, Computercodes, Codesegmente, Computercodesegmente, Wörter, Werte, Symbole oder eine Kombination davon. Das Festlegen, ob eine Ausführungsform unter Verwendung von Hardware-Elementen und/oder Software-Elementen implementiert werden soll, kann sich entsprechend einer Anzahl von Faktoren ändern, wie etwa gewünschte Rechengeschwindigkeit, Leistungspegel, Wärmeverträglichkeit, Verarbeitungzyklenbudget, Eingabedatenrate, Ausgabedatenrate, Speicherressourcen, Datenbusgeschwindigkeit und andere Entwurfs- oder Leistungsrandbedingungen.
  • Einige Ausführungsformen werden unter Verwendung des Begriffs „gekoppelt" oder „verbunden" zusammen mit ihren Ableitungen beschrieben. Diese Begriffe sollen keine Synonyme füreinander sein. Einige Ausführungsformen können unter Verwendung der Begriffe „verbunden" und/oder „gekoppelt" beschrieben werden, um anzugeben, dass zwei oder mehr Elemente in direktem physischem oder elektrischem Kontakt miteinander sind. Der Begriff „gekoppelt" kann jedoch auch bedeuten, dass zwei oder mehr Elemente nicht in direktem Kontakt miteinander sind, aber dennoch zusammenwirken oder miteinander interagieren.
  • Einige Ausführungsformen können zum Beispiel unter Verwendung einer Maschine oder eines realen maschinenlesbaren Mediums oder Produktes implementiert werden, das einen Befehl oder einen Satz von Befehlen speichern kann, die beim Ausführen mit einer Maschine die Maschine veranlassen können, ein Verfahren und/oder Operationen entsprechend den Ausführungsformen auszuführen. Eine solche Maschine kann zum Beispiel eine geeignete Verarbeitungsplattform, Rechenplattform, Rechenvorrichtung, Verarbeitungsvorrichtung, Rechensystem, Verarbeitungssystem, Computer, Prozessor oder dergleichen umfassen und kann unter Verwendung einer geeigneten Kombination aus Hardware und/oder Software implementiert werden. Das maschinenlesbare Medium oder Produkt kann zum Beispiel jede geeignete Art von Speichereinheit, Speichervorrichtung, Speicherprodukt und/oder Speichermedium sein, zum Beispiel Speicher, Wechsel- oder Nichtwechselmedien, löschbare oder nichtöschbare Medien, beschreibbare oder wiederbeschreibbare Medien, digitale oder analoge Medien, Festplatten, Disketten, CD-ROMS (Compact Disk Read-Only Memories), CD-Rs (Compact Disks Recordable), CD-RW (Compact Disks Rewritable), optische Platten, magnetische Medien, magneto-optische Medien, Wechselspeicherkarten oder -platten, verschiedene Arten von DVDs (Digital Versatile Disks), Bändern, Kassetten oder dergleichen sein. Die Befehle können jede geeignete Art von Code, wie etwa Quellcode, kompilierte Codes, interpretierte Codes, ausführbare Codes, statische Codes, dynamische Codes, verschlüsselte Codes und dergleichen, umfassen, die unter Verwendung einer geeigneten höheren, niedrigeren, objektorientierten, visuellen, kompilierten und/oder interpretierten Programmiersprache implementiert werden.
  • Wenn nicht ausdrücklich anders angegeben, beziehen sich Begriffe wie „Verarbeitung", „Rechnen", „Berechnen", „Ermitteln" oder dergleichen bekanntlich auf die Aktionen und/oder Prozesse eines Computers oder Rechensystems oder einer ähnlichen elektronischen Rechenvorrichtung, die Daten, die in den Registern und/oder Speichern des Rechensystems als physikalische Größen (z. B. elektronische Größen) dargestellt sind, manipulieren und/oder in andere Daten umwandeln, die in ähnlicher Weise als physikalische Größen in den Speichern, Registern oder anderen derartigen Informationsspeichern oder Übertragungs- oder Anzeigevorrichtungen des Rechensystems dargestellt sind. Die Ausführungsformen sind in diesem Zusammenhang nicht beschränkt.
  • Hier sind zahlreiche spezielle Einzelheiten dargelegt worden, um ein besseres Verständnis der Ausführungsformen zu ermöglichen. Fachleute werden jedoch erkennen, dass die Ausführungsformen auch ohne diese speziellen Einzelheiten genutzt werden können. In anderen Fällen sind bekannte Operationen, Komponenten und Schaltkreise nicht näher beschrieben worden, um das Verständnis der Ausführungsformen nicht zu erschweren. Es ist wohlverstanden, dass die hier beschriebenen speziellen Konstruktions- und Funktionsdetails typisch sind und nicht unbedingt den Schutzumfang der Ausführungsformen beschränken.
  • Der Gegenstand ist zwar in einer Sprache beschrieben worden, die für konstruktive Merkmale und/oder methodologische Aktionen spezifisch ist, aber es ist klar, dass der in den beigefügten Ansprüchen definierte Gegenstand nicht unbedingt auf die vorstehend beschriebenen speziellen Merkmale oder Aktionen beschränkt ist. Vielmehr werden die vorstehend dargelegten speziellen Merkmale und Aktionen als beispielhafte Formen für die Implementierung der Ansprüche beschrieben.

Claims (20)

  1. Verfahren mit den folgenden Schritten: Ermitteln eines einem Quellengerät nächstgelegenen Geräts in einem Netzwerk-Kommunikationsweg zwischen dem Quellengerät und einem oder mehreren Zielgeräten, wobei Takte des nächstgelegenen Geräts und des einen oder der mehreren Zielgeräte synchronisiert werden und wobei ein Takt des Quellengeräts nicht mit den Takten des nächstgelegenen Geräts und des einen oder der mehreren Zielgeräte synchronisiert wird; Ermitteln einer aktuellen Zeit für das nächstgelegene Gerät; Festsetzen einer Startzeit auf mindestens die aktuelle Zeit plus eine maximale Latenzzeit über den Netzwerk-Kommunikationsweg und Senden eines Datenstroms und der Startzeit an das eine oder die mehreren Zielgeräte.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das eine oder die mehreren Zielgeräte die Startzeit zum Rendern des Datenstroms verwenden sollen.
  3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Takte des nächstgelegenen Geräts und des einen oder der mehreren Zielgeräte mit einem IEEE-802.1AS-Zeitsynchronisationsprotokoll (IEEE: Institute of Electrical and Electronics Engineers), einem IEEE-1588-Zeitsynchronisationsprotokoll oder einem NTP-Zeitsynchronisationsprotokoll (NTP: Network Time Protocol) synchronisiert werden.
  4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das nächstgelegene Gerät über ein Link Layer Discovery Protocol (LLDP) oder ein Universal-Plug-and-Play(UPnP)-Protokoll ermittelt wird.
  5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das eine oder die mehreren Zielgeräte jeweils ein Lautsprecher, ein Personal Computer, ein Drucker, ein Laptop-Computer, ein Personal Digital Assistant (PDA), ein Audio/Video-Tuner oder ein Mikrofon sind.
  6. System mit: einem Quellengerät; einen oder mehreren Zielgeräten; einem Netzwerk-Kommunikationsweg zwischen dem Quellengerät und dem einen oder den mehreren Zielgeräten und einem nächstgelegenen Gerät in dem Netzwerk-Kommunikationsweg, wobei ein einem Quellengerät nächstgelegenes Gerät in einem Netzwerk-Kommunikationsweg zwischen dem Quellengerät und dem einen oder den mehreren Zielgeräten ermittelt wird, wobei Takte des nächstgelegenen Geräts und des einen oder der mehreren Zielgeräte synchronisiert werden, wobei ein Takt des Quellengeräts nicht mit den Takten des nächstgelegenen Geräts und des einen oder der mehreren Zielgeräte synchronisiert wird, das Quellengerät eine aktuelle Zeit für das nächstgelegene Gerät ermittelt, das Quellengerät eine Startzeit auf mindestens die aktuelle Zeit plus eine maximale Latenzzeit über den Netzwerk-Kommunikationsweg festsetzt und das Quellengerät einen Datenstrom und die Startzeit an das eine oder die mehreren Zielgeräte sendet.
  7. System nach Anspruch 6, dadurch gekennzeichnet, dass das eine oder die mehreren Zielgeräte die Startzeit zum Rendern des Datenstroms verwenden.
  8. System nach Anspruch 6, dadurch gekennzeichnet, dass die Takte des nächstgelegenen Geräts und des einen oder der mehreren Zielgeräte mit einem IEEE-802.1AS-Zeitsynchronisationsprotokoll (IEEE: Institute of Electrical and Electronics Engineers), einem IEEE-1588-Zeitsynchronisationsprotokoll oder einem NTP-Zeitsynchronisationsprotokoll (NTP: Network Time Protocol) synchronisiert werden.
  9. System nach Anspruch 6, dadurch gekennzeichnet, dass das nächstgelegene Gerät über ein Link Layer Discovery Protocol (LLDP) oder ein Universal-Plug-and-Play(UPnP)-Protokoll ermittelt wird.
  10. System nach Anspruch 6, dadurch gekennzeichnet, dass das eine oder die mehreren Zielgeräte jeweils ein Lautsprecher, ein Personal Computer, ein Drucker, ein Laptop- Computer, ein Personal Digital Assistant (PDA), ein Audio/Video-Tuner oder ein Mikrofon sind.
  11. Vorrichtung mit einem Prozessor zum Ermitteln eines dem Prozessor nächstgelegenen Geräts in einem Netzwerk-Kommunikationsweg zwischen dem Prozessor und einem oder mehreren Zielgeräten, wobei Takte des nächstgelegenen Geräts und des einen oder der mehreren Zielgeräte synchronisiert werden, wobei ein Takt des Prozessors nicht mit den Takten des nächstgelegenen Geräts und des einen oder der mehreren Zielgeräte synchronisiert wird, der Prozessor eine aktuelle Zeit für das nächstgelegene Gerät ermittelt, der Prozessor eine Startzeit mindestens auf die aktuelle Zeit plus eine maximale Latenzzeit über den Netzwerk-Kommunikationsweg festsetzt und der Prozessor einen Datenstrom und die Startzeit an das eine oder die mehreren Zielgeräte sendet.
  12. Vorrichtung nach Anspruch 11, dadurch gekennzeichnet, dass das eine oder die mehreren Zielgeräte die Startzeit zum Rendern des Datenstroms verwenden.
  13. Vorrichtung nach Anspruch 11, dadurch gekennzeichnet, dass die Takte des nächstgelegenen Geräts und des einen oder der mehreren Zielgeräte mit einem IEEE-802.1AS-Zeitsynchronisationsprotokoll (IEEE: Institute of Electrical and Electronics Engineers), einem IEEE-1588-Zeitsynchronisationsprotokoll oder einem NTP-Zeitsynchronisationsprotokoll (NTP: Network Time Protocol) synchronisiert werden.
  14. Vorrichtung nach Anspruch 11, dadurch gekennzeichnet, dass das nächstgelegene Gerät über ein Link Layer Discovery Protocol (LLDP) oder ein Universal-Plug-and-Play(UPnP)-Protokoll ermittelt wird.
  15. Vorrichtung nach Anspruch 11, dadurch gekennzeichnet, dass das eine oder die mehreren Zielgeräte jeweils ein Lautsprecher, ein Personal Computer, ein Drucker, ein Laptop-Computer, ein Personal Digital Assistant (PDA), ein Audio/Video-Tuner oder ein Mikrofon sind.
  16. Maschinenlesbares Medium, das Befehle enthält, die beim Ausführen mit einem Verarbeitungssystem das Verarbeitungssystem veranlassen, ein Verfahren mit den folgenden Schritten auszuführen: Ermitteln eines einem Quellengerät nächstgelegenen Geräts in einem Netzwerk-Kommunikationsweg zwischen dem Quellengerät und einem oder mehreren Zielgeräten, wobei Takte des nächstgelegenen Geräts und des einen oder der mehreren Zielgeräte synchronisiert werden und wobei ein Takt des Quellengeräts nicht mit den Takten des nächstgelegenen Geräts und des einen oder der mehreren Zielgeräte synchronisiert wird; Ermitteln einer aktuellen Zeit für das nächstgelegene Gerät; Festsetzen einer Startzeit auf mindestens die aktuelle Zeit plus eine maximale Latenzzeit über den Netzwerk-Kommunikationsweg und Senden eines Datenstroms und der Startzeit an das eine oder die mehreren Zielgeräte.
  17. Maschinenlesbares Medium nach Anspruch 16, dadurch gekennzeichnet, dass das eine oder die mehreren Zielgeräte die Startzeit zum Rendern des Datenstroms verwendet.
  18. Maschinenlesbares Medium nach Anspruch 16, dadurch gekennzeichnet, dass die Takte des nächstgelegenen Geräts und des einen oder der mehreren Zielgeräte mit einem IEEE-802.1AS-Zeitsynchronisationsprotokoll (IEEE: Institute of Electrical and Electronics Engineers), einem IEEE-1588-Zeitsynchronisationsprotokoll oder einem NTP-Zeitsynchronisationsprotokoll (NTP: Network Time Protocol) synchronisiert werden.
  19. Maschinenlesbares Medium nach Anspruch 16, dadurch gekennzeichnet, dass das nächstgelegene Gerät über ein Link Layer Discovery Protocol (LLDP) oder ein Universal-Plug-and-Play(UPnP)-Protokoll ermittelt wird.
  20. Maschinenlesbares Medium nach Anspruch 16, dadurch gekennzeichnet, dass das eine oder die mehreren Zielgeräte jeweils ein Lautsprecher, ein Personal Computer, ein Drucker, ein Laptop-Computer, ein Personal Digital Assistant (PDA), ein Audio/Video-Tuner oder ein Mikrofon sind.
DE102008048649.3A 2007-09-28 2008-09-24 System und Verfahren zum Synchronisieren einer simultanen Medienstromwiedergabe über nichtsynchronisierte Netzsynchronisations-/-Taktinseln Expired - Fee Related DE102008048649B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/864,582 2007-09-28
US11/864,582 US8984154B2 (en) 2007-09-28 2007-09-28 System and method for synchronizing simultaneous media stream playback across nonsynchronized network timing/clock islands

Publications (2)

Publication Number Publication Date
DE102008048649A1 true DE102008048649A1 (de) 2009-04-30
DE102008048649B4 DE102008048649B4 (de) 2019-03-21

Family

ID=40490456

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102008048649.3A Expired - Fee Related DE102008048649B4 (de) 2007-09-28 2008-09-24 System und Verfahren zum Synchronisieren einer simultanen Medienstromwiedergabe über nichtsynchronisierte Netzsynchronisations-/-Taktinseln

Country Status (3)

Country Link
US (1) US8984154B2 (de)
CN (1) CN101415071B (de)
DE (1) DE102008048649B4 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8984154B2 (en) 2007-09-28 2015-03-17 Intel Corporation System and method for synchronizing simultaneous media stream playback across nonsynchronized network timing/clock islands

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2195743A2 (de) * 2007-10-12 2010-06-16 Rony Zarom System und verfahren für synchronisiertes video-sharing
US8788589B2 (en) * 2007-10-12 2014-07-22 Watchitoo, Inc. System and method for coordinating simultaneous edits of shared digital data
JP5740931B2 (ja) * 2010-03-03 2015-07-01 日本電産株式会社 分割ステータ、及びモータ
GB201116521D0 (en) 2011-09-23 2011-11-09 Imagination Tech Ltd Method and apparatus for time synchronisation in wireless networks
WO2013049897A1 (en) 2011-10-07 2013-04-11 Audinate Pty Limited Systems, methods and devices for networking over high impedance cabling
WO2015122814A1 (en) * 2014-02-14 2015-08-20 Telefonaktiebolaget L M Ericsson (Publ) Synchronising playing of streaming content on plural streaming clients
GB2542174B (en) * 2015-09-10 2018-04-04 Openwave Mobility Inc An intermediate network entity for controlling bandwidth for an adaptive bit rate stream
CN106953706A (zh) * 2017-02-17 2017-07-14 北京汽车集团有限公司 基于以太网的音视频系统同步方法、装置和系统
US10433057B2 (en) * 2017-10-23 2019-10-01 Bose Corporation Wireless audio synchronization

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7035247B2 (en) * 1998-07-22 2006-04-25 Synchrodyne Networks, Inc. Link transmission control with common time reference
US6973090B2 (en) * 1998-07-22 2005-12-06 Synchrodyne Networks, Inc. Switching with multiple time references
US6982979B2 (en) * 1998-07-22 2006-01-03 Synchrodyne Networks, Inc. Time frame switching method using time frame labels and a common time reference
US7194010B2 (en) * 2001-05-02 2007-03-20 Strix Systems, Inc. Wireless base station to base station synchronization in a communication system, such as a system employing a short range frequency hopping or time division duplex scheme
US8144711B1 (en) * 2002-07-15 2012-03-27 Rockstar Bidco, LP Hitless switchover and bandwidth sharing in a communication network
US7434154B2 (en) * 2005-01-07 2008-10-07 Dell Products L.P. Systems and methods for synchronizing media rendering
US7454218B2 (en) * 2005-08-19 2008-11-18 Panasonic Corporation Method of band multiplexing to improve system capacity for a multi-band communication system
US7539889B2 (en) * 2005-12-30 2009-05-26 Avega Systems Pty Ltd Media data synchronization in a wireless network
US8677002B2 (en) * 2006-01-28 2014-03-18 Blackfire Research Corp Streaming media system and method
US7787486B2 (en) * 2006-11-13 2010-08-31 Honeywell International Inc. Method and system for achieving low jitter in real-time switched networks
US8125930B2 (en) * 2006-12-13 2012-02-28 Rockstar Bidco Lp Protocol for clock distribution and loop resolution
US8321593B2 (en) * 2007-01-08 2012-11-27 Apple Inc. Time synchronization of media playback in multiple processes
US7890788B2 (en) * 2007-07-09 2011-02-15 John Yin Clock data recovery and synchronization in interconnected devices
US8984154B2 (en) 2007-09-28 2015-03-17 Intel Corporation System and method for synchronizing simultaneous media stream playback across nonsynchronized network timing/clock islands

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8984154B2 (en) 2007-09-28 2015-03-17 Intel Corporation System and method for synchronizing simultaneous media stream playback across nonsynchronized network timing/clock islands

Also Published As

Publication number Publication date
CN101415071A (zh) 2009-04-22
DE102008048649B4 (de) 2019-03-21
US20090089456A1 (en) 2009-04-02
CN101415071B (zh) 2014-10-29
US8984154B2 (en) 2015-03-17

Similar Documents

Publication Publication Date Title
DE102008048649B4 (de) System und Verfahren zum Synchronisieren einer simultanen Medienstromwiedergabe über nichtsynchronisierte Netzsynchronisations-/-Taktinseln
US10997092B2 (en) Enabling out-of-band hardware management via an in-band communications channel
DE102012210582B4 (de) Verringern der Auswirkung des Ausfalls einer Vermittlungsstelle in einem Schaltnetzwerk mittels Schaltkarten
DE60036072T2 (de) Verfahren zur brückenverbindung von mehreren heimnetzsoftwarearchitekturen
DE69835807T2 (de) Verfahren und vorrichtung zur taktsignalverteilung an mehreren busknoten in einer busbrücke
DE60024709T2 (de) Gateway für Hausnetzwerk
US20090024764A1 (en) Tracking The Physical Location Of A Server In A Data Center
US20090182799A1 (en) Server with network-based remote access and server management functions using reduced number of network connections
TW200841190A (en) Efficient knowledge representation in data synchronization systems
DE60106542T2 (de) Netzfehleranzeigevorrichtung und Fehlerdetektionsanzeigeverfahren
DE112016002371T5 (de) Vorrichtung, gerät und system zum verringern der stromableitung während differentiellen kommunikationen
US20090070512A1 (en) Apparatus for determining compatibility between devices
DE102019105286A1 (de) Synchronisation einer Anzeigeeinrichtung in einem System, das mehrere Anzeigeeinrichtungen beinhaltet
TWI445374B (zh) 遠端管理系統及遠端管理方法
CN103399649A (zh) 一种基于kvm的数据处理方法和kvm发送装置
US20040150625A1 (en) Virtual keyboard and mouse control device
US9081912B2 (en) Method and apparatus for node hot-swapping
CN113727154A (zh) 拼接屏的同步播放系统、方法、装置和存储介质
JP2004512748A (ja) ハードウェア構成要素の配置を制御する方法
CN106131662A (zh) 网络电视应用系统
CN109005068B (zh) 一种集群虚拟机qos的配置方法
CN108845613B (zh) 交互智能平板及其数据处理方和装置
CN107623587B (zh) 一种网络拓扑管理系统及网络管理方法
US20040151189A1 (en) Communications device, communications method, and transmitting method
CN204808877U (zh) 数字录放机应用系统

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee