DE102014115188A1 - Verfahren zur Anpassung eines zu übertragenden Datenstroms an eine Ressourcenauslastung - Google Patents

Verfahren zur Anpassung eines zu übertragenden Datenstroms an eine Ressourcenauslastung Download PDF

Info

Publication number
DE102014115188A1
DE102014115188A1 DE102014115188.7A DE102014115188A DE102014115188A1 DE 102014115188 A1 DE102014115188 A1 DE 102014115188A1 DE 102014115188 A DE102014115188 A DE 102014115188A DE 102014115188 A1 DE102014115188 A1 DE 102014115188A1
Authority
DE
Germany
Prior art keywords
data stream
outgoing data
resource utilization
unit
receiver
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.)
Pending
Application number
DE102014115188.7A
Other languages
English (en)
Inventor
Andreas Kröpfl
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.)
Eyeson At GmbH
Original Assignee
VISOCON GmbH
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 VISOCON GmbH filed Critical VISOCON GmbH
Priority to DE102014115188.7A priority Critical patent/DE102014115188A1/de
Priority to US15/518,372 priority patent/US10178145B2/en
Priority to PCT/EP2015/074185 priority patent/WO2016059257A1/de
Publication of DE102014115188A1 publication Critical patent/DE102014115188A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/42Arrangements for resource management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/65Arrangements characterised by transmission systems for broadcast
    • H04H20/76Wired systems
    • H04H20/82Wired systems using signals not modulated onto a carrier
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • H04L47/263Rate modification at the source after receiving feedback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/38Flow control; Congestion control by adapting coding or compression rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/78Architectures of resource allocation
    • H04L47/781Centralised allocation of resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • H04L47/801Real time traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/828Allocation of resources per group of connections, e.g. per group of users
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/83Admission control; Resource allocation based on usage prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • H04L65/4038Arrangements for multi-party communication, e.g. for conferences with floor control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/613Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by the destination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6582Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/141Systems for two-way working between two video terminals, e.g. videophone
    • H04N7/147Communication arrangements, e.g. identifying the communication as a video-communication, intermediate storage of the signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Game Theory and Decision Science (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Social Psychology (AREA)
  • Databases & Information Systems (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zur Anpassung von zu übertragenden Datenströmen an die jeweilige Ressourcenauslastung verschiedener Empfängereinheiten (5), insbesondere bei einer audio- und videobasierten Echtzeitkommunikation, wobei eine Servereinheit (1) einen eingehenden Datenstrom (2) von zumindest einer Sendereinheit (3), vorzugsweise jeweils einen eingehenden Datenstrom (2) von mehreren Sendereinheiten (3), empfängt, die Servereinheit (1) aus diesen eingehenden Datenströmen (2) mehrere ausgehende Datenströme (4) mit unterschiedlich komprimierten Datenraten (12) unter Anpassung an die jeweilige Ressourcenauslastung der verschiedenen Empfängereinheiten (5) erzeugt, und jeweils ein ausgehender Datenstrom (4) über Übertragungskanäle an die Empfängereinheiten (5) verschickt wird. Erfindungsgemäß wird vorgeschlagen, dass die Servereinheit (1) zumindest von einigen der Empfängereinheiten (5) deren sich über die Zeit ändernden Ressourcenauslastungen in zeitlichen Abständen empfängt und aus diesen Informationen (8) die zu erwartenden Ressourcenauslastungen der Empfängereinheiten (5) vorausberechnet und dementsprechend die Datenraten der komprimierten ausgehenden Datenströme (4) regelnd anpasst. Ebenfalls wird eine entsprechende Servereinheit (1) vorgeschlagen.

Description

  • Die vorliegende Erfindung betrifft ein Verfahren zur Anpassung eines zu übertragenden Datenstroms an die jeweilige Ressourcenauslastung verschiedener Empfängereinheiten, insbesondere bei einer audio- und videobasierten Echtzeitkommunikation. Dabei empfängt eine Servereinheit einen eingehenden Datenstrom von zumindest einer Sendereinheit, vorzugsweise jeweils einen eingehenden von mehreren Sendereinheiten. Die Servereinheit erzeugt aus diesem oder diesen eingehenden Datenströmen mehrere ausgehende Datenströme mit unterschiedlichen komprimierten Datenraten unter Anpassung an die jeweilige Ressourcenauslastung der verschiedenen Empfängereinheiten, und verschickt jeweils einen ausgehenden Datenstrom über Übertragungskanäle an die Empfängereinheiten.
  • Aus der DE 11 2012 001 770 T5 ist eine auf Echtzeitverarbeitungsfähigkeit basierende Qualitätsanpassung bekannt. Darin wird die Qualität eines an ein Clientgerät übertragenen Medienstroms dynamisch auf der Grundlage der Echtzeit-Verfügbarkeit von Ressourcen auf dem Clientgerät angepasst. Zentralverarbeitungseinheitsressourcen, Speicherverfügbarkeit, Pufferauslastung, Auslastung der Grafikverarbeitungseinheit etc. werden fortlaufend überwacht, um die Fähigkeit eines Gerätes zur Handhabung von Medienströmung bestimmter Qualitätslevel zu bewerten. Wenn festgestellt wird, dass die Ressourcen auf Seiten eines Clientgerätes einen Medienstrom hoher Qualität zeitweilig nicht bewältigen können, wird ein Strom geringerer Qualität gewählt und an das Clientgerät übermittelt, ohne dass eine neue Sitzung eröffnet werden muss. Nachteilig hierbei ist, dass die Qualitätsanpassung eines Medienstroms nur relativ langsam durchgeführt wird. Es wird immer nur auf eine Echtzeit-Verfügbarkeit reagiert, d.h. es wird nur nach einem Erkennen der Verfügbarkeit von Ressourcen eine andere Qualität des Medienstroms gewählt.
  • Des Weiteren ist aus der EP 2 498 491 A1 ein Verfahren und eine Vorrichtung zur audio- und videobasierten Echtzeit-Kommunikation zwischen wenigstens einem Master-Teilnehmer und einer Vielzahl von Gruppenteilnehmern bekannt. Dabei ist die Anzahl der Teilnehmer nahezu unbegrenzt, wobei gleichzeitig die Möglichkeit der bidirektionalen Kommunikation gegeben sein soll. Nachteilig hierbei ist, dass nicht die verfügbaren Bandbreiten der Gruppenteilnehmer berücksichtigt werden.
  • Aufgabe der vorliegenden Erfindung ist es somit, ein Verfahren bzw. eine Vorrichtung zu schaffen, das besser auf die verfügbaren Ressourcen von Teilnehmern eingeht, um die Qualität einer Datenübertragung zu verbessern. Auch eine entsprechende Vorrichtung soll vorgeschlagen werden.
  • Die Aufgabe wird gelöst durch ein Verfahren und eine Servereinheit zur Anpassung eines zu übertragenden Datenstroms an eine Ressourcenauslastung mit den Merkmalen der unabhängigen Patentansprüche.
  • Vorgeschlagen wird ein Verfahren bzw. eine Vorrichtung zur Anpassung zu übertragenden Datenströmen an die jeweiligen Ressourcenauslastung verschiedener Empfängereinheiten, insbesondere bei einer audio- und videobasierten Echtzeitkommunikation. Die genannte Anpassung wird von einem oder mehreren entsprechend ausgebildeten Computerprogrammen bzw. Softwareprogrammen durchgeführt.
  • Eine Servereinheit empfängt dabei einen eingehenden Datenstrom von zumindest einer Sendereinheit, vorzugsweise einen eingehenden Datenstrom von mehreren Sendereinheiten. Dabei ist eine Sendereinheit bei einer Echtzeitkommunikation z.B. ein Teilnehmer einer Videokonferenz. Der Teilnehmer besitzt ein Aufnahmegerät, z.B. eine Webcam und ein Mikrofon, welches den an die Servereinheit zu übertragenden Datenstrom erzeugt.
  • Die Servereinheit umfasst Mittel zum Empfangen des zumindest einen eingehenden Datenstroms, welche insbesondere als eine Schnittstelle zum Internet ausgebildet ist, wenn der eingehende Datenstrom über das Internet empfangen wird. Die Schnittstelle kann dabei ein WLAN (Wireless Local Area Network), ein LAN oder ähnliches sein.
  • Die Servereinheit erzeugt mittels entsprechend programmierter Software aus dem eingehenden Datenstrom mehrere ausgehende Datenströme mit unterschiedlichen komprimierten Datenraten unter Anpassung an die jeweilige Ressourcenauslastung der verschiedenen Empfängereinheiten. Dabei ist unter einer Datenrate ein bestimmter Wert von Informationseinheiten pro Zeiteinheit zu verstehen, die meist in kbit/s oder Mbit/s (Kilobit pro Sekunde bzw. Megabit pro Sekunde) angegeben wird. Die Datenrate ist im Allgemeinen ein Maß für die Qualität oder den Informationsgehalt eines Datenstroms. Mit einer höheren Datenrate können mehr Informationen in einer gleichen Zeit übertragen und/oder verarbeitet werden. Bei einer Videokonferenz steigt die Qualität der Video- und/oder Audioinformation mit der Datenrate an, d.h. mit einer höheren Datenrate können mehr Bilder pro Sekunde, eine höhere Anzahl an Pixel und/oder mehr Farben übertragen werden. Bevorzugt ist es daher, wenn eine Empfängereinheit einen Datenstrom erhält, der eine möglichst hohe Datenrate aufweist.
  • Beispielhaft werden in der Servereinheit aus einem eingehenden Datenstrom zwei ausgehende Datenströme mit einer Datenrate von 384 kbit/s und 2,5 Mbit/s erzeugt. Selbstverständlich können auch deutlich mehr ausgehende Datenströme mit deutlich höheren und/oder niedrigeren Datenraten erzeugt werden.
  • Anschließend wird jeweils ein ausgehender Datenstrom über Übertragungskanäle an jeweils eine Empfängereinheit verschickt. Da im Allgemeinen verschiedene Empfängereinheiten verschiedene Ressourcenauslastungen aufweisen, ist es vorteilhaft, einer Empfängereinheit mit einer höheren Ressourcenauslastung einen ausgehenden Datenstrom zu schicken, welcher eine geringere Datenrate aufweist, so dass auch diese Empfängereinheit den ausgehenden Datenstrom verarbeiten kann. Für den Fall, dass eine Empfängereinheit eine geringere Ressourcenauslastung aufweist, also mehr Ressourcen zur Verfügung stehen, wird vorteilhafterweise dieser Empfängereinheit ein ausgehender Datenstrom mit einer höheren Datenrate geschickt. Die Empfängereinheiten sind dabei im Falle einer Videokonferenz mehrere Teilnehmer, die eine Videokonferenz verfolgen. Es ist auch denkbar, dass eine oder mehrere Empfängereinheiten Aufnahmegeräte sind, welche den ausgehenden Datenstrom für spätere Zwecke aufnehmen. Die Empfängereinheiten weisen entsprechende Software auf, um deren Ressourcenauslastung auszuwerten und der Servereinheit bereitzustellen.
  • Erfindungsgemäß empfängt die Servereinheit zumindest von einigen Empfängereinheiten deren sich über die Zeit ändernden Ressourcenauslastungen in zeitlichen Abständen. Aus diesen Informationen berechnet sie die zu erwartenden Ressourcenauslastungen der Empfängereinheiten voraus und passt dementsprechend die Datenraten der komprimierten ausgehenden Datenströme an. Dadurch wird eine schnellere und optimale Anpassung der Datenraten der ausgehenden Datenströme an die Ressourcenauslastung der Empfängereinheiten erreicht. Beispielsweise wird eine steigende Ressourcenauslastung bei einer Empfängereinheit durch deren an die Servereinheit geschickten Informationen erkannt und bereits für einen späteren Zeitpunkt vorausberechnet. Entsprechend kann dann der ausgehende Datenstrom für diese Empfängereinheit auf eine geringere Datenrate komprimiert werden.
  • Die Ressourcenauslastung kann sich auf die Empfangs- und/oder Sendegeschwindigkeit (Bandbreite) und/oder auf die Auslastung eines Prozessors und/oder eines Speichers der jeweiligen Empfängereinheit beziehen. Ein Prozessor bestimmt dabei im Allgemeinen die Verarbeitungsgeschwindigkeit eines Datenstroms. Auch in einer Grafikverarbeitungseinheit der Empfängereinheit kann ein solcher Prozessor angeordnet sein, der lediglich die Grafikinformationen eines Datenstroms verarbeitet.
  • Eine hohe Ressourcenauslastung, d.h. die Verfügbarkeit von nur geringen Ressourcen, führt zu einer Einschränkung oder Beeinträchtigung in der Echtzeitkommunikation, da z.B. aufgrund einer geringen Bandbreite der ausgehende Datenstrom nicht vollständig in Echtzeit übertragen werden kann oder da z.B. der Prozessor nicht in der Lage ist, die Größe des ausgehenden Datenstroms zu verarbeiten. Dies würde beispielsweise dazu führen, dass bei einer Videokonferenz die Videoinformationen nicht flüssig bei der Empfängereinheit angezeigt werden.
  • Ferner ist es von Vorteil, wenn die unterschiedlichen Datenraten durch unterschiedliche Auflösungen, Farbtiefen, Bildwiederholungsraten und/oder Komprimierungscodecs erzeugt werden. Wiederum am Beispiel einer Videokonferenz ist es dabei am einfachsten, wenn die Datenrate dadurch verringert wird, dass die Bildwiederholungsrate verringert wird. Eine weitere Möglichkeit zur Verringerung der Datenrate besteht in einer Herabsetzung der Farbtiefe. Anstelle einer farbigen Videokonferenz wird die Videokonferenz beispielsweise nur in schwarz/weiß dargestellt. Auch kann eine geringere Auflösung gewählt werden. Außerdem kann ein bzw. ein anderer Komprimierungscodec genutzt werden. Ein Komprimierungscodec ist dabei eine Vorschrift zum Codieren (Komprimieren) und Decodieren (Dekomprimieren) eines Datenstroms. Bei der Wahl der passenden Komprimierungscodecs kann somit zusätzlich die Datenrate verringert werden.
  • Ein besonderer Vorteil ist es, wenn zumindest zwei jeweils ein Videosignal enthaltende und von unterschiedlichen Sendereinheiten stammende eingehende Datenströme in der Servereinheit zu einem kombinierten ausgehenden Datenstrom, insbesondere Mosaikbild, zusammengefügt werden. So können im Falle einer Videokonferenz mehrere Teilnehmer in einem Videobild dargestellt werden. Ein Teilnehmer mit einer Empfängereinheit, der diesen kombinierten ausgehenden Datenstrom erhält, sieht dann in dem Videostream mehrere Teilnehmer und kann so deren Reaktionen feststellen und ggf. darauf eingehen.
  • Ein weiterer Vorteil ist es, wenn zumindest eine Teilnehmereinrichtung vorgesehen ist, in der eine besagte Sendereinheit und eine besagte Empfängereinheit integriert sind. Dabei kann der Teilnehmer einer Videokonferenz mit seiner Teilnehmereinrichtung zum einen Datenstrom an die Servereinheit senden (beispielsweise sich selbst, eine von ihm gezeigte Präsentation, etc.) und auch die Beiträge der anderen Teilnehmer sehen, beispielsweise in Form eines Mosaikbilds auf seinem Bildschirm, auf dem dieser Teilnehmer selbst zu sehen ist oder nicht.
  • Ebenfalls ist es von Vorteil, wenn die Datenrate jedes ausgehenden Datenstroms vor Beginn der Anpassung einen vordefinierten Wert erhält und dass die Werte von mindestens einem ausgehenden Datenstrom, vorzugsweise von allen ausgehenden Datenströmen, im Laufe der Anpassung sukzessive und iterativ aufgrund der erhaltenden Informationen zu den Ressourcenauslastungen verändert werden. Ein derartiger vordefinierter Wert kann auch als Startwert bezeichnet werden. Dabei kann es sinnvoll sein, wenn die vordefinierten Werte abgestuft sind, so dass möglichst alle in Frage kommenden Bandbreitenbereiche abgedeckt sind. Z.B. könnte die Abstufung so ausgebildet sein, dass bei fünf ausgehenden Datenströmen die Stufen bei 500 kbit/s, 1.000 kbit/s, 1.500 kbit/s, 2.000 kbit/s und 2.500 kbit/s liegen. Somit ist der Bandbreitenbereich von 500 kbit/s bis 2500 kbit/s gleichmäßig abgedeckt. Eine Abstufung muss allerdings keineswegs äquidistant sein.
  • Im Anschluss werden die ausgehenden Datenströme aufgrund der erhaltenden Informationen zu den Ressourcenauslastungen der Empfängereinheiten verändert, um auf die Ressourcenauslastung der Empfängereinheiten einzugehen.
  • Des Weiteren ist es von Vorteil, wenn nach Beendigung einer Übertragung eines ausgehenden Datenstroms an eine Empfängereinheit die Datenrate des ausgehenden Datenstroms wieder zu dem jeweiligen, vor der Anpassung erhaltenen, vordefinierten Wert zurückkehrt. Bei der nächsten Übertragung (an eine andere oder sogar die gleiche Empfängereinheit) wird dann eine Kompression der Datenrate wieder von diesem vordefinierten Wert aus begonnen.
  • Die besagten vordefinierten Werte der Datenraten beziehen sich beispielsweise auf Videoformate nach CIF (Common Intermediate Interface), PAL (Phase Alternating Line), NTSC-Format (National Television Systems Committee) und/oder HDTV (High Definition Television). Das CIF und PAL Videoformat sind beispielsweise auf die Übertragung mit relativ niedrigen Datenraten ausgelegt und das HDTV-Videoformat für höhere Datenraten. Möglich sind natürlich auch andere Videoformate, wie z.B. die sogenannten 4K oder 8K UHDTV (Ultra High Definition Television) Videoformate.
  • Besonders vorteilhaft ist es, wenn die besagte Vorausberechnung unter Verwendung eines sukzessiven Näherungsverfahrens durchgeführt wird. Dadurch wird kontinuierlich oder in bestimmten Zeitabständen die Datenrate eines ausgehenden Datenstroms iterativ an die von einer jeweiligen Empfängereinheit nach und nach empfangene momentane Ressourcenauslastung angepasst.
  • Ebenso ist es von Vorteil, wenn die besagte – vorzugsweise sukzessive – Vorausberechnung unter Verwendung eines exponentiellen Glättungsverfahrens, ggf. zusammen mit einem weiteren Algorithmus, vorausberechnet wird. Als Beispiel eines exponentiellen Glättungsverfahrens sei die exponentielle Glättung genannt. Die exponentielle Glättung basiert dabei üblicherweise auf einer rekursiven Formel wie die folgende: y * / t = αyt + (1 – α)y * / t-1
  • In dieser Formel steht yt für die von den Empfängereinheiten an die Servereinheit geschickten Informationen hinsichtlich der zeitlich veränderlichen Ressourcenauslastungen zum Zeitpunkt t. yt-1* ist der aus der Vorperiode vorausberechnete Wert der Ressourcenauslastung der Empfängereinheit, entspricht also dem in der vorherigen „Schleife“ berechneten Wert. yt* ist der Wert für die vorausberechnete erwartete Ressourcenauslastung einer Empfängereinheit. α ist ein Glättungsfaktor, welcher in einem Intervall zwischen 0 und 1 liegt.
  • Wenn man die rekursive Formel für die Schritte t = 1 und t = 2, t = 2 und t = 3 usw. ausführt und die jeweiligen Formeln ineinander einsetzt, erhält man die folgende verallgemeinerte Formel:
    Figure DE102014115188A1_0002
  • Darin ist zu erkennen, welches Verhalten für Glättungsfaktoren α nahe der Null und nahe der Eins auftritt. Für einen Glättungsfaktor α nahe der Null (z.B. 0,1) wird der erste Term (vor der Summe) stärker gewichtet, d.h. ein vorausberechneter Wert wird nur sehr langsam von einem Startwert y0* abweichen. Hingegen wird ein Glättungsfaktor α nahe der 1 (z.B. 0,9) einen zuletzt vorausberechneten Wert y stärker gewichten. Ein höherer Glättungsfaktor führt also zu einer schnelleren Anpassung der Datenraten der ausgehenden Datenströme an die Ressourcenauslastung der Empfängereinheiten.
  • Es kann dabei sinnvoll sein, den Wert des Glättungsfaktors von vorneherein konstant, d.h. bei einem vorher bestimmten Wert, zu halten. Alternativ könnte aber auch der Glättungsfaktor während einer Echtzeitkommunikation variiert werden. Das kann dann sinnvoll sein, wenn die Ressourcenauslastung einer Empfängereinheit über einen längeren Zeitraum annähernd konstant bleibt. Dann kann zu einem niedrigeren Wert für den Glättungsfaktor übergegangen werden. Befindet man sich dagegen in einem Zeitraum, in dem sich die Ressourcenauslastung schneller als erwartet ändert, kann der Wert des Glättungsfaktors während der Datenratenanpassung angehoben werden.
  • Des Weiteren kann es für manche Situationen sinnvoll sein, auf sogenannte Trends in der Ressourcenauslastung einzugehen. Mit einem Trend wird der Umstand bezeichnet, dass die Ressourcenauslastung in einem längeren Zeitintervall kontinuierlich sinkt oder steigt. Dann kann es sinnvoll sein, eine sogenannte exponentielle Glättung zweiter Ordnung durchzuführen. Mit diesem Verfahren werden die Trends berücksichtigt und eine besonders schnelle Anpassung der Datenraten der ausgehenden Datenströme an die Ressourcenauslastung der Empfängereinheiten ist möglich.
  • Vorteilhafterweise schicken die Empfängereinheiten ihre jeweiligen Ressourcenauslastungen in denjenigen Zeitintervallen an die Servereinheit, in denen sich die jeweiligen Ressourcenauslastungen ändern. Die Informationen der Ressourcenauslastung werden also erst dann verschickt, wenn die Ressourcenauslastung sich tatsächlich ändert.
  • Gleichfalls kann es von Vorteil sein, wenn die Empfängereinheiten ihre jeweilige Ressourcenauslastung in regelmäßigen oder sich ändernden Zeitintervallen, beispielsweise von 0,5 s bis 20 s, insbesondere von 1 s bis 15 s, an die Servereinheit schicken. Es wird somit eine stetige Anpassung der Datenraten der ausgehenden Datenströme an die Ressourcenauslastung der Empfängereinheiten realisiert.
  • Wenn eine festgelegte Anzahl an komprimierten ausgehenden Datenströmen mit jeweils unterschiedlichen Datenraten und unterschiedlich vordefinierten Werten zur Verfügung gestellt wird, wird vorteilhafterweise eine hohe oder sogar zu hohe Ressourcenauslastung der Servereinheit selbst verhindert.
  • Bei einer unbegrenzten Anzahl an ausgehenden Datenströmen würden selbst bei der Servereinheit Grenzen bei den Ressourcen erreicht. Daher wird vorteilhafterweise die Anzahl der ausgehenden Datenströme festgelegt, welche aber selbstverständlich von Servereinheit zu Servereinheit unterschiedlich sein kann.
  • Von besonderem Vorteil ist es, wenn eine 1:1 Zuordnung zwischen jeder Empfängereinheit und genau einem, jeweils unterschiedlichen, komprimierten ausgehenden Datenstrom vorgenommen wird. Eine solche Zuordnung bietet sich insbesondere bei einer relativ kleinen Videokonferenz von beispielsweise bis zu 10 aktiven Teilnehmern an. Hierbei kann jeder ausgehende Datenstrom an die jeweilige Bandbreitengegebenheit des zugeordneten Teilnehmers angepasst werden, wie dies weiter unten näher erläutert wird. Passive Teilnehmer der Videokonferenz können den ausgehenden Datenstrom wählen, dessen Datenrate ihrer Bandbreite am nächsten liegt.
  • Bei der genannten 1:1 Zuordnung spricht man auch von einer 1:1 Abbildung (oder 1:1 Mapping), d.h. eine bestimmte Anzahl an Datenströmen steht einer gleichen Anzahl Empfängereinheiten gegenüber. Dabei ist unmittelbar ersichtlich, dass jede Empfängereinheit einen ausgehenden Datenstrom mit einer Datenrate zugewiesen bekommt, der nur auf seine Ressourcenauslastung angepasst wird. Die Datenrate jeweils eines ausgehenden Datenstroms muss dabei nur auf eine einzige Empfängereinheit angepasst werden. Z.B. wird bei einer steigenden Ressourcenauslastung (d.h. die Empfängereinheit hat weniger Ressourcen zu Verfügung) die Datenrate des Datenstroms so angepasst, dass die Datenrate des ausgehenden Datenstromes sinkt.
  • Natürlich kann auch hier die Ressourcenauslastung der Empfängereinheit vorausberechnet werden, um so eine möglichst schnelle Anpassung der Datenrate des ausgehenden Datenstroms an die Ressourcenauslastung zu erhalten. Dies geschieht beispielsweise mittels der zuvor genannten exponentiellen Glättung. Dazu schickt die Empfängereinheit den aktuellen „Status“ seiner Ressourcenauslastung an die Servereinheit, diese berechnet dann die zu erwartende Ressourcenauslastung der Empfängereinheit voraus und passt dementsprechend die Datenrate des ausgehenden Datenstroms an. Dieser Vorgang wiederholt sich kontinuierlich, bis die Servereinheit oder eine Empfängereinheit die Echtzeitkommunikation beendet.
  • Diese Zuordnung kann auch nur temporär erfolgen, wie im Folgenden erläutert wird. Als einfaches Beispiel sei angenommen, dass zwei ausgehende Datenströme a und b sowie zwei Empfängereinheiten c und d vorhanden sind. Die Empfängereinheit c hat eine Bandbreite von 500 kbit/s. Die tatsächliche Bandbreite kann um diesen Wert schwanken, wird jedoch durch exponentielle Glättung vorausberechnet, und die Datenrate des ausgehenden Datenstromes a wird darauf angepasst. Selbiges gilt für die Empfängereinheit d, die eine Bandbreite von 900 kbit/s aufweist. Hier wird die Datenrate des ausgehenden Datenstromes b angepasst. In einem Szenario kann es nun vorkommen, dass die Bandbreite der Empfängereinheit c bis auf einen Wert über 900 kbit/s ansteigt, z.B. 1200 kbit/s. Nun ist es vorteilhaft, wenn bei einem Aufeinandertreffen der beiden Bandbreiten von den Empfängereinheiten c und d die Datenströme übergeben werden. D.h. der ausgehende Datenstrom a mit einem anfänglichen Wert der Datenrate von 500 kbit/s steigt anfangs mit der verfügbaren Bandbreite der Empfängereinheit c. Wenn der Wert der Datenrate des ausgehenden Datenstromes a 900 kbit/s erreicht hat, wechseln die Datenströme die Empfängereinheiten. Empfängereinheit c wird nun der ausgehende Datenstrom b zugewiesen. Da b auf 900 kbit/s angepasst ist, steigt jetzt diese Datenrate des ausgehenden Datenstroms b weiter bis auf 1200 kbit/s. Der ausgehende Datenstrom a mit einer Datenrate von 900 kbit/s kann nun auf dieser Höhe verbleiben, da die Empfängereinheit d nur diese Bandbreite zu Verfügung hat. Gleiches geschieht natürlich bei einem Absinken einer Bandbreite oder für mehr als nur zwei Empfängereinheiten und/oder ausgehende Datenströme. Vorteilhaft daran ist, dass somit die Datenraten der jeweiligen ausgehenden Datenströme nur in einem kleineren Bereich variiert werden müssen. Dies spart Ressourcen in der Servereinheit ein.
  • Wenn eine zusätzliche Empfängereinheit hinzukommt, welche keinem ausgehenden Datenstrom mittels der 1:1 Zuordnung zugeordnet ist oder wird, wird dieser Empfängereinheit vorzugsweise ein ausgehender Datenstrom zugewiesen, dessen Datenrate einer verfügbaren Datenrate am nächsten ist. Zusätzliche Teilnehmer sind bei einer Videokonferenz zweckmäßigerweise passive Teilnehmer, die lediglich der Videokonferenz zuschauen, ohne eigene Beiträge zu liefern; über eine eigene Sendeeinheit müssen diese passiven Teilnehmer daher nicht verfügen. Um die genannte Zuweisung zu realisieren, gibt diese zusätzliche Empfängereinheit der Servereinheit Feedback über ihre gerade zur Verfügung stehende Bandbreite. Aus dieser Information berechnet die Servereinheit jeweils die Differenz zu jedem der zur Verfügung stehenden ausgehenden Datenströme und daraus – um negative Vorzeichen zu vermeiden – den entsprechenden Betrag dieser Differenzen. Der zusätzlichen Empfängereinheit wird nun derjenige ausgehende Datenstrom zugewiesen, welcher zu der zusätzlichen Empfängereinheit die geringste Differenz aufweist. Dies kann auch für mehrere zusätzliche Empfängereinheiten geschehen und wird kontinuierlich, oder zumindest in Zeitintervallen, durchgeführt. Eine derartige Zuordnung von einer zusätzlichen Empfängereinheit zu einem ausgehenden Datenstrom ist nicht notwendigerweise konstant; vielmehr kann vorteilhafterweise eine zusätzliche Empfängereinheit zu einem anderen ausgehenden Datenstrom wechseln, wenn die zugehörige Differenz geringer geworden ist.
  • Ebenfalls von Vorteil ist es, wenn die komprimierten ausgehenden Datenströme unangepasst an die besagten zusätzlichen Empfängereinheiten gesendet werden. Dies spart Ressourcen auf Seiten der Servereinheit ein, welche entsprechend zur Anpassung anderer ausgehender Datenströme verwendet werden können.
  • Eine vorteilhafte Weiterbildung der Erfindung sieht vor, dass die ausgehenden Datenströme zusätzlicher Empfängereinheiten, die keine 1:1 Zuordnung erfahren, durch mindestens einen weiteren Algorithmus derart angepasst werden, dass ein gemeinsamer angenäherter Optimalwert für die Datenraten der ausgehenden Datenströme ermittelt wird. Hierbei ist es von Vorteil, wenn bei besagtem weiteren Algorithmus zur Ermittlung eines angenäherten Optimalwerts verschiedene Empfängereinheiten und/oder zumindest ein ausgehender Datenstrom mit dem dazugehörigen vordefinierten Wert für die Datenrate einen spezifischen Gewichtungsfaktor erhalten, mittels dem der angenäherte Optimalwert von der Servereinheit berechnet wird. Beispielsweise wird bei zwei zusätzlichen Empfängereinheiten die Datenrate des ausgehenden Datenstroms an einen Mittelwert aus den beiden Ressourcenauslastungen, insbesondere Bandbreiten, von zwei Empfängereinheiten angepasst. Es gibt hierbei verschiedene Möglichkeiten, diesen Mittelwert zu berechnen. Bei einer Berechnung des arithmetischen Mittels werden beide Empfängereinheiten jeweils mit einem Gewichtungsfaktor von 0,5 gewichtet. Die Summe der einzelnen Gewichtungsfaktoren muss immer 1 ergeben.
  • Eine weitere Möglichkeit besteht darin, dass auch der vordefinierte Wert in die besagte Anpassung mit eingeht. So könnte z.B. ein arithmetisches Mittel aus den beiden zur Verfügung stehenden Ressourcen (z.B. Bandbreiten) und dem vordefiniertem Wert gebildet werden. Somit weist jeder der drei Gewichtungsfaktoren einen Wert von 1/3 auf.
  • Ebenfalls ist es möglich, dass die Gewichtungsfaktoren untereinander verschieden sind. So ist es denkbar, dass die Datenrate eines ausgehenden Datenstroms näher an eine von beispielsweise zwei Empfängereinheiten angepasst wird, z.B. an diejenige Empfängereinheit, die von vorneherein näher an dem vordefinierten Wert war.
  • Beispielhaft könnten die Gewichtungsfaktoren 0,6, 0,1 und 0,3 betragen. Weiterhin sei beispielhaft angenommen, dass die Bandbreite einer ersten Empfängereinheit (Gewichtungsfaktor 0,6) 1000 kbit/s, einer zweiten Empfängereinheit (Gewichtungsfaktor 0,1) 500 kbit/s und der vordefinierte Wert (Gewichtungsfaktor 0,3) 700 kbit/s sei. Dann ergibt sich mit den genannten Gewichtungsfaktoren eine Datenrate des ausgehenden Datenstroms von 860 kbit/s ([1000·0,6 + 700·0,3 + 500·0,1] kbit/s). Bei jeder zusätzlichen Empfängereinheit kommt ein weiterer Gewichtungsfaktor hinzu. Denkbar ist auch, dass ein Gewichtungsfaktor einer Empfängereinheit auf „Null“ gesetzt wird. Dann entfällt die Anpassung eines ausgehenden Datenstroms an diese Empfängereinheit. Stattdessen wird dieser Empfängereinheit vorteilhafterweise ein vorzugsweise ausgehender Datenstrom zugewiesen, dessen Datenrate auf die zur Verfügung stehende Bandbreite der Empfängereinheit ausgelegt ist. Vorzugsweise wird ein ausgehender Datenstrom mit einer Datenrate zugewiesen, die unterhalb einer verfügbaren Bandbreite der Empfängereinheit liegt, um so den ausgehenden Datenstrom ohne Beeinträchtigungen bei der Empfängereinheit empfangen und/oder verarbeiten zu können.
  • Die zuvor genannten verschiedenen Varianten bieten sich beispielsweise an, wenn passive Teilnehmer eine Videokonferenz verfolgen wollen, für die keine 1:1 Zuordnung sinnvoll ist. Bei einer großen Anzahl an passiven Teilnehmern können die ausgehenden Datenströme hinsichtlich ihrer (dann konstant bleibenden) Datenrate angepasst werden, wobei die passiven Teilnehmer die komprimierte(n) Datenströme empfangen.
  • Vorgeschlagen wird ferner eine Servereinheit, insbesondere für eine audio- und videobasierte Echtzeitkommunikation, mit zumindest einer Schnittstelle zum Empfangen und/oder Senden von Daten, mit einer Verarbeitungseinheit, und zumindest einer Speichereinheit. Dabei ist die zumindest eine Schnittstelle zum Empfangen und/oder Senden von Daten im Allgemeinen durch eine Netzwerkkarte ausgebildet. Mittels der Netzwerkkarte wird üblicherweise eine Verbindung zum Internet über Kabel oder WLAN oder zu einem lokalen Netzwerk hergestellt. Eine Verarbeitungseinheit umfasst normalerweise den Prozessor der Servereinheit, mittels dem das Verfahren zur Vorausberechnung der Ressourcenauslastung ausgeführt wird. Aber auch ein Betriebssystem und alle anderen für den Betrieb der Servereinheit relevanten Prozesse werden vorzugsweise durch diesen Prozessor ausgeführt. Die besagte zumindest eine Speichereinheit ist ein in einer Servereinheit übliches Speichermedium, z.B. umfassend Festplatten oder Arbeitsspeicher. In der Speichereinheit sind die zur Durchführung des Verfahrens auf Seiten der Servereinheit benötigten Software-Programme abgelegt. Auch die eingehenden Datenströme können in der genannten oder einer anderen Speichereinheit, einschließlich einem Arbeitsspeicher, abgespeichert werden.
  • Der Standort der Servereinheit ist weitestgehend beliebig. Wenn die Servereinheit an das Internet angebunden ist, kann diese weit von den Sendereinheiten und/oder Empfängereinheiten entfernt liegen, insbesondere können sich die Sendereinheiten, die Empfängereinheiten und/oder die Servereinheit in unterschiedlichen Ländern befinden. Falls die Echtzeitkommunikation dagegen nur z.B. auf eine große Firma beschränkt ist, kann die Servereinheit auch in einem speziellen Serverraum der Firma aufgestellt sein.
  • Erfindungsgemäß wird dabei mittels der Servereinheit auf Basis einer entsprechend programmierten Software, welche ebenfalls Teil der Erfindung ist (s. Anspruch 20), das oben beschriebene Verfahren zur Anpassung eines zu übertragenden Datenstroms an eine vorhandene Ressourcenauslastung durchgeführt. Ebenfalls Teil der Erfindung ist ein Computerprogramm für einen Computer einer Empfängereinheit. Dieses Computerprogramm beinhaltet beispielsweise die Funktion, die Ressourcenauslastung der Empfängereinheit auszuwerten und der Servereinheit bereitzustellen. Das beanspruchte Computerprogrammprodukt gemäß Anspruch 20 kann hierbei auf einem Medium vorliegen (beispielsweise einer CD, einem USB-Stick, etc.) oder direkt in einen Speicher der Servereinheit oder einer Empfängereinheit geladen werden, beispielsweise über das Internet.
  • Weitere Vorteile der Erfindung sind in den nachfolgenden Ausführungsbeispielen beschrieben. Es zeigen:
  • 1 eine schematische Darstellung eines Verfahrens zur Anpassung eines zu übertragenden Datenstroms mit vier verschiedenen komprimierten ausgehenden Datenströmen,
  • 2 ein Datenraten-Zeit-Diagramm von verfügbaren Ressourcen von vier Empfängereinheiten,
  • 3 ein Datenraten-Zeit-Diagramm zur Darstellung von mit der Zeit angepassten ausgehenden Datenströmen, und
  • 4 ein Datenraten-Zeit-Diagramm mit vier ausgehenden Datenströmen und einer zur Verfügung stehenden Bandbreite einer Empfängereinheit.
  • In 1 ist ein schematischer Ablauf eines Software-gestützten Verfahrens zur Anpassung eines zu übertragenden Datenstrom Computerprogrammprodukts mit vier verschiedenen komprimierten ausgehenden Datenströmen 4 gezeigt. Vier Sendereinheiten 3 senden jeweils einen eingehenden Datenstrom 2 (der Übersicht halber ist nur jeweils ein entsprechendes Bezugszeichen verwendet worden) mit Video- und vorzugsweise Audiosignalen an eine Servereinheit 1. In der Servereinheit 1 werden die eingehenden Datenströme 2 zu einem Mosaikbild 7 zusammengefügt, welches anschließend in der Servereinheit 1 zu vier verschieden ausgehenden Datenströmen 4a–d mit unterschiedlichen Datenraten komprimiert wird. Die komprimierten ausgehenden Datenströme 4a, 4b, 4c und 4d werden an die Empfängereinheiten 5a, 5b, 5c bzw. 5d verschickt. Die komprimierten ausgehenden Datenströme 4a–d und die Empfängereinheiten 5a–d bilden somit jeweils eine 1:1 Zuordnung. Diese 1:1 Zuordnung bietet sich bei einer relativ kleinen Videokonferenz mit bis zu ca. 10 aktiven Teilnehmern an.
  • Über Datenverbindungen, vorzugsweise Internet-gestützte Datenverbindungen, schicken die Empfängereinheiten 5a–d jeweils Informationen 8 über ihre Ressourcenauslastung – nach deren Ermittlung mit Hilfe eines entsprechenden Computerprogramms in der Empfängereinheit – an die Servereinheit 1 zurück. Aus diesen Informationen 8 wird die Ressourcenauslastung der jeweiligen Empfängereinheiten von der Servereinheit 1 Software-gestützt vorausberechnet.
  • Die gestrichelte Linie deutet an, dass der komprimierte Datenstrom 4a zu einer Sendereinheit 3 zurückgeschickt wird. Die Sendereinheit 3 ist somit eine Teilnehmereinrichtung, in der eine Sendereinheit und eine Empfängereinheit enthalten sind. Im Falle einer Videokonferenz sieht diese Sendereinheit 3 auch die anderen Sendereinheiten 3 bzw. im Falle einer Videokonferenz die Teilnehmer. Der dieser Sendereinheit 3 zugehörige Teilnehmer kann dann in bekannter Weise auf die anderen Teilnehmer reagieren, falls z.B. eine Frage gestellt wird.
  • Ebenfalls gezeigt ist, dass eine zusätzliche Empfängereinheit 6 an der Videokonferenz teilnimmt. Diese zusätzliche Empfängereinheit 6, die beispielhaft für einen von möglicherweise vielen passiven Teilnehmern einer Videokonferenz steht, erhält einen komprimierten ausgehenden Datenstrom 4d zugewiesen. Dabei wird die Datenrate des komprimierten ausgehenden Datenstroms 4d entweder nicht oder nach einem oben beschriebenen Verfahren an die Ressourcenauslastung der zusätzlichen Empfängereinheit 6 angepasst.
  • In 2 ist ein Diagramm von verfügbaren Ressourcen von vier Empfängereinheiten gezeigt. Auf der Ordinatenachse ist die Datenrate 9 mit einem Wertebereich von 0 kbit/s bis 1400 kbit/s aufgetragen. Auf der Abszissenachse ist ein Zeitintervall 10 angegeben. In diesem Beispiel ist das Zeitintervall von 0 bis 21 aufgetragen. Dabei kann z.B. das Zeitintervall Sekunden darstellen (wobei natürlich auch andere Zeiteinteilungen möglich sind). In diesem Fall würde das Diagramm die verfügbaren Ressourcen der Empfängereinheiten 11 in einem Zeitraum von 21 Sekunden zeigen.
  • Des Weiteren sind vier Empfängereinheiten 11a–d mit deren verfügbaren Ressourcen gezeigt. Die Empfängereinheit 11a weist dabei zu jeder Zeit in dem Diagramm die höchste verfügbare Ressource auf. Die verfügbare Ressource, insbesondere deren Bandbreite, liegt dabei ungefähr im Bereich von 700 kbit/s bis 900 kbit/s. Die jeweiligen anderen Empfängereinheiten 11b–d weisen geringere verfügbare, mit der Zeit schwankende Ressourcen auf.
  • In 3 ist ein Diagramm der Datenraten von angepassten ausgehenden Datenströmen gezeigt. Dabei sind der Ordinatenachse und der Abszissenachse wieder die gleichen Wertebereiche und Variablen wie in 2 zugewiesen. Außerdem sind vier ausgehende Datenströme 12a–d dargestellt. Diese vier ausgehenden Datenströme 12a–d bilden mit den vier Empfängereinheiten 11a–d aus 2 jeweils eine 1:1 Zuordnung: Der Empfängereinheit 11a ist der ausgehende Datenstrom 12a zugeordnet, der Empfängereinheit 11b ist der ausgehende Datenstrom 12b zugeordnet, usw.
  • Ebenfalls ist zu erkennen, dass den jeweiligen ausgehenden Datenströmen 12a–d ein vordefinierter Wert bei der Zeit „Eins“ zugeordnet ist. Wie zu sehen ist, sind die vordefinierten Werte für den ausgehenden Datenstrom 12a 1500 kbit/s, für den ausgehenden Datenstrom 12b 1100 kbit/s, für den ausgehenden Datenstrom 12c 700 kbit/s und für den ausgehenden Datenstrom 12d 300 kbit/s. Damit weist der ausgehende Datenstrom 12d die schlechteste Qualität auf. Dies macht sich dadurch bemerkbar, dass z.B. die Auflösung oder die Farbtiefe (im Falle einer Videokonferenz) geringer als bei den anderen Datenströmen ist.
  • Gemäß der 2 wird eine iterative Anpassung der jeweiligen ausgehenden Datenströme 12a–d an die zur Verfügung stehenden Ressourcen der Empfängereinheiten 11a–d aus 2 durchgeführt. Dieses Verfahren wird am Beispiel des ausgehenden Datenstroms 12a und der Empfängereinheit 11a erläutert. Für die anderen ausgehenden Datenströme 12b–d und Empfängereinheiten 11b–d wird bevorzugt analog verfahren.
  • Wie bereits erwähnt beginnt der ausgehende Datenstrom 12a mit einem vordefinierten Wert für die Bandbreite von 1500 kbit/s. Die Empfängereinheit 11a hat zu diesem Zeitpunkt (Zeitpunkt „1“ in 2) allerdings nur eine Bandbreite (Bandbreite soll hier nicht einschränken, sondern nur als Beispiel anzusehen sein) von 700 kbit/s zur Verfügung. Aufgrund dieser Informationen passt die Servereinheit 1 die Datenrate des ausgehenden Datenstroms 12a an die zur Verfügung stehenden Ressourcen der Empfängereinheit 11a iterativ in mehreren Regelschritten „nach unten“ an. Dies geschieht zu Beginn schneller als zu einem späteren Zeitpunkt, wenn sich die Datenraten schon weiter angenähert haben. Eine Anpassung der Datenrate des ausgehenden Datenstroms 12a erfolgt sukzessive in mehreren Regelschritten aufgrund der kontinuierlich oder diskontinuierlich von der Empfängereinheit 11a der Servereinheit 1 zur Verfügung gestellten Informationen über die aktuell bei der Empfängereinheit 11a verfügbare Bandbreite. Diese Regelung der Datenratenanpassung erfolgt beispielsweise zu jedem in den 2 und 3 markierten Zeitpunkten (vorliegend also zu 21 Zeitpunkten).
  • Gegen Ende des in den 2 und 3 gezeigten Zeitintervalls weisen dann schließlich beide Bandbreiten ungefähr den gleichen Wert auf. So liegt die zur Verfügung stehende Bandbreite der Empfängereinheit 11a ca. bei 850 kbit/s, und die Datenrate des ausgehenden Datenstroms 12a bei ca. 830 kbit/s (s. jeweils die Zeitpunkte „21“ in den 2 und 3). Diese Anpassung wurde z.B. mit dem Verfahren der exponentiellen Glättung durchgeführt.
  • In der 4 ist ein Diagramm mit vier ausgehenden Datenströmen 12a–d und einer zur Verfügung stehenden Bandbreite einer Empfängereinheit 11 gezeigt. Der Ordinaten- und Abszissenachse sind wieder die gleichen Variablen wie in 2 und 3 zugewiesen. Den beiden ausgehenden Datenströmen 12c und 12d mit einem vordefinierten Wert von 900 kbit/s bzw. 700 kbit/s ist vorliegend keine Empfängereinheit zugewiesen. Diese Datenströme werden daher nicht angepasst, sondern bleiben konstant auf dem jeweiligen vordefinierten Wert. Der ausgehende Datenstrom 12a weist eine Datenrate von 500 kbit/s und der ausgehende Datenstrom 12b weist eine Datenrate von 300 kbit/s auf. Die Empfängereinheit 11 hat eine zur Verfügung stehende Bandbreite (wieder nur als Beispiel einer Ressource) von 400 kbit/s, welche anfangs leicht ansteigt und somit eine schwankende Ressourcenauslastung aufweist. Die Servereinheit 1 berechnet die Differenzen der gerade verfügbaren Bandbreiten einer jeden Empfängereinheit 11 zu jedem ausgehenden Datenstrom 12a–d. Es wird dann derjenige ausgehende Datenstrom 12 ausgewählt, welcher die geringste Differenz zu der verfügbaren Bandbreite der Empfängereinheit 11 aufweist. Anders ausgedrückt bedeutet dies, dass derjenige ausgehende Datenstrom 12a–d ausgewählt wird, welcher am nächsten an der verfügbaren Bandbreite der Empfängereinheit 11 liegt. In dem Diagramm der 4 ist anfangs der ausgehende Datenstrom 12a zur momentan zur Verfügung stehenden Bandbreite der Empfängereinheit 11 am nächsten. Daher wird der ausgehende Datenstrom 12a „nach unten“ angepasst. Ab dem Zeitpunkt „8“ ist jedoch der ausgehende Datenstrom 12b näher an der verfügbaren Bandbreite der Empfängereinheit 11. Ab diesem Zeitpunkt wird der ausgehende Datenstrom 12b an die verfügbare Ressource der Empfängereinheit 11 angepasst. Der ausgehende Datenstrom 12a passt sich daraufhin wieder seinem vordefinierten Wert von 500 kbit/s an.
  • Mittels der Erfindung ist es möglich, sowohl aktiven als auch passiven Teilnehmern einer Videokonferenz eine deutlich bessere Videoqualität zur Verfügung zu stellen.
  • Die vorliegende Erfindung ist nicht auf die dargestellten und beschriebenen Ausführungsbeispiele beschränkt. Abwandlungen im Rahmen der Patentansprüche sind ebenso möglich wie eine Kombination der Merkmale, auch wenn diese in unterschiedlichen Ausführungsbeispielen dargestellt und beschrieben sind.
  • Bezugszeichenliste
  • 1
    Servereinheit
    2
    Eingehender Datenstrom
    3
    Sendereinheit
    4
    Ausgehender Datenstrom
    5
    Empfängereinheit
    6
    Zusätzliche Empfängereinheit
    7
    Mosaikbild
    8
    Informationen über Ressourcenauslastung
    9
    Datenraten
    10
    Zeitintervall
    11
    Verfügbare Ressource von einer Empfängereinheit
    12
    Datenrate des ausgehenden Datenstroms
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • DE 112012001770 T5 [0002]
    • EP 2498491 A1 [0003]

Claims (20)

  1. Verfahren zur Anpassung von zu übertragenden Datenströmen an die jeweilige Ressourcenauslastung verschiedener Empfängereinheiten (5), insbesondere bei einer audio- und videobasierten Echtzeitkommunikation, wobei eine Servereinheit (1) einen eingehenden Datenstrom (2) von zumindest einer Sendereinheit (3), vorzugsweise jeweils einen eingehenden Datenstrom (2) von mehreren Sendereinheiten (3), empfängt, die Servereinheit (1) aus diesen eingehenden Datenströmen (2) mehrere ausgehende Datenströme (4) mit unterschiedlich komprimierten Datenraten (12) unter Anpassung an die jeweilige Ressourcenauslastung der verschiedenen Empfängereinheiten (5) erzeugt und jeweils ein ausgehender Datenstrom (4) über Übertragungskanäle an die Empfängereinheiten (5) verschickt wird, dadurch gekennzeichnet, dass die Servereinheit (1) zumindest von einigen der Empfängereinheiten (5) deren sich über die Zeit ändernden Ressourcenauslastungen in zeitlichen Abständen empfängt und aus diesen Informationen (8) die zu erwartenden Ressourcenauslastungen der Empfängereinheiten (5) vorausberechnet und dementsprechend die Datenraten der komprimierten ausgehenden Datenströme (4) regelnd anpasst.
  2. Verfahren nach dem vorherigen Anspruch, dadurch gekennzeichnet, dass zumindest zwei jeweils ein Videosignal enthaltende und von unterschiedlichen Sendereinheiten (3) stammende eingehende Datenströme (2) in der Servereinheit (1) zu einem kombinierten ausgehenden Datenstrom, insbesondere einem Mosaikbild (7), zusammengefügt werden.
  3. Verfahren nach einem oder mehreren der vorherigen Ansprüche, dadurch gekennzeichnet, dass die Datenrate jedes ausgehenden Datenstroms (4) vor Beginn der Anpassung einen vordefinierten Wert erhält und dass die Werte von mindestens einem ausgehenden Datenstrom (4), vorzugsweise von allen ausgehenden Datenströmen (4), im Laufe der Anpassung sukzessive aufgrund der erhaltenden Informationen (8) zu den Ressourcenauslastungen verändert werden.
  4. Verfahren nach einem oder mehreren der vorherigen Ansprüche, dadurch gekennzeichnet, dass nach Beendigung einer Übertragung eines ausgehenden Datenstroms (4) an eine Empfängereinheit (5) die Datenrate des ausgehenden Datenstroms (4) wieder zu dem jeweiligen, vor der Anpassung erhaltenen, vordefinierten Wert zurückkehrt.
  5. Verfahren nach einem oder mehreren der vorherigen Ansprüche, dadurch gekennzeichnet, dass die besagte Vorausberechnung unter Verwendung eines sukzessiven Näherungsverfahrens durchgeführt wird.
  6. Verfahren nach einem oder mehreren der vorherigen Ansprüche, dadurch gekennzeichnet, dass die besagte Vorausberechnung unter Verwendung eines exponentiellen Glättungsverfahrens, ggf. zusammen mit einem weiteren Algorithmus, durchgeführt wird.
  7. Verfahren nach einem oder mehreren der vorherigen Ansprüche, dadurch gekennzeichnet, dass die Empfängereinheiten (5) bei einer Änderung ihrer Ressourcenauslastung die entsprechende Information (8) an die Servereinheit (1) schicken.
  8. Verfahren nach einem oder mehreren der vorherigen Ansprüche, dadurch gekennzeichnet, dass die Empfängereinheiten (5) ihre jeweiligen Ressourcenauslastungen in regelmäßigen oder sich ändernden Zeitintervallen, beispielsweise von 0,5 s bis 20 s, insbesondere von 1 s bis 15 s, an die Servereinheit (1) schicken.
  9. Verfahren nach einem oder mehreren der vorherigen Ansprüche, dadurch gekennzeichnet, dass eine festgelegte Anzahl an komprimierten ausgehenden Datenströmen (4), mit jeweils unterschiedlichen Datenraten und vordefinierten Werten, zur Verfügung steht.
  10. Verfahren nach einem oder mehreren der vorherigen Ansprüche, dadurch gekennzeichnet, dass eine 1:1 Zuordnung derart vorgenommen wird, dass jeder Empfängereinheit (5) genau ein anderer komprimierter ausgehender Datenstrom (4) zugeordnet wird.
  11. Verfahren nach einem oder mehreren der vorherigen Ansprüche, dadurch gekennzeichnet, dass eine zusätzliche Empfängereinheit (6), welche keinem ausgehenden Datenstrom (4) mittels der 1:1 Zuordnung zugeordnet wurde, einen ausgehenden Datenstrom (4) zugewiesen bekommt, dessen Datenrate am wenigsten weit von der aufgrund dessen Ressourcenauslastung verfügbaren Datenrate der zusätzlichen Empfängereinheit (6) entfernt liegt.
  12. Verfahren nach einem oder mehreren der vorherigen Ansprüche, dadurch gekennzeichnet, dass die komprimierten ausgehenden Datenströme (4) unangepasst an die besagten zusätzlichen Empfängereinheiten (6) übertragen werden.
  13. Verfahren nach einem oder mehreren der vorherigen Ansprüche, dadurch gekennzeichnet, dass bei zusätzlichen Empfängereinheiten (6), welchen keine ausgehenden Datenströme (4) mittels der 1:1 Zuordnung zugeordnet wurden, deren ausgehenden Datenströme (4) durch mindestens einen weiteren Algorithmus derart angepasst werden, dass ein angenäherter Optimalwert für die Datenraten der ausgehenden Datenströme (4) ermittelt wird.
  14. Verfahren nach einem oder mehreren der vorherigen Ansprüche, dadurch gekennzeichnet, dass bei besagtem weiteren Algorithmus zur Ermittlung des angenäherten Optimalwertes verschiedene Empfängereinheiten (5) und/oder zumindest ein ausgehender Datenstrom (4) mit dem dazugehörigen vordefinierten Wert für die Datenrate einen spezifischen Gewichtungsfaktor erhalten, mittels dem der angenäherte Optimalwert von der Servereinheit (1) berechnet wird.
  15. Verfahren nach einem oder mehreren der vorherigen Ansprüche, dadurch gekennzeichnet, dass die Ressourcenauslastungen der Empfängereinheiten (5) die Auslastung einer Empfangs- und/oder Sendegeschwindigkeit (Bandbreite), eines Prozessors und/oder eines Speichers umfasst.
  16. Verfahren nach einem oder mehreren der vorherigen Ansprüche, dadurch gekennzeichnet, dass die unterschiedlichen Datenraten durch unterschiedliche Auflösung, Farbtiefen, Bildwiederholungsraten und/oder Komprimierungscodecs erzeugt werden.
  17. Verfahren nach einem oder mehreren der vorherigen Ansprüche, dadurch gekennzeichnet, dass die vordefinierten Werte den Datenraten von Videoformatstandards, insbesondere PAL, CIF, HD oder NTSC, entsprechen.
  18. Verfahren nach dem vorherigen Anspruch, dadurch gekennzeichnet, dass mindestens eine Teilnehmereinrichtung vorgesehen ist, in der eine besagte Sendereinheit (3) und eine besagte Empfängereinheit (5) integriert sind.
  19. Servereinheit, insbesondere ausgebildet für eine audio- und videobasierte Echtzeitkommunikation, mit zumindest einer Schnittstelle zum Empfangen und/oder Senden von Daten, mit einer Verarbeitungseinheit, und zumindest einer Speichereinheit, dadurch gekennzeichnet, dass die Servereinheit (1) derart ausgebildet ist, dass sie das Verfahren zur Anpassung eines zu übertragenden Datenstroms an eine vorhandene Ressourcenauslastung, nach einem oder mehreren der vorherigen Ansprüche, auszuführen vermag.
  20. Computerprogrammprodukt mit zumindest einem auf einem computerlesbaren Medium gespeicherten oder direkt in einen internen Speicher eines Computers geladenen Programmcode zur Durchführung der Verfahrensschritte nach einem oder mehreren der vorhergehenden Ansprüche, wenn das Computerprogramm durch den Computer, vorzugweise einem Computer in einer Servereinheit (1) nach Anspruch 19 und/oder einem Computer einer Empfängereinheit, ausgeführt wird.
DE102014115188.7A 2014-10-17 2014-10-17 Verfahren zur Anpassung eines zu übertragenden Datenstroms an eine Ressourcenauslastung Pending DE102014115188A1 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE102014115188.7A DE102014115188A1 (de) 2014-10-17 2014-10-17 Verfahren zur Anpassung eines zu übertragenden Datenstroms an eine Ressourcenauslastung
US15/518,372 US10178145B2 (en) 2014-10-17 2015-10-19 Method for adjusting a data stream to be transmitted to a resource load
PCT/EP2015/074185 WO2016059257A1 (de) 2014-10-17 2015-10-19 Verfahren zur anpassung eines zu übertragenden datenstroms an eine ressourcenauslastung

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102014115188.7A DE102014115188A1 (de) 2014-10-17 2014-10-17 Verfahren zur Anpassung eines zu übertragenden Datenstroms an eine Ressourcenauslastung

Publications (1)

Publication Number Publication Date
DE102014115188A1 true DE102014115188A1 (de) 2016-04-21

Family

ID=54337270

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014115188.7A Pending DE102014115188A1 (de) 2014-10-17 2014-10-17 Verfahren zur Anpassung eines zu übertragenden Datenstroms an eine Ressourcenauslastung

Country Status (3)

Country Link
US (1) US10178145B2 (de)
DE (1) DE102014115188A1 (de)
WO (1) WO2016059257A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10389772B1 (en) * 2018-01-31 2019-08-20 Facebook, Inc. Systems and methods for optimizing simulcast streams in group video calls
BR112023023918A2 (pt) * 2021-05-14 2024-01-30 Vonage Business Inc Sistemas e métodos para fornecer serviços programáveis de comunicação de mídia
CN116382921A (zh) * 2023-05-08 2023-07-04 深圳市欧朗博科技有限公司 一种数据流预分配及并行度自调整的基带芯片架构及方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2498491A1 (de) 2011-03-08 2012-09-12 VisoCon GmbH Verfahren und Vorrichtung zur audio- und videobasierten Echtzeit-Kommunikation
DE112012001770T5 (de) 2011-04-20 2014-01-16 Mobitv, Inc. Auf Echtzeitverarbeitungsfähigkeit basierende Qualitätsanpassung
WO2014046852A1 (en) * 2012-09-24 2014-03-27 Motorola Mobility Llc Method and devices for efficient adaptive bitrate streaming

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7254120B2 (en) * 1999-12-09 2007-08-07 Broadcom Corporation Data rate controller
US20030041165A1 (en) 2001-08-24 2003-02-27 Spencer Percy L. System and method for group video teleconferencing using a bandwidth optimizer
US20070263824A1 (en) 2006-04-18 2007-11-15 Cisco Technology, Inc. Network resource optimization in a video conference
US20080101410A1 (en) * 2006-10-25 2008-05-01 Microsoft Corporation Techniques for managing output bandwidth for a conferencing server
US20100149301A1 (en) * 2008-12-15 2010-06-17 Microsoft Corporation Video Conferencing Subscription Using Multiple Bit Rate Streams
WO2012057733A1 (en) * 2010-10-25 2012-05-03 Hewlett-Packard Development Company, L.P. Systems, methods, and devices for adjusting video conference parameters to maintain system performance
US8909763B2 (en) * 2011-03-31 2014-12-09 Mitsubishi Heavy Industries, Ltd. Computing-device management device, computing-device management method, and computing-device management program
US8832193B1 (en) * 2011-06-16 2014-09-09 Google Inc. Adjusting a media stream in a video communication system
CN104333728B (zh) * 2013-07-22 2019-02-12 腾讯科技(深圳)有限公司 音视频传输调控方法、装置、系统和计算机可读存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2498491A1 (de) 2011-03-08 2012-09-12 VisoCon GmbH Verfahren und Vorrichtung zur audio- und videobasierten Echtzeit-Kommunikation
DE112012001770T5 (de) 2011-04-20 2014-01-16 Mobitv, Inc. Auf Echtzeitverarbeitungsfähigkeit basierende Qualitätsanpassung
WO2014046852A1 (en) * 2012-09-24 2014-03-27 Motorola Mobility Llc Method and devices for efficient adaptive bitrate streaming

Also Published As

Publication number Publication date
US10178145B2 (en) 2019-01-08
WO2016059257A1 (de) 2016-04-21
US20180131746A1 (en) 2018-05-10

Similar Documents

Publication Publication Date Title
DE69124536T2 (de) Bildkodiervorrichtung
DE60114650T2 (de) Adaptive videobestellung
DE60001896T2 (de) Quantisierer für videokompression
DE3874703T2 (de) Kodier- und dekodierverfahren und vorrichtung fuer die bilduebertragung ueber ein netz mit einem variablen datenfluss.
DE102012013336B4 (de) Aushandeln einer kontinuierlichen multi-stream-präsenz
DE69937664T2 (de) System zur Netztranskodierung von Multimediendatenfluss
DE102016125353A1 (de) Kodierratensteuerung von echtzeitvideos unter verwendung einer dynamischen auflösungsumschaltung
EP0201679A1 (de) Verfahren zur Bilddatenreduktion für digitale Fernsehsignale
EP1146702A2 (de) Kommunikationsvorrichtung und Kommunikationssystem zum integrierten Übertragen von ersten Daten mit Echtzeitanforderung und zweiten Daten ohne Echtzeitanforderung
DE2740945B2 (de) Verfahren zum Übertragen von Bildsignalen mit Hilfe der Differenz-Puls-Code-Modulation (DPCM) und gest euertem Quantisierer
DE4339753A1 (de) Vorrichtung zum Komprimieren und Dekomprimieren von Bilddaten
DE102015115998A1 (de) Segmentierter Videocodec für Video mit hoher Auflösung und hoher Framerate
DE60302168T2 (de) Datenratenkontroller
DE102020133238A1 (de) An das menschliche sehsystem angepasste videocodierung
DE60211790T2 (de) Videokodierung mit konstanter Qualität
DE202016008210U1 (de) Adaptiver direktionaler Schleifenfilter
DE102014115188A1 (de) Verfahren zur Anpassung eines zu übertragenden Datenstroms an eine Ressourcenauslastung
EP0335872B1 (de) Verfahren und schaltungsanordnung zur reduktion der datenrate digitalisierter bilder
WO2016050413A1 (de) Anpassung einer videokomprimierung bei einem mobilen server
EP2938047A1 (de) Verfahren, vorrichtung, computerprogramm, softwareprodukt und digitales speichermedium zur übermittlung und adaption von daten
DE102013110614A1 (de) Skalierbares Mehrteilnehmervideokonferenzsystem
DE3626916A1 (de) Verfahren zur uebertragung eines videosignales
DE69830625T2 (de) Dynamische Netzbandbreitenzuweisung für Multimedia-Anwendungen mit weichen Dienstqualitätsanforderungen
DE69833785T2 (de) Farbstanzverfahren für ein digitales videokompressionssystem
DE69432933T2 (de) Vorrichtung zur dynamischen zuweisung begrenzt verfügbarer mittel

Legal Events

Date Code Title Description
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0012801000

Ipc: H04L0012829000

R163 Identified publications notified
R081 Change of applicant/patentee

Owner name: EYESON GMBH, AT

Free format text: FORMER OWNER: VISOCON GMBH, GRAZ, AT

R082 Change of representative

Representative=s name: PATENTANWAELTE CANZLER & BERGMEIER PARTNERSCHA, DE

R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0012829000

Ipc: H04L0047267000