-
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.