[0001] Die vorliegendende Beschreibung bezieht sich auf Datenkommunikationsanwendungen und
insbesondere auf die Echtzeit-Kommunikation von Audiosignalen über paketorientierte
Netzwerke.
[0002] Im Rahmen der Echtzeit-Kommunikation über paketorientierte Netzwerke wie beispielsweise
Voice over IP (VoIP) kann normalerweise nicht sichergestellt werden, dass alle Pakete
in der erforderlichen Zeit beim Empfänger eintreffen. Dies liegt daran, dass bei einem
paketorientierten Übertragen von Daten, wie beispielsweise über das Internet, verschiedene
Pakete unterschiedliche Wege über das Datennetz nehmen, wobei die Wege über das Datennetz,
die von den unterschiedlichen Paketen vom Sender der Pakete zum Empfänger der Pakete
eingeschlagen werden können, von der aktuellen Netzsituation abhängen.
[0003] Selbst wenn also Pakete in ihrer Reihenfolge, in der sie erzeugt worden sind, abgeschickt
werden, wird die Auftreffreihenfolge beim Empfänger mit hoher Wahrscheinlichkeit abweichen.
Ein Paket, das einen günstigen Weg gefunden hat, kann sogar ein Paket "überholen",
das zwar früher abgesendet worden ist, das aber einen längeren Weg vom Sender zum
Empfänger genommen hat.
[0004] Für Anwendungen, die keinen Echtzeitbetrieb erfordern oder für Echtzeitanwendungen,
bei denen relativ große Verzögerungen zugelassen werden, ist dies kein Problem, da
ein Empfänger-Puffer einfach so lange puffert, bis alle Pakete einer Folge von Paketen
eingetroffen sind. Wo ein Paket in einer Folge positioniert ist, kann beispielsweise
durch eine Paketnummer oder durch einen Paketsequenzhinweis am Paket ermittelt werden,
und der Empfänger führt dann vor der Wiedergabe oder Weitergabe der Pakete eine Sortierung
in die richtige Reihenfolge durch.
[0005] Je kleiner dieser Puffer jedoch gewählt wird, bzw. je kleiner die zulässige Verzögerung
ist, die ein Paket haben darf, wenn es vom Sender zum Empfänger übertragen wird, umso
größer werden die Paketausfallraten werden. So wird ein Paketverlust nicht nur dann
erhalten, wenn ein Paket tatsächlich verloren worden ist, sondern ein Paketverlust
wird auch dann erhalten, wenn ein Paket vom Sender zum Empfänger zu lange gebraucht
hat. Eine weitere Problemsituation besteht ferner darin, dass ein Paket auf seinem
Weg vom Sender zum Empfänger eine Datenkorruption erfahren hat, also tatsächlich fehlerhaft
ist.
[0006] Solche Verzögerungs-kritischen Anwendungen bestehen in der Internet-Telefonie (Voice
over IP), bei der die Verzögerungsanforderungen, mit denen Pakete vom Sender zum Empfänger
laufen müssen, relativ eng sind, damit die Gesprächsverbindung nicht abbricht. Insbesondere
dann, wenn auf Senderseite ein Audiocodierer angeordnet ist und wenn auf der Empfängerseite
ein Decodierer angeordnet ist, und wenn beim Empfänger keine zum Codieren vorhandenen
Datenpakete mehr vorhanden sind, kann ein Verbindungsabbruch entstehen, nämlich dann,
wenn der Decodierer auf Empfängerseite aufgrund der nicht mehr vorhandenen Daten "abstürzt".
[0007] Die
WO 95/01682 A1 offenbart ein Konzept zur PCM-Verbindungs-Fehlerdetektion und zum Handhaben von verlorenen
Blöcken. Insbesondere kommuniziert eine Basisstation mit einer mobilen Station, und
die Basisstation selbst kommuniziert mit einer Basisstations-Steuerung. Sprachdaten
werden in der Basisstations-Steuerung mit einem Sprach-Codierer codiert, zum Basisstations-Sender
über eine PCM-Verbindung geschickt und von dort zur mobilen Station übermittelt. Die
mobile Station decodiert und besorgt eine Wiedergabe und encodiert die von der mobilen
Station empfangenen Sprachnachrichten und sendet sie denselben Weg zurück zur Basisstation-Steuerung.
Der Basisstation-Sender detektiert einen Fehler in einem Datenblock, der über die
PCM-Verbindung erhalten wird. Dies führt dazu, dass die Basisstation entweder eine
Nachricht mit einer speziell vereinbarten Bedeutung an die mobile Station sendet,
und zwar über den Fast Associated Control Channel (FACCH). Dieser Hinweis wird zur
Mobilstation gesendet, die daraufhin eine Maskierung eines fehlerhaften Frames durchführt.
Alternativ können auch andere wohldefinierte Daten auf den Benutzer-Kanal (UCH) gesendet
werden, wobei dieser Kanal jedoch einen geringeren Fehlerschutz bietet.
[0008] Die
GB-A-2 306 861 betrifft ein Verfahren zum Umgang mit fehlerhaften Audiorahmen entlang einer Multi-Hop-Verbindung.
So wird eine Fehlerverschleierung für fehlerhafte Rahmen erst im Empfänger durchgeführt.
Hierzu wird einem fehlerhaften Audiorahmen ein entsprechender Hinweis hinzugefügt,
und das somit gebildete Ersatzpaket wird anstelle des fehlerhaften Rahmens weitergeleitet.
[0009] Die
EP-A-0 756 267 betrifft die Rekonstruktion von fehlenden Audiopaketen an einem empfangenen Netzwerkknoten
durch Einfügung von Ersatzpaketen, die ein syntaktisch- wie hörtechnisch "gültiges"
weißes Rauschen beinhalten.
[0010] Die
US 2005/058145 A1 offenbart das Stummschalten bzw. das Einspielen von Comfort Noise, sobald der Empfänger
einen Paketverlust feststellt.
[0011] Die
EP-A-1 589 330 befasst sich mit Inter- und Extrapolationstechniken, um den Audioinhalt verlorengegangener
Datenpakete zu rekonstruieren.
[0012] Die
EP-A-1 458 145 zeigt die Generierung von als solchen gekennzeichneten Ersatzpaketen im Falle eines
festgestellten Paketverlustes.
[0013] Die Aufgabe der vorliegenden Erfindung besteht darin, ein Konzept zum Kommunizieren
von Datenpaketen zu schaffen, das trotz kritischer Anforderung eine gute Kommunikationsqualität
liefert.
[0014] Diese Aufgabe wird durch eine Vorrichtung zum Senden einer Folge von Datenpaketen
nach Anspruch 1, ein Verfahren zum Senden einer Folge von Datenpaketen nach Anspruch
9, oder ein Computer-Programm nach Patentanspruch 10 gelöst.
[0015] Erfindungsgemäß wird, um einen Absturz auf Decodiererseite bzw. um ein für einen
Benutzer hörbares Artefakt auf Decodiererseite zu vermeiden, eine Detektion vorgenommen,
ob ein Paket der Folge von Paketen fehlt oder fehlerhaft ist. Wird ein solcher Paketverlust
oder Paketfehler festgestellt, so wird ein Ersatzpaket geliefert, wobei das Ersatzpaket
im Hinblick auf die Paket-Syntax ein gültiges Paket ist, wobei jedoch ein Audioinhalt
des Ersatzpaketes eine vorbestimmte Inhalts-Eigenschaft hat. Die Vorrichtung zum Senden
der Folge von Datenpaketen gemäß der Erfindung gibt eine ungestörte Folge von Paketen
aus, wobei jedoch fehlerhafte oder nicht erhaltene Pakete durch Ersatzpakete ersetzt
worden sind, so dass sie von der Vorrichtung zum Senden ausgegebenen Folge wenigstens
ein empfangenes Paket und ein Ersatzpaket aufweist. Bei einer Implementierung ist
der Inhalt bzw. die Inhalts-Eigenschaft eines Pakets oder Frames bei einem Ersatzpaket
von dem Audiosignal unabhängig, also hängt nicht von dem vorhergehenden oder nachfolgenden
Paket oder Frame ab. Wenn das Paket aber einer Fehlerverschleierungsmaßnahme unterzogen
wird, hängt der Synthese-Audioinhalt von dem vorhergehenden oder nachfolgenden Frame
ab, ist also nicht vorbestimmt und ist nicht signalunabhängig.
[0016] Das Ersatzpaket hat ferner in einem Payloadbereich einen Hinweis darauf, dass es
ein Ersatzpaket ist, wobei der Hinweis von einem Basis-Decodierer ignorierbar oder
so interpretierbar ist, dass das Ersatzpaket wie ein gültiges Paket gemäß den vorbestimmten
Inhalts-Eigenschaften decodiert wird, und wobei der Hinweis von einem Erweiterungs-Decodierer,
der im Vergleich zum Basis-Decodierer eine erweiterte Funktionalität hat, interpretierbar
ist, um eine Fehlerverschleierungsmaßnahme durchzuführen, die darin besteht, für das
Ersatzpaket einen Inhalt zu erzeugen, der eine Inhalts-Eigenschaft hat, die sich von
der vorbestimmten Inhalts-Eigenschaft unterscheidet. Das Ersatzpaket kann ein reines
Payloadpaket sein oder kann ein Paket mit einem Payloadabschnitt und einem Headerabschnitt
sein, wobei der Hinweis nicht im Headerabschnitt sondern vorzugsweise im Payloadabschnitt
ist.
[0017] Ein Empfänger der Folge von Datenpaketen erhält nunmehr einen ungestörten Strom von
Datenpaketen, die alle eine gültige Daten-Syntax haben. Dieser Empfänger wird diese
Folge von Datenpaketen ohne Probleme decodieren können. Der Empfänger, wenn er ein
Basis-Empfänger ist, wird ein Ersatzpaket also ohne weiteres dekodieren und wird den
vorbestimmten Audioinhalt wiedergeben. Dies wird zwar zu einem Qualitätsverlust führen,
da der Audioinhalt vorbestimmt ist, und somit nicht sehr gut zu dem vorhergehenden
Paket oder Frame und zu dem nachfolgenden Paket oder Frame passt. Allerdings ist eine
solche nur kurze vorübergehende Qualitätseinbuße unproblematisch im Vergleich zu einer
Situation, in der der Decodierer aufgrund eines nicht vorhandenen Pakets vollständig
abstürzt und damit die gesamte Kommunikationsverbindung abbricht.
[0018] Ein Erweiterungs-Decodierer ist dagegen in der Lage, anhand eines Hinweises in dem
Ersatzpaket, der darauf hinweist, dass das Paket ein Ersatzpaket und nicht ein normales
Paket ist, diese Tatsache zu erkennen und das Ersatzpaket nicht einfach zu verarbeiten,
sondern dann, wenn ein Ersatzpaket empfangen worden ist, eine Fehlerverschleierungsmaßnahme
einzuleiten.
[0019] Fehlerverschleierungsmaßnahmen umfassen neben Frame/Paket-Wiederholungen beispielsweise
Extrapolationen von früheren Paketen oder von bereits im Speicher vorhandenen späteren
Paketen oder Interpolationen zwischen früheren und späteren Paketen. Solche Extrapolationen
oder Interpolationen umfassen insbesondere bandweise Energiemessungen, um dann in
einem Fehlerverschleierungsfall ein Kurzzeitspektrum eines Audiosignals zu synthetisieren,
dessen Spektralwerte mehr oder weniger zufällig erzeugt worden sind, wobei jedoch
die bandweise Energie des zufällig erzeugten Audiosignals von den Energien der vorherigen
und/oder nachfolgenden korrekt empfangenen oder bereits durch Fehlerverschleierungsmaßnahmen
erzeugten Paketen abhängt.
[0020] Bei einem Ausführungsbeispiel ist die vorbestimmte Inhalts-Eigenschaft, die das Ersatzpaket
hat, ein Nullspektrum. Dies führt dazu, dass ein Basis-Decodierer, der das vorbestimmte
Ersatzpaket decodiert, eine Stummschaltung bzw. "Muting" durchführt. Alternativ kann
die Inhalts-Eigenschaft ein Audiosignal sein, dessen Audioinhalt bzw. dessen Spektralwerte
mit der absoluten Hörschwelle korrelieren und zum Beispiel dahin gehend definiert
sind, dass der Audioinhalt kleiner als das 2-fache der absoluten Hörschwelle ist,
so dass ein gewisses, aber kleines Rauschen über allen Bändern enthalten ist, was
sich unter bestimmten Umständen subjektiv besser anhören kann als ein einfaches "Muting",
also ein einfaches Stummschalten.
[0021] Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend bezugnehmend auf
die Zeichnungen bzw. Anhänge detailliert erläutert. Es zeigen:
- Fig. 1
- ein Blockschaltbild einer Ausführung der Vorrichtung zum Senden einer Folge von Datenpaketen;
- Fig. 2
- ein Blockschaltbild eines Decodierers zum Decodieren einer Folge von Datenpaketen;
- Fig. 3
- ein Blockschaltbild eines Audiocodierers zum Erzeugen einer Folge von Datenpaketen;
- Fig. 4
- unter anderem eine speziellere Implementierung der Audioaufbereitungseinrichtung von
Fig. 2;
- Fig. 5A
- eine Sequenz von Datenpaketen, wie sie von einem Encodierer ausgegeben werden;
- Fig. 5B
- eine Sequenz von Datenpaketen, wie sie von einer Basisstation empfangen werden;
- Fig. 5C
- eine Folge von Datenpaketen, wie sie von einer Basisstation ausgegeben werden und
von einem Mobilteil empfangen werden, wobei ein Ersatzpaket eingefügt worden ist;
- Fig. 5D
- eine Folge von Audioinhalten, wie sie in einer Audioaufbereitungseinrichtung erzeugt
werden;
- Anhang 1
- eine Syntax der extension_payload gemäß ISO/IEC 14496-3:2005(E) MPEG4;
- Anhang 2
- eine Tabelle zur Veranschaulichung der Werte für das Feld extension_type;
- Anhang 3
- eine beispielhafte Paket-Syntax für einen Transformations-basierten Audi-ocodierer/Decodierer;
- Anhang 4
- ein Beispiel eines Ersatzpakets mit einer gültigen Paket-Syntax und einer vorbestimmten
InhaltsEigenschaft.
[0022] Fig. 1 zeigt eine Vorrichtung zum Senden einer Folge von Datenpaketen, die ein Audiosignal
darstellen. Die Vorrichtung zum Senden, die in Fig. 1 beispielhaft als Basisstation
10 ausgebildet ist, umfasst eine Einrichtung 11 zum Empfangen von Paketen der Folge,
wobei für die Pakete eine Paket-Syntax vorgeschrieben ist. Die Einrichtung 11 zum
Empfangen ist beispielsweise mit einem paketorientierten Übertragungsnetz, wie beispielsweise
dem Internet 12 verbunden. Die Basisstation 10 umfasst ferner eine Einrichtung 13
zum Detektieren, ob ein Paket der Folge von Paketen fehlt oder fehlerhaft ist. Ferner
ist eine Einrichtung 14 zum Liefern eines Ersatzpakets vorgesehen, um das fehlerhafte
Paket oder das fehlende Paket zu ersetzen. Das Ersatzpaket ist im Hinblick auf die
Paket-Syntax ein gültiges Paket, der Audioinhalt des Ersatzpakets hat allerdings eine
vorbestimmte Inhalts-Eigenschaft. Die Basisstation umfasst ferner eine Einrichtung
15 zum Ausgeben der Folge von Paketen, wobei die Folge von Paketen wenigstens ein
empfangenes Paket und ein Ersatzpaket aufweist. Am Beispiel einer Basisstation ist
die Einrichtung 15 zum Ausgeben ein HF-Front-End, das mit einer Antenne 16 gekoppelt
ist, um gemäß einer bestimmten Spezifikation, wie beispielsweise der NG DECT-Spezifikation,
eine Folge von Datenpaketen zu einem Mobilteil zu übertragen, das nachfolgend bezugnehmend
auf Fig. 2 noch detaillierter erläutert wird.
[0023] Die Einrichtung 11 von Fig. 1 ist über eine Paketleitung 17 mit der Einrichtung 15
zum Ausgeben gekoppelt, um ein normales, also nicht fehlerhaftes, rechtzeitig empfangenes
Paket zur Einrichtung 15 zu übertragen. Darüber hinaus ist die Einrichtung 14 zum
Liefern eines Ersatzpakets mit der Einrichtung 15 zum Ausgeben über eine Ersatzpaketleitung
18 verbunden. Vorzugsweise umfasst die Einrichtung 14 zum Liefern eines Ersatzpakets
einen Speicher, in dem ein Ersatzpaket gespeichert ist. Immer dann, wenn ein fehlendes
oder fehlerhaftes Paket erkannt worden ist, aktiviert die Einrichtung 14 einen Speicherzugriff,
um aus dem Speicher das Ersatzpaket wiederzugewinnen und über die Leitung 18 der Einrichtung
15 zum Ausgeben zuzuführen.
[0024] Die Einrichtung 13 zum Detektieren wird bei einem Ausführungsbeispiel dahingehend
gesteuert, dass sie dann, wenn ein Paket in einer Folge von Paketen länger als eine
maximale Verzögerung nicht empfangen worden ist, einen Paketverlust detektiert und
die Einrichtung zum Liefern eines Ersatzpakets aktiviert. Diese maximale Verzögerung
beispielsweise ist bei einem Ausführungsbeispiel über eine Steuerleitung 19 steuerbar.
Über die Steuerleitung 19 kann der Einrichtung 13 zum Detektieren eine QoS-Anforderung
(QoS = Quality of Service) zugeführt werden, die beispielsweise bei einer VoIP-Anwendung
eine maximale Verzögerung umfasst. Für andere paketorientierte Anwendungen außer VoIP
könnten andere QoS-Anforderungen existieren, die über die Steuerleitung 19 der Einrichtung
13 zum Detektieren zugeführt werden. Alternativ kann die Einrichtung 13 zum Detektieren
jedoch auch ein fest eingestelltes Kriterium haben, von dem abhängig ein Paketfehler
oder ein Paketverlust detektiert wird und damit die Einrichtung 14 zum Liefern des
Ersatzpakets aktiviert wird.
[0025] Bei einem Ausführungsbeispiel hat das Ersatzpaket, das über die Ersatzpaketleitung
18 zur Einrichtung 15 zum Ausgeben geliefert wird, nicht nur eine vorbestimmte Inhalts-Eigenschaft,
sondern auch einen Hinweis darauf, dass das Paket ein Ersatzpaket ist. Der Hinweis
ist bei einem Ausführungsbeispiel derart, dass ein Basis-Decodierer, der das Ersatzpaket
empfängt, den Hinweis ignoriert und das Paket wie ein gültiges Paket gemäß der vorbestimmten
Inhalts-Eigenschaft decodiert, und dass ein Erweiterungsdecodierer, der im Vergleich
zum Basis-Decodierer eine erweiterte Funktionalität hat, den Hinweis interpretiert,
um eine Fehlerverschleierungsmaßnahme durchzuführen, die darin besteht, für das Ersatzpaket
einen Inhalt zu erzeugen, der sich von der vorbestimmten Inhalts-Eigenschaft unterscheidet.
[0026] Fig. 2 zeigt einen Decodierer zum Decodieren einer Folge von Paketen, der beispielsweise
in einem Mobilteil 20 angeordnet sein kann. Der Decodierer umfasst einen Empfänger
21 zum Empfangen der Folge von Paketen, für die eine Paket-Syntax vorgeschrieben ist,
wobei die Folge wenigstens ein Datenpaket und wenigstens ein Ersatzpaket aufweist,
wobei das Ersatzpaket im Hinblick auf die Paket-Syntax ein gültiges Paket ist, und
wobei ein Audioinhalt des Ersatzpakets eine vorbestimmte Inhalts-Eigenschaft hat.
Ferner umfasst das Ersatzpaket den Hinweis darauf, dass es ein Ersatzpaket ist. Dieser
Hinweis kann jedoch nur von dem Erweiterungs-Decodierer, der in Fig. 2 dargestellt
ist, interpretiert werden, während von einem Basis-Decodierer dieser Hinweis nicht
interpretiert werden kann.
[0027] Die Interpretation des Hinweises auf ein Ersatzpaket wird von einem Detektor 22 geleistet,
der ausgebildet ist, um zu Detektieren, ob ein Paket den Hinweis enthält und somit
ein Ersatzpaket ist. Der Erweiterungs-Decodierer in Fig. 2 umfasst ferner eine Fehlerverschleierungseinrichtung
23 zum Synthetisieren eines Synthese-Audio-Inhalts, der eine Inhalts-Eigenschaft hat,
die sich von der vorbestimmten Inhalts-Eigenschaft, die in dem Ersatzpaket enthalten
ist, unterscheidet. Ferner umfasst der Erweiterungs-Decodierer eine Audioaufbereitungseinrichtung
24 zum Aufbereiten des Audioinhalts eines Pakets, wenn das Paket kein Ersatzpaket
ist, und zum Aufbereiten des Synthese-Audioinhalts, wenn das Paket ein Ersatzpaket
ist. Die Audio-Aufbereitungseinrichtung 24 ist mit einer Ausgabeeinheit 25 gekoppelt,
die z.B. einen D/A-Wandler, einen Verstärker und einen Lautsprecher umfassen kann.
[0028] Insbesondere ist die Audio-Aufbereitungseinrichtung mit dem Empfänger 21 über eine
Paketleitung 26 gekoppelt, über die ein reguläres Paket übertragen wird. Ferner ist
die Audio-Aufbereitungseinrichtung 24 mit der Fehlerverschleierungseinrichtung 23
über eine Ersatzpaketleitung 27 verbunden, über die ein Synthese-Audio-Inhalt von
der Fehlerverschleierungseinrichtung 23 zur Audio-Aufbereitungseinrichtung 24 übertragen
wird.
[0029] Die Fehlerverschleierungseinrichtung 23 kann eine Fehlerverschleierung auf verschiedene
Arten und Weisen durchführen. Eine einfache Fehlerverschleierungseinrichtung besteht
darin, den vorherigen Frame bzw. den Audioinhalt des vorherigen Pakets oder den Audioinhalt
des nachfolgenden Pakets einfach zu wiederholen. Diese Fehlerverschleierungsmaßnahme
wird als "frame-repetition" bezeichnet. Alternativ kann die Fehler-verschleierungseinrichtung
ausgebildet sein, um eine Extrapolation oder eine Interpolation durchzuführen. Diese
Extrapolation oder Interpolation kann spektralwertweise oder bandweise erfolgen. Im
Falle einer spektralwertweisen Extrapolation kann ein Spektralwert für einen Ersatz-Frame
auf der Basis von einem oder von mehreren Spektralwerten gleicher Frequenz von früheren
Frames erfolgen. Alternativ kann auch eine bandweise Fehlerverschleierung durchgeführt
werden dahin gehend, dass die Spektralwerte in einem Band z.B. durch einen Puffer
als Zufallszahlengenerator erzeugt werden oder mehr oder weniger determiniert erzeugt
werden, und dass die Spektralwerte dann so gewichtet werden, dass die Energie, die
sie repräsentieren, gleich einer Zielenergie ist, wobei diese Zielenergie von einem
oder mehreren vorhergehenden Frames und/oder einem oder mehreren nachfolgenden Frames
abgeleitet worden ist. Die vorhergehenden und/oder nachfolgenden Frames können gültige
empfangene Pakete sein oder können Pakete bzw. Frames sein, die bereits von einer
Fehlerverschleierungseinrichtung erzeugt worden sind, wenn ein Paketverlust stattgefunden
hat, bei dem nicht nur ein einziges Paket untergegangen ist, sondern bei dem mehrere
aufeinanderfolgende Pakete untergegangen sind.
[0030] Bei einem Ausführungsbeispiel der vorliegenden Erfindung ist der Audiocodierer, der
die Folge von Paketen erzeugt, ein Transformations-basierter Audiocodierer. Ein solcher
Transformations-basierter Audiocodierer hat eine Zeit-Frequenz-Umsetzungsstufe 30,
über die ein zeitliches Audiosignal in eine Folge von Kurzzeitspektren umgesetzt wird.
Jedes Kurzzeitspektrum wird einem Quantisierer 31 zugeführt, der eine Quantisierung
durchführt, welche von einem psychoakustischen Modell 32 gesteuert wird, derart, dass
eine Quantisierung so vorgenommen wird, dass ein Quantisierungsrauschen den subjektiven
Audioeindruck nicht stört. Dem Quantisierer nachgeschaltet ist ein Entropie-Codierer
33, der beispielsweise ein Huffman-Codierer sein kann. Der Entropie-Codierer liefert
eine Folge von Bits, die zusammen mit Seiteninformationen, welche von Quantisierer
31 beispielsweise in Form der Skalenfaktoren geliefert werden und welche vom Entropie-Codierer
33 beispielsweise in Form der verwendeten Codiertabelle geliefert werden, Daten, die
einem Paketpacker 34 zugeführt werden, der ausgangsseitig die Folge von Datenpaketen
ausgibt. Abgesehen vom Paketpacker 34 stellt der in Fig. 2 gezeigte Audio-Encodierer
einen typischen Transformations-basierten Encodierer dar, wie er beispielsweise unter
dem Stichwort MP3 (MPEG-1 Layer 3) oder AAC (MPEG-4) oder AC-3 etc. bekannt ist. Es
sei darauf hingewiesen, dass der Paketpacker 34 je nach Anforderung ausgebildet ist,
um pro Audio-Frame also pro Kurzzeitspektrum ein Paket zu erzeugen, oder um mehr als
einen Audio-Frame, also mehrere codierte Kurzzeitspektren in ein einziges Paket zu
bringen.
[0031] Fig. 4 zeigt eine detailliertere Darstellung der Audio-Aufbereitungseinrichtung 24
von Fig. 2 und insbesondere die Kooperation der Audio-Aufbereitungseinrichtung 24
mit der Fehlerverschleierungseinrichtung 23. Eingangsseitig umfasst die Audio-Aufbereitungseinrichtung
einen Paketentpacker 40, der ein Paket entpackt, um die Seiteninformationen von den
"Hauptinformationen" zu trennen.
[0032] Die Hauptinformationen, also die durch eine Folge von Bits dargestellten Kurzzeitspektren
werden einem Entropie-Decodierer 41 zugeführt, welcher Quantisierungsindizes liefert,
die einem Dequantisierer 42 zugeführt werden, der an seinem Ausgang quantisierte und
wieder dequantisierte Spektralwerte liefert, die dann, nach einer Frequenz-Zeitumsetzung
in einem Block 43, dazu verwendet werden, um das Ausgangsaudiosignal zu erzeugen.
Sowohl der Entropie-Decodierer 41 als auch der Dequantisierer 42 können von den Seiteninformationen
gesteuert werden, wobei der Entropie-Decodierer typischerweise einen Codetabellenindex
erhält, während der Dequantisierer 42 Skalenfaktoren erhält, um eine korrekte Dequantisierung
durchzuführen.
[0033] Der Paketentpacker 40 ist dann, wenn er eine Detektionseigenschaft hat, wie sie im
Detektor 22 von Fig. 2 vorhanden ist, in der Lage, der Verschleierungseinrichtung
22 einen Ersatzpaket-Hinweis zu schicken, derart, dass die Verschleierungseinrichtung
23 erkennt, dass das gerade aktuelle Paket kein vom Codierer von Fig. 3 erzeugtes
Paket, sondern ein von der Basisstation erzeugtes Ersatzpaket ist. In diesem Fall
wird die Verschleierungseinrichtung entweder dem Entropie-Decodierer eine Folge von
Bits liefern oder wird dem Dequantisierer eine Folge von Quantisierungsindizes liefern
oder wird der Frequenz-Zeit-Umsetzungseinrichtung eine Folge von Spektralwerten liefern,
um an irgendeiner Stelle in der Decodierer-Funktionskette den Synthese-Audioinhalt
einzuspeisen. Es wird, bevorzugt am Ende der Kette, also bei der Frequenz-Zeit-Umsetzungsstufe
43 ein synthetisierter spektraler Audioinhalt eingespeist.
[0034] Dieser spektrale Inhalt hängt vorzugsweise von den bereits korrekt empfangenen vorherigen
Spektren oder von den bereits vielleicht sogar schon vorliegenden nächsten Spektren
ab und kann eine spektralwertweise, eine bandweise oder eine gemischte, also spektralwertweise
und bandweise Fehlerverschleierungsmaßnahme umfassen, um den Audioinhalt zu synthetisieren.
[0035] Wie es bereits anhand der Fig. 1 und 2 dargestellt worden ist, wird eine Implementierung
der Erfindung im Rahmen einer Basisstation und eines Mobilteils eingesetzt, wobei
davon ausgegangen wird, dass die Basisstation Pakete in einer nicht korrekten Reihenfolge
empfangen kann, wie beispielsweise dann, wenn die Basisstation mit dem Internet gekoppelt
ist, während das Mobilteil darauf angewiesen ist, eine Folge von Paketen in der korrekten
Reihenfolge zu erhalten. Eine solche Kommunikationsverbindung zwischen einer Basisstation
und einem Mobilteil wird z.B. durch den DECT-Standard definiert.
[0036] Im Rahmen der Echtzeit-Kommunikation über paketorientierte Netzwerke (z.B. VoIP)
kann dabei nicht sichergestellt werden, dass alle Pakete in der erforderlichen Zeit
beim Empfänger eintreffen. Nach einer bestimmten (sehr begrenzten) Zeit müssen daher
noch nicht eingetroffene Pakete als verloren eingestuft werden. Im Falle eines IP-Paketverlusts
wird von der Basisstation ein Ersatz-Audio-Frame erzeugt und gesendet.
[0037] Eine solche Ersetzung wird die Basisstation eines Next-Generation (NG) DECT-Systems
vornehmen. Statt der originalen (aber nicht empfangenen) Frames werden dann die ersetzten
Frames von der Basisstation zum Mobilteil übertragen. Die NG DECT-Spezifikation stellt
eine Erweiterung der bisherigen DECT-Spezifikation u.a. um Wide-Band- und Super-Wide-Band-Audio-Codecs
und einen IP-Anschluss dar.
[0038] Eine NG-DECT-Station besteht aus einem oder mehreren drahtlosen Telefonen, die Gespräche
von einer NG DECT-Basisstation empfangen. Damit wird es möglich, über NG-DECT-Telefone
direkt VoIP-Gespräche zu führen. Im Idealfall können die VoIP-Sprachpakete ohne Neucodierung
in der Basisstation von der Basisstation zum Mobilteil übertragen werden.
[0039] Beispielsweise dann, wenn Audio-Codecs verwendet werden, die in ihrer regulären Syntax
keine spezielle Möglichkeit der Signalisierung eines Frame-Verlustes bieten, wird
die Erzeugung von Ersatz-Paketen eingesetzt. Ein solcher Ersatz-Audio-Frame sollte
von einem standard-konformen Decodierer decodierbar sein, sollte aber gleichzeitig
bei einer Ausführungsform einem erweiterten Decodierer die Möglichkeit geben, zweifelsfrei
zu erkennen, dass es sich bei diesem Frame um einen Ersatz-Frame handelt, so dass
dieser erweiterte Decodierer entsprechende Gegenmaßnahmen, wie beispielsweise eine
Fehlerverschleierung aktivieren kann. Das Einfügen eines Ersatz-Frames sollte ferner
ohne größeren Rechenaufwand und insbesondere ohne spezielle Auswertung der vorangegangenen
Audiodaten von einer Basisstation zu schaffen sein, derart, dass eine Basisstation
als reine Relay-Station wirken kann, also als eine Station, die ohne Decodieren und
wieder Encodieren eine Datenübertragung schafft. Eine Basisstation sollte daher, wenn
überhaupt, lediglich eine ganz geringe Paketentpackung vornehmen, die beispielsweise
nur dahin gehend durchgeführt wird, dass eine Paketsequenzinformation wiedergewonnen
wird, die darauf hinweist, wo in der Sequenz ein Datenpaket angeordnet sein muss,
damit eine korrekte Decodierung des Audioinhalts, der durch die Sequenz von Datenpaketen
repräsentiert ist, erfolgen kann.
[0040] Bei einer Ausführungsform werden spezielle Benutzerspezifische Datenbereiche von
Transformations-basierten Codierern verwendet, um für einen Decodierer mit erweiterter
Funktionalität, also für einen Erweiterungs-Decodierer eine Signalisierung zu schaffen,
dass es sich bei dem entsprechenden Frame um einen Ersatz-Frame handelt, obgleich
der zugrunde liegende Bitstrom-Syntax-Standard eine solche Signalisierung nicht vorgesehen
hatte.
[0041] Wenn ein Frame oder ein Paket einen Header und einen Payload-Abschnitt trägt, wobei
der Payload-Abschnitt die Nutzdaten enthält, so wird es bevorzugt, den Hinweis in
den Payload-Daten unterzubringen, da dann bei einer nachfolgenden Audioverarbeitung,
in der der Header ohnehin nicht berücksichtigt wird, der Hinweis wegfallen würde und
damit keine Fehlerverschleierung mehr möglich wäre.
[0042] Wenn ein Paket nur einen Payload-Abschnitt hat und keinen Header hat, ermöglicht
die Unterbringung des Hinweises im Payload-Abschnitt erst die Implementierung des
Ausführungsbeispiels. Der Hinweis wird vorzugsweise also in den Audiodaten bzw. in
dem Audiodatenabschnitt untergebracht.
[0043] Bei einer Implementierung erfüllt der Ersatz-Audio-Frame bzw. das Ersatzpaket in
dem Fall, dass keine explizite Signalisierungsmöglichkeit eines Frame-Verlusts vorgesehen
ist, ein erstes Kriterium, das dahin gehend lautet, dass der Ersatz-Frame bzw. das
Ersatzpaket von einem Standard-konformen Decodierer decodierbar ist. Das zweite Kriterium
besteht darin, dass der Ersatz-Frame einem erweiterten Decodierer die Möglichkeit
geben soll, zweifelsfrei zu erkennen, dass es sich bei diesem Frame um einen Ersatz-Frame
handelt, so dass dieser erweiterte Decodierer eine Fehlerverschleierung aktivieren
kann.
[0044] Ein gewöhnlicher Standard-konformer Decodierer wird den Ersatz-Frame decodieren können,
wenn der Ersatz-Frame ein gültiger Frame gemäß der vorbestimmten standardisierten
Datenstrom-Syntax bzw. Paket-Syntax oder Frame-Syntax ist. So wird bei einer Implementierung
bevorzugt, den fehlenden Frame durch einen Frame ohne Audio-Inhalt zu ersetzen, also
ein sogenanntes Muting durchzuführen. Muting bedeutet, dass das gesamte Spektrum zu
Null gesetzt wird. Insbesondere am Beispiel des AAC-Standards (MPEG-4-Audio) wird
zum Erzeugen des Nullspektrums die Variante bevorzugt, dass das höchste Skalenfaktorband,
für das Spektralwerte übertragen werden, zu Null gesetzt wird (max_sfb=0). Alternativ
können auch Spektralwerte für Skalenfaktorbänder übertragen werden, die dann wieder
Null sind. Dies kann prinzipiell mit jedem verfügbaren Huffman-Codebuch der verschiedenen
vorgesehenen Codebücher realisiert werden, wobei bei der Verwendung des Codebuchs
"ZERO_HCB" (Null-Huffman-Codetabelle) diese Spektrallinien nicht explizit zu übertragen
sind.
[0045] Es sei darauf hingewiesen, dass die Basisstation, die den fehlerhaften oder nicht
vorhandenen Frame detektieren soll, bereits eine Fehlerverschleierungsmaßnahme durchführen
könnte. Gemäß der Erfindung wird es jedoch bevorzugt, dass die Basisstation eine solche
Fehlerverschleierungsmaßnahme nicht durchführt, da die Fehlerverschleierungsmaßnahme
rechenintensiv ist und überdies eine Auswertung des vorangegangenen und gegebenenfalls
zukünftigen Audiosignals erfordert. Insbesondere dann, wenn eine DECT-Basisstation
mehrere Mobilteile "bedient" würde dies dazu führen, dass eine Basisstation, um eine
komplette Fehlerverschleierung durchführen zu können, bereits sämtliche Audioinhalte
durchgehend decodiert und wieder encodiert. Abgesehen von der damit verbundenen Notwendigkeit
nach hohen Prozessor- und Speicherressourcen würde auch, insbesondere dann, wenn ein
verlustbehafteter Codierer (lossy coder) zum Einsatz kommt, die Gefahr einer zusätzlichen
Qualitätsverschlechterung aufgrund der Tandem-Codiereffekte resultieren. Ausserdem
würde das Delay stark ansteigen.
[0046] Nachdem im AAC-Standard keine explizite Möglichkeit der Signalisierung eines Frame-Verlusts
vorgesehen ist, wird bei einer Implementierung eine Möglichkeit der Signalisierung
verwendet, die von einem regulären Decodierer ignoriert wird. Hierzu wird die Daten-Syntax
bzw. Paket-Syntax eingehalten. Andererseits genügt eine einfache Zu-Null-Setzung des
Spektrums eines Frames noch nicht, um ein sicheres Indiz dafür zu liefern, dass es
sich hier um einen Ersatz-Frame bzw. ein Ersatz-Paket handelt, da auch solche Frames
im regulären Betrieb vorkommen können, wenn z.B. am Codierer-Eingang kein Signal anliegt.
[0047] Der Hinweis darauf, dass es sich bei einem Frame um einen Ersatz-Frame bzw. um ein
Ersatz-Paket handelt, liefert einem Erweiterungs-Decodierer die Information, dass
es sich hier gerade nicht um einen Frame handelt, bei dem das Spektrum tatsächlich
zu Null ist, sondern dass es sich bei dem Frame um einen Frame handelt, der aufgrund
von Übertragungsfehlern in einer Basisstation eingeführt worden ist, um einen Decodierer-Ausfall
bzw. einen Ausfall der Sprachverbindung zu vermeiden.
[0048] Audio-Codier-Standards sehen typischerweise Benutzerspezifische Datenbereiche vor,
die eine zusätzliche Payload-Übertragung ermöglichen können, wobei diese Payload jedoch
von üblichen Decodierern, also Basis-Decodierern ohne erweiterte Funktionalität ignoriert
wird. Im AAC-Standard ist eine solche Benutzer-definierte Payload die sogenannte "extension_payload",
wie es in Anhang 1 definiert ist. Je nach Wert der Variable "extension_type" wird,
wie es in Anhang 2 gezeigt ist, im Standard ein anderer Zweck vorgesehen. Die Anhänge
1 und 2 sind Auszüge aus dem Standard ISO/IEC14496-3:2005(E). Die dort beschriebene
Verwendung des Füll-Elements (FILL) wird im Standard zu folgendem Zweck vorgesehen.
Füllelemente müssen dem Bitstrom hinzugefügt werden, wenn die Gesamtanzahl von Bits
für alle Audiodaten zusammen mit allen Zusatzdaten niedriger als die minimal erlaubte
Anzahl von Bits in diesem Frame ist, um die Ziel-Bitrate zu erreichen. Dynamic-Range-Control-Bits
(DRC-Bits) werden hinzugefügt, wenn der Codierer solche DRC-Informationen einfügen
möchte. Unter normalen Bedingungen werden, wie es im Standard heißt, Füllbits vermieden,
und es werden die freien Bits dazu verwendet, um das BitReservoir bzw. die Bitsparkasse
aufzufüllen. Nur wenn das Bitreservoir voll ist, werden Füllbits geschrieben. Eine
beliebige Anzahl von Füllelementen ist erlaubt.
[0049] Bei einer Implementierung der Erfindung wird, wie es in Anhang 3 bei 70 gezeigt ist,
der "extension-type" auf "0000" gesetzt, um - im Gegensatz zur standardgemäßen Verwendung
von Füllbits - nunmehr den Hinweis auf einen Frameverlust zu schreiben, und zwar im
Feld "other_bits".
[0050] So wird also der im Standard für Füll-Bits vorgesehene Benutzer-spezifische Datenbereich
eingesetzt, um eine Signalisierung des Ersatz-Rahmens zu schaffen, also um dort den
Hinweis auf einen Ersatz-Rahmen unterzubringen. Je nach Implementierung können jedoch
auch andere "extension_payload ()" verwendet werden, je nach einer anderen Einstellung
des Value von "extension_type". Da vorzugsweise ein Nullspektrum effizient übertragen
wird, (indem max_sfb gleich Null gesetzt wird) oder ein Null-Huffman-Codebuch verwendet
wird, stehen ausreichend Bits für diverse extension_payloads () zur Verfügung.
[0051] Es sei darauf hingewiesen, dass bei 71 eine typische MPEG-4-konforme Datenstrom-
bzw. Paket-Syntax bzw. Frame-Syntax für ein Ersatz-Paket gezeigt ist, wobei, wie es
bei 72 dargestellt ist, die Variante mit "max_sfb=0" verwendet wird. Vorzugsweise
werden auch alle anderen Daten, die erforderlich sind, um eine gültige Paket-Syntax
zu erhalten, ebenfalls auf Null gesetzt. Es sei jedoch darauf hingewiesen, dass diese
Daten allein noch kein sicherer Hinweis für einen Ersatzrahmen sind. Erst die extension_payload
70 führt zu einem sicheren Indiz, da ein normaler Encodierer einen solchen Rahmen
mit einem Null-Spektrum, jedoch einer speziellen extension_payload nicht schreiben
würde.
[0052] Anhang 4 zeigt einen beispielhaften Ersatz-Frame für New-Generation-DECT für eine
Abtastrate von 48 kHz, ein Monosignal und eine Bitrate von 64 kBit/s. Es sei darauf
hingewiesen, dass die extension_payload, wie sie bei 70 in Anhang 3 gezeigt ist, in
Anhang 4 nicht ohne weiteres ersichtlich ist, da die extension_payload nicht "byte
aligned" in dem Bitstrom vorliegt.
[0053] Ferner sei darauf hingewiesen, dass die Bitkombination in der "extension_payload"
ein Bitmuster, das auch als "error pattern" bezeichnet wird, aufweist, das dem ASCII-Code
für "FRAME_LOSS" entspricht. Damit wird sichergestellt, dass kein Konflikt mit anderen
Benutzern der extension_payload erzeugt wird, da es höchst unwahrscheinlich ist, dass
ein anderer Benutzer den ASCII-Code für "FRAME_LOSS" verwenden würde, um etwas zu
signalisieren, was nichts mit "FRAME_LOSS" zu tun hat.
[0054] Nachfolgend wird Bezug nehmend auf Fig. 5 auf verschiedene Reihenfolgen von Paketen
oder Frames eingegangen, wie sie an verschiedenen Punkten im Übertragungsszenario
von einem Sender der Pakete bis zu einem Decodierer bzw. bis zur Audioaufbereitungseinrichtung
in dem Decodierer auftreten können.
[0055] Fig. 5A zeigt eine Sequenz von Paketen mit der Nummer (i-1), i, (i+1), (i+2). Eine
solche korrekte Sequenz von Paketen oder Frames liegt am Eingang in ein paketorientiertes
Übertragungsnetz, wie beispielsweise das Internet, vor.
[0056] Fig. 5B zeigt eine Sequenz von Paketen am Eingang in die Basisstation, wobei zu sehen
ist, dass das Paket i in dem Zeitausschnitt, der von Fig. 5B beleuchtet wird, noch
nicht angekommen ist, dass jedoch die Reihenfolge durcheinander gewürfelt ist. Dies
liegt daran, dass das Paket i entweder komplett untergegangen ist oder einen sehr
langen Weg vom Sender zum Empfänger erhalten hat. Andererseits hat das Paket (i+2)
einen sehr günstigen Weg erhalten, so dass dieses Paket das Paket (i+1) auf dem Weg
vom Sender, also vom Encodierer, zum Basisstations-Eingang "überholt" hat.
[0057] Die Einrichtung 11 zum Empfangen in Fig. 1 wird daher die Pakete, wie sie in Fig.
5B angekommen sind, wieder in die richtige Reihenfolge sortieren. Ferner wird die
Einrichtung 13 zum Decodieren feststellen, dass das Paket mit der Nummer i nicht vorhanden
ist oder fehlerhaft ist. Aus diesem Grund wird für die Nummer i ein Ersatzpaket erzeugt,
wie es in Fig. 5C ersichtlich sind. Fig. 5C zeigt daher die Sequenz von Paketen, wie
sie von der Einrichtung 15 zum Ausgeben in Fig. 1 ausgegeben wird. Auf dem Weg von
der Basisstation gemäß Fig. 1 zum Mobilteil gemäß Fig. 2 ändert sich die Reihenfolge
der Pakete nicht mehr. Allerdings wird der Erweiterungs-Decodierer, wie er in Fig.
2 dargestellt ist, erkennen, dass das Paket mit der Nummer i ein Ersatzpaket ist.
Daher wird im Gegensatz zu den anderen Paketen, die in Fig. 5D gezeigt sind, für die
eine normale Aufbereitung des Audio-Inhalts stattfindet, für das Ersatzpaket ein Synthese-Audio-Inhalt
erzeugt, der auf eine Fehlerverschleierungsmaßnahme zurückgeht.
[0058] Abhängig von den Gegebenheiten können die erfindungsgemäßen Verfahren in Hardware
oder in Software implementiert werden. Die Implementierung kann auf einem digitalen
Speichermedium, insbesondere einer Diskette oder CD, mit elektronisch auslesbaren
Steuersignalen erfolgen, die so mit einem programmierbaren Computersystem zusammenwirken
können, dass das entsprechende Verfahren ausgeführt wird. Allgemein besteht die Erfindung
somit auch in einem Computer-Programm-Produkt mit einem auf einem maschinenlesbaren
Träger gespeicherten Programmcode zur Durchführung des Verfahrens, wenn das Computer-Programm-Produkt
auf einem Rechner abläuft. In anderen Worten ausgedrückt kann die Erfindung somit
als ein Computer-Programm mit einem Programmcode zur Durchführung des Verfahrens realisiert
werden, wenn das Computer-Programm auf einem Computer abläuft.
[0059] Gemäß einem Beispiel der Vorrichtung zum Senden einer Folge von Datenpaketen weist
die Einrichtung 14 zum Liefern folgende Merkmale auf: einen Speicher zum Speichern
des Ersatzpakets; einen Speicherholer zum Holen des Ersatzpakets aus dem Speicher
immer dann, wenn die Einrichtung 13 zum Detektieren ein fehlerhaftes Paket oder ein
fehlendes Paket detektiert.
[0060] Bei einem Beispiel der Vorrichtung zum Senden einer Folge von Datenpaketen, ist die
Einrichtung 11 zum Empfangen eine Eingangsschnittstelle einer Telefon-Basisstation
und ist mit einem Netzwerk verbindbar, das für eine Paket-basierte Datenübertragung
ausgebildet ist.
[0061] Bei einem Beispiel der Vorrichtung zum Senden einer Folge von Datenpaketen, hat das
Ersatzpaket einen Payloadbereich, in dem der Hinweis angeordnet ist.
[0062] Bei einem Beispiel der Vorrichtung zum Senden einer Folge von Datenpaketen, sind
die Daten gemäß einem Buchstaben-Code erzeugt, wobei die Daten eine Bedeutung haben,
die auf einen Datenverlust hinweist.
[0063] Bei einem Beispiel der Vorrichtung zum Senden einer Folge von Datenpaketen, stellen
die Daten den Ausdruck "FRAME_LOSS" oder "Datenverlust" dar.
[0064] Bei einem Beispiel der Vorrichtung zum Senden einer Folge von Datenpaketen, ist der
Buchstaben-Code der ASCII-Code.
[0065] Bei einem Beispiel der Vorrichtung zum Senden einer Folge von Datenpaketen, ist die
Folge von Paketen von einem Audiocodierer gemäß MPEG-1 Layer 3 oder MPEG-4 AAC erzeugt,
wobei eine Bit-Sparkassenfunktion deaktiviert ist.
[0066] Bei einem Beispiel der Vorrichtung zum Senden einer Folge von Datenpaketen, ist diese
als Basisstation ausgebildet.
[0067] Bei einem Beispiel der Vorrichtung zum Senden einer Folge von Datenpaketen, weist
die Paket-Syntax ein Fülldatenfeld auf, das von einem Basis-Encodierer gefüllt wird,
wenn eine minimale für den Frame vorgesehene Anzahl von Bytes nicht zum Codieren eines
Abschnitts des Audiosignals benötigt wird, und bei der der Hinweis durch eine vorbestimmte
Bit-Kombination in dem Fülldatenfeld dargestellt ist.
[0068] Bei einem Beispiel der Vorrichtung zum Senden einer Folge von Datenpaketen, ist die
vorbestimmte Zeitdauer einstellbar und durch eine QoS-Anforderung 19 vorgebbar.
Anhang 1
[0069] ISO/IEC 14496-3:2005(E)

Anhang 2
[0070] ISO/IEC 14496-3:2005(E)

Anhang 3
[0071] 
Anhang 4
[0072]
Pattern [80] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, Ox32,
0x92, 0x0A, 0x6A, 0x2A, 0xFA, 0x62, 0xx7A, 0x9A, 0x9D, 0x2D,
0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D,
0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D,
0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D,
0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D,
0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D,
0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x28, 0x00
};
[0073] Aufbau des Ersatz Frames für New Generation DECT für 48khz Abtastrate, Mono, Bitrate
64kBit/s
1. Vorrichtung zum Senden einer Folge von Datenpaketen, die ein Audiosignal darstellen,
zu einem Basis-Decodierer oder zu einem Erweiterungs-Decodierer, wobei der Erweiterungs-Decodierer
im Vergleich zu dem Basis-Decodierer eine erweiterte Funktionalität hat, mit folgenden
Merkmalen:
einer Einrichtung (11) zum Empfangen von Paketen der Folge, wobei für die Pakete eine
Paket-Syntax vorgegeben ist;
einer Einrichtung (13) zum Detektieren, ob ein Paket der Folge von Paketen fehlt oder
fehlerhaft ist;
einer Einrichtung (14) zum Liefern eines Ersatzpakets, um das fehlerhafte Paket oder
das fehlende Paket zu ersetzen, wobei das Ersatzpaket im Hinblick auf die Paket-Syntax
ein gültiges Paket ist, wobei ein Audioinhalt des Ersatzpakets ein vorbestimmter durch
den Basis-Decodierer wiedergebbarer Audioinhalt ist und eine vorbestimmte Inhalt-Eigenschaft
hat, und wobei das Ersatzpaket einen Hinweis darauf enthält, dass es ein Ersatzpaket
ist, wobei der Hinweis derart ausgeführt ist, dass der Hinweis von dem Basis-Decodierer
ignorierbar oder so interpretierbar ist, dass das Ersatzpaket wie ein gültiges Paket
gemäß den vorbestimmten Inhalts-Eigenschaften decodiert wird, und dass der Hinweis
von dem Erweiterungs-Decodierer interpretierbar ist, um eine Fehlerverschleierungsmaßnahme
durchzuführen, die darin besteht, für das Ersatzpaket einen Inhalt zu erzeugen, der
eine Inhalts-Eigenschaft hat, die sich von der vorbestimmten Inhalts-Eigenschaft unterscheidet;
und
einer Einrichtung (15) zum Ausgeben der Folge von Paketen, wobei die Folge von Paketen
wenigstens ein empfangenes Paket und wenigstens ein Ersatzpaket aufweist.
2. Vorrichtung nach Anspruch 1,
bei der ein Paket der Folge, das von der Einrichtung (11) zum Empfangen empfangbar
ist, von einem Transformations-basierten Audiocodierer stammt und ein Kurzzeitspektrum
eines zeitlichen Abschnitts des Audiosignals aufweist, und
bei dem die vorbestimmte Inhalts-Eigenschaft darin besteht, dass alle Spektralwerte
gleich Null sind oder zusammen eine Energie darstellen, die kleiner als das 2-fache
der Energie ist, die durch eine psychoakustische Ruhehörschwelle dargestellt wird.
3. Vorrichtung nach einem der vorhergehenden Ansprüche, bei der die Paket-Syntax ausgebildet
ist, um ein extension-payload-Feld zu definieren, und bei der der Hinweis durch Daten
in dem extension-payload-Feld gebildet ist.
4. Vorrichtung nach einem der vorhergehenden Ansprüche, bei der die Einrichtung (13)
zum Detektieren ausgebildet ist, um auf ein Datenpaket mit einem Sequenzpositionshinweis
eine vorbestimmte Zeitdauer lang zu warten, und um dann, wenn die vorbestimmte Zeitdauer
verstrichen ist, ohne dass das Datenpaket detektiert worden ist, einen Paketverlust
der Einrichtung (14) zum Liefern zu signalisieren.
5. Vorrichtung nach Anspruch 4, bei der die Sequenzpositionsinformation, nach der gesucht
wird, durch einen Sequenzpositionshinweis eines vorherigen oder nachfolgenden gültigen
Pakets eingestellt wird.
6. Vorrichtung nach einem der Ansprüche 4 oder 5, bei der die vorbestimmte Zeitdauer
kleiner ist, wenn eine QoS-Anforderung ein kleineres Delay aufweist, und größer ist,
wenn die QoS-Anforderung ein größeres Delay erlaubt.
7. Vorrichtung nach einem der vorhergehenden Ansprüche, bei der die Einrichtung (15)
zum Ausgeben ausgebildet ist, um die Folge von Paketen als eine lückenlose Folge von
Paketen und Ersatzpaketen auszugeben, die eine vollständige fortlaufende Sequenz darstellt.
8. Vorrichtung nach einem der vorhergehenden Ansprüche, bei der die Einrichtung (11)
zum Empfangen ausgebildet ist, um Pakete zwar zu empfangen und die empfangenen Pakete
aber nicht oder höchstens teilweise zu decodieren, um eine Sequenzpositionsinformation
in dem Paket zu erfassen.
9. Verfahren zum Senden einer Folge von Datenpaketen, die ein Audiosignal darstellen,
zu einem Basis-Decodierer oder zu einem Erweiterungs-Decodierer, wobei der Erweiterungs-Decodierer
im Vergleich zu dem Basis-Decodierer eine erweiterte Funktionalität hat, mit folgenden
Schritten:
Empfangen (11) von Paketen der Folge, wobei für die Pakete eine Paket-Syntax vorgegeben
ist;
Delektieren(13), ob ein Paket der Folge von Paketen fehlt oder fehlerhaft ist;
Liefern (14) eines Ersatzpakets, um das fehlerhafte Paket oder das fehlende Paket
zu ersetzen, wobei das Ersatzpaket im Hinblick auf die Paket-Syntax ein gültiges Paket
ist, wobei ein Audioinhalt des Ersatzpakets ein vorbestimmter durch den Basis-Decodierer
wiedergebbarer gültiger Audioinhalt ist und eine vorbestimmte Inhalt-Eigenschaft hat,
und wobei das Ersatzpaket einen Hinweis darauf enthält, dass es ein Ersatzpaket ist,
wobei der Hinweis derart ausgeführt ist, dass der Hinweis von dem Basis-Decodierer
ignorierbar oder so interpretierbar ist, dass das Ersatzpaket wie ein gültiges Paket
gemäß den vorbestimmten Inhalts-Eigenschaften decodiert wird, und dass der Hinweis
von dem Erweiterungs-Decodierer interpretierbar ist, um eine Fehlerverschleierungsmaßnahme
durchzuführen, die darin besteht, für das Ersatzpaket einen Inhalt zu erzeugen, der
eine Inhalts-Eigenschaft hat, die sich von der vorbestimmten Inhalts-Eigenschaft unterscheidet;
und
Ausgeben (15) der Folge von Paketen, wobei die Folge von Paketen wenigstens ein empfangenes
Paket und wenigstens ein Ersatzpaket aufweist.
10. Computer-Programm mit einem Programmcode zum Ausführen des Verfahrens nach Anspruch
9, wenn das Verfahren auf einem Computer abläuft.
1. Dispositif d'envoi d'une séquence de paquets de données, qui représentent un signal
audio, à un décodeur de base ou à un décodeur d'extension, dans lequel le décodeur
d'extension présente une fonctionnalité étendue par rapport au décodeur de base, aux
caractéristiques suivantes:
un moyen (11) destiné à recevoir des paquets de la séquence, où une syntaxe de paquet
est prédéterminée pour les paquets;
un moyen (13) destiné à détecter si un paquet de la séquence de paquets est manquant
ou erroné;
un moyen (14) destiné à fournir un paquet de remplacement pour remplacer le paquet
défectueux ou le paquet manquant, où le paquet de remplacement est un paquet valide
en ce qui concerne la syntaxe de paquet, où un contenu audio du paquet de remplacement
est un contenu audio prédéterminé reproductible par le décodeur de base et présente
une propriété de contenu prédéterminée, et où le paquet de remplacement contient une
indication qu'il est un paquet de remplacement, où l'indication est réalisée de sorte
que l'indication puisse être ignorée ou interprétée par le décodeur de base de sorte
que le paquet de remplacement soit décodé comme un paquet valide selon les propriétés
de contenu prédéterminées, et que l'indication puisse être interprétée par le décodeur
d'extension pour réaliser une action de dissimulation d'erreur qui consiste à générer
pour le paquet de remplacement un contenu qui présente une propriété de contenu qui
diffère de la propriété de contenu prédéterminée; et
un moyen (15) destiné à sortir la séquence de paquets, où la séquence de paquets présente
au moins un paquet reçu et au moins un paquet de remplacement.
2. Dispositif selon la revendication 1,
dans lequel un paquet de la séquence qui peut être reçu par le moyen destiné à recevoir
(11) provient d'un codeur audio à base de transformation et présente un spectre à
court terme d'un segment temporel du signal audio, et
dans lequel la propriété de contenu prédéterminée consiste en ce que toutes les valeurs
spectrales sont égales à zéro ou représentent ensemble une énergie qui est inférieure
à deux fois l'énergie qui est représentée par un seuil d'audition de repos psycho-acoustique.
3. Dispositif selon l'une des revendications précédentes, dans lequel la syntaxe de paquet
est conçue pour définir un champ de charge utile d'extension et dans lequel l'indication
est formée par des données dans le champ de charge utile d'extension.
4. Dispositif selon l'une des revendications précédentes, dans lequel le moyen destiné
à détecter (13) est conçu, pour attendre pendant un laps de temps prédéterminé un
paquet de données avec une indication de position de séquence, et pour signaler, lorsque
le laps de temps prédéterminé est écoulé sans que le paquet de données n'ait été détecté,
une perte de paquet du moyen destiné à fournir (14).
5. Dispositif selon la revendication 4, dans lequel l'information de position de séquence
qui est recherchée est établie par une indication de position de séquence d'un paquet
valide précédent ou suivant.
6. Dispositif selon l'une des revendications 4 ou 5, dans lequel la durée prédéterminée
est inférieure lorsqu'une demande de QoS présente un retard plus petit et supérieure
lorsque la demande de QoS permet un retard plus grand.
7. Dispositif selon l'une des revendications précédentes, dans lequel le moyen (15) destiné
à sortir est conçu pour sortir la séquence de paquets comme une séquence complète
de paquets et de paquets de remplacement qui représente une séquence continue complète.
8. Dispositif selon l'une des revendications précédentes, dans lequel le moyen (11) destiné
à recevoir est conçu pour recevoir certes des paquets, toutefois pour ne pas décoder
ou ne décoder que tout au plus partiellement les paquets reçus, pour détecter une
information de position de séquence dans le paquet.
9. Procédé d'envoi d'une séquence de paquets de données qui représentent un signal audio,
à un décodeur de base ou à un décodeur d'extension, dans lequel le décodeur d'extension
présente une fonctionnalité étendue par rapport au décodeur de base, aux étapes suivantes
consistant à:
recevoir (11) des paquets de la séquence, où une syntaxe de paquet est prédéterminée
pour les paquets;
détecter (13) si un paquet de la séquence de paquets est manquant ou erroné;
fournir (14) un paquet de remplacement pour remplacer le paquet défectueux ou le paquet
manquant, où le paquet de remplacement est un paquet valide en ce qui concerne la
syntaxe de paquet, où un contenu audio du paquet de remplacement est un contenu audio
valide prédéterminé reproductible par le décodeur de base et présente une propriété
de contenu prédéterminée, et où le paquet de remplacement contient une indication
qu'il est un paquet de remplacement, où l'indication est réalisée de sorte que l'indication
puisse être ignorée ou interprétée par le décodeur de base de sorte que le paquet
de remplacement soit décodé comme un paquet valide selon les propriétés de contenu
prédéterminées, et que l'indication puisse être interprétée par le décodeur d'extension
pour réaliser une action de dissimulation d'erreur qui consiste à générer pour le
paquet de remplacement un contenu qui présente une propriété de contenu qui diffère
de la propriété de contenu prédéterminée; et
sortir (15) la séquence de paquets, où la séquence de paquets présente au moins un
paquet reçu et au moins un paquet de remplacement.
10. Programme d'ordinateur avec un code de programme pour réaliser le procédé selon la
revendication 9 lorsque le procédé est exécuté sur un ordinateur.