EP2583461A1 - Verfahren und vorrichtung zum mischen von videoströmen auf der makroblock-ebene - Google Patents

Verfahren und vorrichtung zum mischen von videoströmen auf der makroblock-ebene

Info

Publication number
EP2583461A1
EP2583461A1 EP11727399.5A EP11727399A EP2583461A1 EP 2583461 A1 EP2583461 A1 EP 2583461A1 EP 11727399 A EP11727399 A EP 11727399A EP 2583461 A1 EP2583461 A1 EP 2583461A1
Authority
EP
European Patent Office
Prior art keywords
video streams
entropy
video
macroblocks
coding
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.)
Ceased
Application number
EP11727399.5A
Other languages
English (en)
French (fr)
Inventor
Peter Amon
Norbert Oertel
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.)
Unify Patente GmbH and Co KG
Original Assignee
Siemens Enterprise Communications GmbH and Co KG
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 Siemens Enterprise Communications GmbH and Co KG filed Critical Siemens Enterprise Communications GmbH and Co KG
Publication of EP2583461A1 publication Critical patent/EP2583461A1/de
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/1883Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit relating to sub-band structure, e.g. hierarchical level, directional tree, e.g. low-high [LH], high-low [HL], high-high [HH]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems
    • H04N7/152Multipoint control units therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/1887Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a variable length codeword
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams

Definitions

  • CABAC codeword is terminated.
  • Fig. 4 shows the complete transcoding of two H.264 video streams
  • the parameter nC selects the corresponding VLC table depending on the number of coded coefficients in the adjacent blocks, i. Context-adaptive.
  • FIG. 4 shows the complete transcoding of video streams encoded according to the H.264 / AVC standard.
  • the two H.264 input video streams IS1 and IS2 from two subscribers are decoded by a respective H.264 video decoder VD1 and VD2 at the frame level.
  • the two video frames VF1 and VF2 are merged and merged to form a new video frame VF 'containing all the data of the individual video frames VF1 and VF2.
  • a new H.264 output video stream OS is encoded in the H.264 video encoder VE and sent to all
  • This process is also referred to as pixel domain mixing or full transcoding using e.g. a format conversion, a mixture of image data and the generation of a conference image is performed.
  • the macroblocks are assigned to the slices without additional aids.
  • the mixing of the video streams IS1 and IS2 takes place through a flexible allocation of the macroblocks to slice groups.
  • a slice group SGI and SG2 is defined for each of the two input video streams IS1 and IS1, which is then converted into a H.264 by the video mixer VM Output video stream OS are combined with the data of the two slice groups SGI and SG2.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

Die Erfindung beschreibt ein Verfahren und eine Vorrichtung zum Mischen von Videoströmen in einer Videomischer-Vorrichtung, die mehrere Eingangs-Videoströme von verschiedenen Teilnehmern, die mit Codewörtern für Makroblöcke codiert sind und bei denen die Codewörter Abhängigkeiten untereinander aufweisen, in einen Ausgangs-Videostrom zusammenfasst. Dabei werden die Eingangs-Videoströme mindestens soweit Entropie-decodiert, dass die Abhängigkeiten zwischen den Codewörtern aufgelöst werden, wobei die Makroblöcke neu geordnet und zusammengemischt, und die gemischten Makroblöcke zu einem neuen dedizierten Videostrom Entropie-encodiert werden.

Description

Verfahren und Vorrichtung zum Mischen von Videoströmen auf der Makroblock- Ebene
Die Erfindung beschreibt ein Verfahren zum Mischen von Videoströmen auf der Makroblock-Ebene gemäß dem Oberbegriff des Patentanspruchs 1 und eine
Vorrichtung zur Durchführung des Verfahrens gemäß dem Oberbegriff des
Patentanspruchs 9.
In bestimmten Anwendungen ist es notwendig, dass der Inhalt von mehreren
Videoströmen gleichzeitig an einem Gerät angezeigt wird. So sind beispielsweise Videokonferenzen mit mehr als zwei Teilnehmern bekannt, bei denen die Videosignale und Audiosignale zwischen zwei oder mehreren Standorten in Echtzeit übertragen werden. Die Endgeräte bzw. Softclients der Anwender sind zu diesem Zweck mit einer Kamera, heute meist USB-Webcam, und einem Mikrofon bzw. Headset als
Eingabegeräte sowie einem Bildschirm und einem Lautsprecher bzw. Headset als Ausgabegeräte ausgestattet. Die Video- und Audiosignale können hardware-basiert über Steckkarten oder rein software-basiert encodiert und decodiert werden. Heutzutage wird von den Anwendern eines Videokonferenzsystems in der Regel gefordert, dass nicht nur der momentan sprechende Teilnehmer von allen anderen Teilnehmern gesehen wird, wie das bei„voice activated switching" Systemen der Fall ist, sondern dass alle oder zumindest mehrere der Gesprächspartner sich gleichzeitig gegenseitig auf dem
Bildschirm sehen können, wie das bei„continous presence" Systemen der Fall ist.
Ein weiteres Anwendungsbeispiel liegt im Bereich der Videoüberwachung, wobei in einem Kontrollraum mehrere Videoströme von unterschiedlichen
Überwachungskameras gleichzeitig decodiert und live auf einem Bildschirm angezeigt werden. Verfügt das System nur über einen Decoder, dann kann immer nur ein
Videostrom von einer Überwachungskamera zu einem Zeitpunkt decodiert und angezeigt werden. Aufgrund der Tatsache, dass heute sehr viele installierte Endgeräte bzw. Softclients von Videokonferenzsystemen nur über einen einzigen Decoder verfügen, ist es nicht möglich mehrere Videoströme gleichzeitig in diesen Endgeräten bzw. Softclients zu decodieren und anzuzeigen. Deshalb ist eine heute weit verbreitete Vorgehensweise, dass eine Video Bridge oder Multipoint Control Unit (MCU) eingesetzt wird. Diese stellt eine zentrale Einheit dar, die die encodierten Videoströme von mehreren
Teilnehmern empfängt, verarbeitet und einen dedizierten Videostrom an alle
Teilnehmer zurücksendet. Dazu müssen die Videoströme vollständig oder zumindest größtenteils decodiert, die Videodaten zusammengefügt und dann zu einem neuen Videostrom encodiert werden. Die Figur 4 zeigt in schematischer Darstellung die vollständige Transcodierung von zwei H.264 codierten Videoströmen. Dieses Verfahren wird vielfach als hardware-basierte Implementierung realisiert, da es sehr komplex ist, was zu hohen Gerätekosten führt. Außerdem ergeben sich durch die Transcodierung Verzögerungszeiten durch die Vielzahl der Signalverarbeitungsschritte und
Qualitätseinbußen durch die erneute Encodierung.
Ein weiteres bekanntes Verfahren ist das Mischen von Videoströmen auf der Slice- Ebene, wie in der Voranmeldung des gleichen Anmelders mit dem Titel„Mixen von Videoströmen" von den Erfindern Peter Amon und Andreas Hutter beschrieben.
Im H.264/AVC Standard sind die Makroblöcke in sogenannten Slices organisiert, wobei jedes Slice unabhängig von anderen Slices decodiert werden kann. Mit dem im
H.264/ AVC Standard definierten Flexible Macroblock Ordering (FMO) ist eine flexible Zuordnung der Makroblöcke zu Slice-Gruppen möglich. Diese Möglichkeit wird gemäß dem Verfahren nun für das Mischen von mehreren Videoströmen verwendet. So kann für jeden Eingangs-Videostrom eine Slice-Gruppe definiert werden, die durch einen Video Mixer in einen Strom mit zwei Slice-Gruppen vereint werden. In Figur 5 ist in einer schematischen Darstellung das Mischen zweier H.264 codierter Videoströme auf der Slice-Ebene gezeigt. Allerdings existieren heute viele Decoder, die Slice-Gruppen nicht unterstützen, wodurch das Mischen von Videoströmen auf der Slice-Ebene nicht anwendbar ist. Für den Videocodierstandard H.261 ist vermutlich ein Verfahren bekannt, mit dem mehrere Bilder auf der Makroblock-Ebene zu einem neuen Bild zusammengefügt werden können. Die Vermutung, dass dieses Verfahren bekannt ist, begründet sich darauf, dass in dem Analystenreport„Will Your Next Video Bridge Be Software- Based?" von Wainhouse Research in 2003 (http://www.wainhouse.com/files/papers/wr- sw-video-bridges.pdf) über das Mixen von H.261 Videoströmen berichtet wird, ohne auf das Verfahren näher einzugehen. Allerdings lassen die Performance-Messungen vermuten, dass ein Verfahren wie oben beschrieben und in der Figur 6 in schematischer Darstellung gezeigt, verwendet wird, da nicht so viele komplette Transcodiervorgänge gleichzeitig auf einem Rechner der angegebenen Leistungsstärke durchführbar sind.
H.261 verwendet zur Entropie-Codierung ein Variable Length Codes (VLC) Verfahren. Bei dem im H.261 Standard verwendeten variablen Längen-Codes wird ein zu codierendes Symbol mittels einer einzigen Codewort-Tabelle fest einem Codewort zugeordnet. Dadurch gibt es keine Abhängigkeit zwischen den Symbolen und somit zwischen den Makroblöcken. Somit kann durch einfache Umsortierung der
Makroblöcke das Zusammenfügen von mehreren Videoströmen zu einem Videostrom durchgeführt werden. Um die zu übertragenden Daten, wie z.B. Restfehler aus den Prädiktionen, Differenz zu den geschätzten Bewegungsvektoren, etc., nochmals zu komprimieren werden diese mittels einer sogenannten Entropie-Kodierung codiert. Der H.264/AVC Standard bietet zwei Möglichkeiten von Entropie-Kodierung für die Videoströme, das Context-based Adaptive Variable Length Coding (CAVLC) Verfahren und das Context-based
Adaptive Binary Arithmetic Coding (CABAC) Verfahren. Beide basieren auf sogenannter lernfähiger kontextabhängiger Entropie-Kodierung, entweder mit variabler Codelänge oder binär arithmetischer Codierung und erreichen dadurch
Leistungsvorteile im Kodierungsprozess gegenüber den anderen Standards. Bei CAVLC gibt es bei der Codierung eines Makroblocks Abhängigkeiten von
Codierentscheidungen von benachbarten, bereits codierten Makroblöcken. Bei CABAC wirkt sich die Codierung eines Symbols auf die Auswahl des Codewortes für das darauf folgende Symbol aus, so dass Abhängigkeiten zwischen den Codewörtern und somit zwischen den Makroblöcken entstehen. Das für H.261 codierte Ströme gezeigte Verfahren zum Mischen der Videoströme auf Makroblock-Ebene kann somit nicht unmittelbar zum Mischen von H.264/AVC codierten Videoströmen durchgeführt werden. Es ist Aufgabe der vorliegenden Erfindung, ein Verfahren zum Mischen von
Videoströmen anzugeben, die mit Codewörtern für Makroblöcke codiert sind und bei denen die Codewörter Abhängigkeiten untereinander aufweisen, welches gegenüber dem Stand der Technik die aufgezeigten Nachteile vermeidet. Diese Aufgabe wird durch das Verfahren gemäß Patentanspruch 1 und durch eine Vorrichtung gemäß Patentanspruch 9 gelöst.
Ausführungsformen der Erfindung sind in den abhängigen Ansprüchen angegeben.
Das erfindungsgemäße Verfahren geht vom Mischen der Videoströme, die nach dem H.264/AVC Standard codiert sind, auf der Makroblock-Ebene aus. Zunächst müssen die von den Teilnehmern empfangenen Videoströme decodiert werden. Dies geschieht durch das Auflösen der Abhängigkeiten zwischen den Codewörtern durch eine vollständige oder teilweise Entropie-Decodierung. Danach werden die Makroblöcke der Eingangs-Videoströme neu geordnet und zu einem neuen Makroblock zusammengefügt, der alle Daten der einzelnen Makroblöcke enthält. Abschließend wird ein neuer
Videostrom encodiert und an alle oder eine bestimmte Anzahl von Teilnehmer gesendet, so dass sich die Teilnehmer gleichzeitig gegenseitig sehen können. Dies geschieht dadurch, dass die vollständige oder teilweise Entropie-Decodierung nach dem Mischen der Videoströme durch eine vollständige oder teilweise Entropie-Encodierung wieder rückgängig gemacht wird. Dieses Verfahren ist in Figur 2 schematisch dargestellt, wobei zwei H.264 codierte Videoströme auf der Makroblock-Ebene gemischt werden.
Das erfinderische Verfahren kann für die beiden im H.264/ A VC Standard definierten Entropie-Codierverfahren CAVLC und CABAC eingesetzt werden.
Bei der CAVLC Methode wird für das zu kodierende Element in Abhängigkeit von den bereits übertragenen Daten zwischen verschiedenen VLC-Tabellen umgeschaltet. Da die VLC-Tabellen anhand von Statistiken sorgfaltig konstruiert wurden, erzielt man so eine deutliche Leistungssteigerung gegenüber dem exponentiellen Golomb-Code.
Im CA VLC Verfahren werden für jeden 4x4-Block folgende Syntaxelemente codiert: - coeff token: Anzahl der Koeffizienten ungleich Null (0-16) und die Anzahl der Einsen am Ende des Zig-Zag-Scans, den sogenannten„trailing ones"
- trailing_ones_sign_flag: Vorzeichen der„trailing ones"
- level_prefix und level_suffix: Betrag und Vorzeichen der Koeffizienten ungleich Null, ohne„trailing ones"
- total_zeros: Anzahl der Koeffizienten gleich Null im 4x4-Block bis zum letzten Koeffizienten ungleich Null in der Scan-Reihenfolge
- run before: Anzahl der Koeffizienten gleich Null bis zum nächsten Koeffizienten ungleich Null Für die Codierung von coeff_token wird bei Luminanz-Koeffizienten eine von vier VLC-Tabellen ausgewählt. Die Auswahl hängt von der Anzahl der Koeffizienten ungleich Null in den beiden 4x4-Blöcken links und über dem aktuellen 4x4-Block ab, falls diese im selben Slice sind. Ein Slice ist bei H.264/AVC eine Anzahl von
Makroblöcken, die gemeinsam codiert werden. Falls die Blöcke nicht existieren, am linken oberen Bildrand oder am Anfang eines Slice, wird ein Standardwert gesetzt.
Bei einer Neuanordnung der Makroblöcke beim Mixen kann sich allerdings diese Anzahl verändern, so dass am Decoder die falsche Tabelle für die Entropie- Decodierung der Codewörter herangezogen würde. Um dies zu verhindern, müssen die entsprechenden Codewörter ausgetauscht werden, wenn sich eine andere VLC-Tabelle ergeben würde. Dazu müssen die Codewörter nicht decodiert werden, also die Anzahl der Koeffizienten ungleich Null und die Anzahl„trailing ones" bestimmt werden, sondern der Übergang kann direkt aus der im H.264/AVC Standard definierten Tabelle bestimmt werden. Diese VLC Tabelle ist in Figur 3 dargestellt, wobei der Parameter nC die zu selektierende Tabelle bestimmt.
Das Syntaxelement trailing ones sign flag wird mit fester Wortlänge und nicht adaptiv codiert. Das Syntaxelement level suffix wird mit variabler Wortlänge (0 oder 1 Bit) codiert. Diese Wortlänge hängt allerdings nur vom Syntaxelement coeff token desselben 4x4-Blocks ab. Die übrigen Syntaxelemente trailing_ones_sign_flag, level_prefix, level suffix, total zeros, run before werden zwar adaptiv codiert, entsprechend dem CAVLC-Verfahren, allerdings bestehen keine Abhängigkeiten außerhalb des 4x4-Blocks. Somit können die Codewörter zu allen Syntaxelementen außer coeff token direkt in dem gemischten Datenstrom übernommen werden.
Da also nur die Makroblöcke bzw. 4x4-B locke am linken und oberen Rand überprüft werden müssen, die nach dem Mischen nicht mehr am linken oder entsprechend am oberen Rande des gemischten Bildes liegen, kann die Entropie-Decodierung und anschließende erneute Entropie-Encodierung auf ein Minimum reduziert und das Mischen effizient durchgeführt werden. Wenn also beispielsweise zwei Videosignale übereinander gemischt werden, müssen entsprechend nur die Makroblöcke am oberen Rand des zweiten Bildes überprüft und gegebenenfalls in ihrer Entropie-Codierung angepasst werden.
Die Entropie-Codierung mit dem CABAC-Verfahren erfolgt in mehreren Schritten: 1. Binarisierung des zu codierenden Symbols ähnlich einer variablen Längencodierung (VLC). Die Binärsymbole werden als„bin" bezeichnet.
2. Auswahl eines Kontext-Modells anhand des Typs des zu codierenden Symbols, z.B. Bewegungsvektor oder Koeffizient, für jedes zu codierende Bit des binarisierten Symbols„bin".
3. Codieren des„bin" anhand des gewählten Kontext-Modells, d.h. arithmetische Codierung des Bits anhand der Wahrscheinlichkeiten für„0" bzw.„1". Die
Wahrscheinlichkeiten ergeben sich aus der Wahl des Kontext-Modells.
4. Aktualisierung des bei der Codierung verwendeten Kontext-Modells, d.h.
Nachführung der Wahrscheinlichkeiten. Wenn beispielsweise eine„1" codiert wird, wird bei der nächsten Codierung eines„bin" für dessen Kontext-Modell eine höhere Wahrscheinlichkeit für eine„1" angenommen. Entsprechendes gilt für die Codierung einer„0".
5. Wiederholung der Schritte 3 und 4 , bis alle„bin" des Symbols codiert wurden. Falls die„bins" eines Symbols unterschiedlichen Kontexten zugeordnet sind, dann muss auch Schritt 2 wiederholt werden. Durch die Eigenschaften der arithmetischen Codierung, ein Bit des Ausgangsstroms kann Informationen für mehrere„bin" bzw. zu codierende Eingangssymbole enthalten, und der Aktualisierung der Kontext-Modelle ergibt sich eine Abhängigkeit des aktuell zu codierenden Symbols von den vorherigen Symbolen innerhalb desselben Slice. An Slice-Grenzen werden die Kontext-Modelle auf einen Initialwert gesetzt. Wenn die Makroblöcke von mehreren Videoströmen gemischt werden, dann stimmen die
Kontexte nach dem Mixen nicht mehr überein und der neue Videostrom kann nicht mehr decodiert werden. Um eine korrekte Decodierung zu ermöglichen, ist eine vollständige Decodierung der CABAC-Symbole mit anschließender Neucodierung nötig. Durch die erneute Encodierung werden die Aktualisierungen bei den
Kontextmodellen neu berechnet. Nur für die Makroblöcke am Anfang eines Slice werden bis zum Wechsel der Eingangsströme keine Neucodierungen vorgenommen, da die Kontexte an Slice-Grenzen initialisiert werden und damit korrekt sind. Die
Neucodierung startet also nach dem ersten Wechsel der Eingangs-Videoströme.
Symbole innerhalb des Datenstroms, die mit VLC, beispielsweise für den Makroblock- Typ, etc., oder einer festen Wortlänge codiert sind, werden ohne Entropie-Decodierung und erneuter Entropie-Decodierung und erneuter Entropie-Encodierung direkt in den neuen Datenstrom übernommen, da für diese keine Abhängigkeit zu vorherigen
Makroblöcken, oder allgemein zu anderen codierten Symbolen, besteht. In H.264/AVC werden als VLC sogenannte exponentielle Golomb-Codes verwendet. Dies ist möglich, da das dem aktuellen Codewort mit fester oder variabler Länge vorausgehende
CABAC-Codewort terminiert ist.
Beim Mischen der Videoströme müssen neben der Anpassung der Kontexte der Entropie-Codierung auch die Referenzen bei der Intra- und Inter-Prädiktion nötigenfalls angepasst bzw. schon bei der Encodierung sichergestellt werden. Eine Möglichkeit, um eine korrekte Intra-Prädiktion zu erreichen, wird in der Voranmeldung des gleichen Anmelders mit dem Titel„Accurate Intra Prediction for Macroblock-level mixing of video streams" von den Erfindern Peter Amon und Norbert Oertel beschrieben. In H.264/AVC enthalten Bewegungsvektoren die Information der Richtung und den Betrag von Bewegungen, um die Bewegungen zwischen zwei Bildern im Videostrom zu erkennen und zu berechnen. Um eine falsche Inter-Prädiktion zu vermeiden, sollten die Bewegungsvektoren nicht außerhalb des Bildes zeigen, wie in der Voranmeldung des gleichen Anmelders mit dem Titel„Mixen von Videoströmen" von den Erfindern Peter Amon und Andreas Hutter beschrieben.
Besonders vorteilhaft kann das erfinderische Verfahren auch für Videoströme durchgeführt werden, bei denen Abhängigkeiten zwischen den einzelnen Codewörtern in der Entropie-Codierung bestehen, wie beispielsweise bei den H.264-Bitströmen. Darüber hinaus werden H.264-Bitströme erzeugt, die auch von H.264-Decodern verarbeitet werden können, die keine Decodierung von Slice Groups unterstützen.
Eine Ausführungsform der Erfindung ist beispielhaft in den Figuren dargestellt.
Fig. 1 zeigt das Mischen von vier Eingangs-Videoströmen mittels einer MCU
Fig. 2 zeigt das Mischen von zwei H.264-Videoströmen auf der Makroblock-Ebene Fig. 3 zeigt die in H.264/AVC definierte VLC-Tabelle für die (De-)Codierung von coeff token
Fig. 4 zeigt die vollständige Transcodierung von zwei H.264-Videoströmen
Fig. 5 zeigt das Mischen von zwei H.264- Videoströmen auf der Slice-Ebene
Fig. 6 zeigt das Mischen von zwei H.261 -Videoströmen auf der Makroblock-Ebene
In Fig. 1 ist das Mischen von vier Eingangs-Videoströmen mittels einer MCU dargestellt, die nach dem H.264/AVC Standard codiert sind. Es liegen vier verschiedene H.264 Eingangs- Videoströme ISl, IS2, IS3 und IS4 von vier verschiedenen
Teilnehmern einer Videokonferenz vor.
Die unterschiedlichen Videoinhalte A, B, C und D der vier verschiedenen Eingangs- Videoströmen ISl , IS2, IS3 und IS4 werden so zusammengemischt, dass im Ausgangs- Videostrom OS alle Videoinhalte A, B, C und D gleichzeitig enthalten sind.
Beispielhaft sind die Videoinhalte A, B, C und D horizontal und vertikal nebeneinander angeordnet, so dass die Gesprächspartner einer Videokonferenz gleichzeitig am
Bildschirm zu sehen sind. Entsprechend dem H.264/AVC Standard sind die Eingangs-Videoströme IS 1 , IS2, IS3 und IS4 mit einem Entropie-Kodierungsverfahren codiert. Deshalb werden die
Eingangs-Videoströme IS 1 , IS2, IS3 und IS4 durch den jeweiligen Entropie-Decoder EDI, ED2, ED3 und ED4 so decodiert, dass die Makroblöcke der Videoströme neu geordnet und in der Multipoint Control Unit MCU zusammengemischt werden können. Die gemischten Macroblöcke werden gemäß dem H.264/AVC Standard im Entropie- Encoder EE zu einem neuen dedizierten H.264 Ausgangs- Videostrom OS encodiert. Der Videostrom OS wird danach an alle Teilnehmer gesendet. Fig. 2 ist das Mischen von zwei Videoströmen auf der Makroblock-Ebene dargestellt, die nach dem H.264/AVC Standard codiert sind.
Zunächst müssen die von den Teilnehmern empfangenen Videoströme IS 1 und IS2 in den jeweiligen Entropie-Decodern EDI und ED decodiert werden. Dies geschieht durch das Auflösen der Abhängigkeiten zwischen den Codewörtern durch eine vollständige oder teilweise Entropie-Decodierung. Danach werden die Makroblöcke MB1 und MB2 der Eingangs-Videoströme IS1 und IS2 neu geordnet und zu einem neuen Makroblock MB' zusammengefügt, der alle Daten der einzelnen Makroblöcke MB1 und MB2 enthält. Abschließend wird ein neuer Ausgangs-Videostrom OS im Entropie-Encoder EE encodiert und an alle Teilnehmer gesendet, so dass sich alle Teilnehmer gegenseitig sehen können. Dies geschieht dadurch, dass die vollständige oder teilweise Entropie- Decodierung nach dem Mischen der Videoströme durch eine vollständige oder teilweise Entropie-Encodierung wieder rückgängig gemacht wird. In Fig. 3 ist die VLC-Tabelle für die (De-)Codierung von coeff token dargestellt, die im H.264/AVC Standard definiert ist.
Bei der CAVLC Methode gibt es vier Auswahlmöglichkeiten einer VLC-Tabelle zur Codierung von coeffjoken. Die Auswahl erfolgt über den Wert nC, der auf Basis der Anzahl der Koeffizienten in dem Block oberhalb nU und auf der linken Seite nL des aktuellen codierten Blockes berechnet wird. Wenn der obere Block und der linke Block vorhanden sind, d.h. die beiden Blöcke liegen im selben codierten Slice, errechnet sich der Parameter nC wie folgt: nC = (nU + nL)/2. Wenn nur der obere Block vorhanden ist, beträgt nC = nU, wenn nur der linke Block vorhanden ist, beträgt nC = nL, und wenn keiner von beiden Blöcken vorhanden ist, beträgt nC = 0.
Der Parameter nC selektiert die entsprechende VLC-Tabelle in Abhängigkeit der Anzahl codierter Koeffizienten in den benachbarten Blöcken, d.h. Kontext-adaptiv. In Fig. 4 ist die vollständige Transcodierung von Videoströmen dargestellt, die nach dem H.264/AVC Standard codiert sind.
Die beiden H.264 Eingangs-Videoströme ISl und IS2 von zwei Teilnehmern werden durch jeweils einen H.264 Video-Decoder VD1 und VD2 auf der Frame-Ebene decodiert. Nach der Decodierung der Videoströme ISl und IS2 in die jeweiligen Videoframes VF1 und VF2 erfolgt das Mischen und Zusammenfügen der beiden Videoframes VF1 und VF2 zu einem neuen Videoframe VF', der alle Daten der einzelnen Videoframes VF1 und VF2 enthält. Abschließend wird ein neuer H.264 Ausgangs-Videostrom OS im H.264 Video-Encoder VE encodiert und an alle
Teilnehmer gesendet.
Dieser Vorgang wird auch als Pixeldomain-Mixing oder vollständige Transcodierung bezeichnet, bei dem z.B. eine Formatkonvertierung, eine Mischung von Bilddaten und die Erzeugung eines Konferenzbildes durchgeführt wird.
In Fig. 5 ist das Mischen von zwei Videoströmen auf der Slice-Ebene dargestellt, die nach dem H.264/ AVC Standard codiert sind.
In den beiden H.264 Eingansvideoströme ISl und IS2 sind gemäß dem H.264 Standard ohne zusätzliche Hilfsmittel die Makroblöcke zu den Slices zugeordnet. Das Mischen der Videoströme ISl und IS2 erfolgt durch eine flexible Zuordnung der Makroblöcke zu Slice-Gruppen. So wird für die beiden Eingangs-Videoströme ISl und ISl jeweils eine Slice-Gruppe SGI und SG2 definiert, die durch den Video Mixer VM in einen H.264 Ausgangs-Videostrom OS mit den Daten der beiden Slice-Gruppen SGI und SG2 vereint werden.
In Fig. 6 ist das Mischen von zwei Videoströmen auf der Makroblock-Ebene dargestellt, die nach dem H.261 Standard codiert sind.
Die beiden H.261 Eingangs- Videoströme IS1 und IS2 von zwei Teilnehmern liegen jeweils als codierte Makroblöcke MBl und MB2 vor. Durch eine Umsortierung der Makroblöcke MBl und MB2 wird das Zusammenmischen von den beiden Eingangs-Videoströmen IS1 und IS2 auf der Makroblock-Ebene zu einem neuen codierten Makroblock MB' durchgeführt, der alle Daten der einzelnen Makroblöcke MBl und MB2 enthält, der als dedizierten H.261 Ausgangs-Videostrom OS an alle Teilnehmer gesendet wird.
Bezugszeichenliste
A - D Videoinhalte
EDI - ED4 Entropie-Decoder
EE Entropie-Encoder
ISl - IS4 Eingangs-Videoströme
MB 1 , MB2 Kodierte Makroblöcke
MB' Mischung von kodierten Makroblöcken
MCU Multipoint Control Unit
OS Ausgangs-Videoströme
SG1. SG2 Slice-Gruppe
VD1 , VD2 Video-Decoder
VE Video-Encoder
VF1, VF2 Videoframe
VF' Mischung von Videoframes
VM Video Mixer

Claims

Patentansprüche
1. Verfahren zum Mischen von Videoströmen in einer Videomischer- Vorrichtung, die mehrere Eingangs- Videoströme von verschiedenen Teilnehmern, die mit Codewörtern für Makroblöcke codiert sind und bei denen die Codewörter Abhängigkeiten untereinander aufweisen, in einen Ausgangs- Videostrom zusammenfasst,
dadurch gekennzeichnet, dass
die Eingangs-Videoströme mindestens soweit Entropie-decodiert werden, dass die Abhängigkeiten zwischen den Codewörtern aufgelöst werden, dass die Makroblöcke neu geordnet und zusammengemischt werden, und dass die gemischten Makroblöcke zu einem neuen dedizierten Videostrom Entropie-encodiert werden.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass
die Eingangs-Videoströme und der Ausgangs- Videostrom gemäß dem H.264/AVC Standard codiert sind.
3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass
für die Entropie-Codierung ein Context-based Adaptive Variable Length Coding (CAVLC) Codier-V erfahren angewendet wird.
4. Verfahren nach Anspruch 1 , dadurch gekennzeichnet, dass
für die Entropie-Codierung ein Context-based Adaptive Binary Arithmetic Coding (CABAC) Codier- Verfahren angewendet wird.
5. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass
für die Entropie-Decodierung gemischter Makroblöcke die Codewörter durch die Auswahl einer VLC-Tabelle gemäß H.264/AVC bestimmt werden.
6. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass
für die Entropie-Decodierung gemischter Makroblöcke die CABAC-Symbole vollständig decodiert werden.
7. Verfahren nach einem der vorhergehenden Patentansprüche, dadurch
gekennzeichnet, dass
die gemäß H.264/AVC enthaltenen Bewegungsvektoren nicht außerhalb des Bildes zeigen, damit eine falsche Inter-Prädiktion vermieden wird.
8. Verfahren nach einem der vorhergehenden Patentansprüche, dadurch
gekennzeichnet, dass
für die Entropie-Decodierung der H.264/AVC Videoströme keine Slice-Gruppen berücksichtigt werden.
9. Videomischer-Einheit zur Transcodierung von Videoströmen, an die eine Anzahl von Teilnehmer-Endpunkten mit einem Encoder und Decoder gemäß H.264/AVC Standard angeschlossen ist, dadurch gekennzeichnet, dass
die Videomischer-Einheit eingangsseitig mit einer Anzahl von Entropie-Decodern und ausgangsseitig mit einem Entropie-Encoder ausgestattet und zur Durchführung eines der Verfahren gemäß den Patentansprüchen 1 bis 8 eingerichtet ist.
EP11727399.5A 2010-06-16 2011-06-14 Verfahren und vorrichtung zum mischen von videoströmen auf der makroblock-ebene Ceased EP2583461A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102010023954A DE102010023954A1 (de) 2010-06-16 2010-06-16 Verfahren und Vorrichtung zum Mischen von Videoströmen auf der Makroblock-Ebene
PCT/EP2011/002920 WO2011157399A1 (de) 2010-06-16 2011-06-14 Verfahren und vorrichtung zum mischen von videoströmen auf der makroblock-ebene

Publications (1)

Publication Number Publication Date
EP2583461A1 true EP2583461A1 (de) 2013-04-24

Family

ID=44318461

Family Applications (1)

Application Number Title Priority Date Filing Date
EP11727399.5A Ceased EP2583461A1 (de) 2010-06-16 2011-06-14 Verfahren und vorrichtung zum mischen von videoströmen auf der makroblock-ebene

Country Status (6)

Country Link
US (1) US9264709B2 (de)
EP (1) EP2583461A1 (de)
CN (1) CN102934437B (de)
DE (1) DE102010023954A1 (de)
TW (1) TWI511527B (de)
WO (1) WO2011157399A1 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102010023954A1 (de) * 2010-06-16 2011-12-22 Siemens Enterprise Communications Gmbh & Co. Kg Verfahren und Vorrichtung zum Mischen von Videoströmen auf der Makroblock-Ebene
CN103686047A (zh) * 2013-12-18 2014-03-26 电子科技大学 一种多路视频数据传输方法
CN106063264B (zh) * 2014-01-03 2019-06-07 Ge视频压缩有限责任公司 基于楔形波的编码概念
CN104853208B (zh) * 2015-05-13 2018-05-04 大唐移动通信设备有限公司 一种视频编码方法和装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050231588A1 (en) * 2002-08-05 2005-10-20 Exedra Technology, Llc Implementation of MPCP MCU technology for the H.264 video standard

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE7807374U1 (de) * 1978-03-11 1978-06-29 Spritztechnik Kopperschmidt Gmbh & Co Kg, 4800 Bielefeld Farbspritzgeraet mit fahrgestell
EP0666089A1 (de) * 1994-02-03 1995-08-09 Klaus Dr. Schulte Motorangetriebener Golfwagen
DE29610975U1 (de) * 1995-06-27 1996-10-24 "ITO Design und Marketing GmbH", 90419 Nürnberg Transportmittel für einen Personen- und/oder Warentransport zu Fuß
DE29517354U1 (de) * 1995-10-30 1995-12-14 Fisher-Price, Inc., East Aurora, N.Y. Kinder-Sportwagen
EP1126710A1 (de) * 2000-02-15 2001-08-22 Telefonaktiebolaget L M Ericsson (Publ) Verfahren und Vorrichtung zur Mischung von Videosignalen
US6891841B2 (en) * 2001-03-12 2005-05-10 Advent Networks, Inc. Time division multiple access over broadband modulation method and apparatus
JP4231698B2 (ja) * 2001-05-10 2009-03-04 ポリコム イスラエル リミテッド 多地点マルチメディア/音声システムの制御ユニット
US8976712B2 (en) * 2001-05-10 2015-03-10 Polycom, Inc. Speakerphone and conference bridge which request and perform polling operations
US20040022202A1 (en) * 2002-08-05 2004-02-05 Chih-Lung Yang Method and apparatus for continuously receiving images from a plurality of video channels and for alternately continuously transmitting to each of a plurality of participants in a video conference individual images containing information concerning each of said video channels
US6535240B2 (en) * 2001-07-16 2003-03-18 Chih-Lung Yang Method and apparatus for continuously receiving frames from a plurality of video channels and for alternately continuously transmitting to each of a plurality of participants in a video conference individual frames containing information concerning each of said video channels
US8144854B2 (en) * 2001-12-31 2012-03-27 Polycom Inc. Conference bridge which detects control information embedded in audio information to prioritize operations
US20050008240A1 (en) * 2003-05-02 2005-01-13 Ashish Banerji Stitching of video for continuous presence multipoint video conferencing
KR100548383B1 (ko) * 2003-07-18 2006-02-02 엘지전자 주식회사 이동통신 시스템의 디지털 비디오 신호처리 장치 및 방법
NO320115B1 (no) * 2004-02-13 2005-10-24 Tandberg Telecom As Anordning og fremgangsmate for a generere CP-bilder.
JP4403974B2 (ja) * 2005-01-21 2010-01-27 株式会社日立製作所 適応変調方法並びに符号化率制御方法
US20070285500A1 (en) * 2006-04-21 2007-12-13 Dilithium Holdings, Inc. Method and Apparatus for Video Mixing
WO2008129500A2 (en) 2007-04-24 2008-10-30 Nokia Corporation System and method for implementing fast tune-in with intra-coded redundant pictures
US8971412B2 (en) 2008-04-10 2015-03-03 Qualcomm Incorporated Advanced interpolation techniques for motion compensation in video coding
US8687685B2 (en) * 2009-04-14 2014-04-01 Qualcomm Incorporated Efficient transcoding of B-frames to P-frames
DE102010023954A1 (de) * 2010-06-16 2011-12-22 Siemens Enterprise Communications Gmbh & Co. Kg Verfahren und Vorrichtung zum Mischen von Videoströmen auf der Makroblock-Ebene

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050231588A1 (en) * 2002-08-05 2005-10-20 Exedra Technology, Llc Implementation of MPCP MCU technology for the H.264 video standard

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CHIH-HUNG LI ET AL: "A Multiple-Window Video Embedding Transcoder Based on H.264/AVC Standard", EURASIP JOURNAL ON ADVANCES IN SIGNAL PROCESSING, HINDAWI PUBLISHING CORP, US, vol. 2007, no. 13790, 1 January 2007 (2007-01-01), pages 1 - 17, XP002657323, ISSN: 1687-6172, DOI: 10.1155/2007/13790 *
DI XU ET AL: "Logo insertion transcoding for H.264/AVC compressed video", IMAGE PROCESSING (ICIP), 2009 16TH IEEE INTERNATIONAL CONFERENCE ON, IEEE, PISCATAWAY, NJ, USA, 7 November 2009 (2009-11-07), pages 3693 - 3696, XP031628889, ISBN: 978-1-4244-5653-6 *
See also references of WO2011157399A1 *

Also Published As

Publication number Publication date
TWI511527B (zh) 2015-12-01
DE102010023954A1 (de) 2011-12-22
US20130223511A1 (en) 2013-08-29
CN102934437B (zh) 2016-09-14
WO2011157399A1 (de) 2011-12-22
TW201212657A (en) 2012-03-16
US9264709B2 (en) 2016-02-16
CN102934437A (zh) 2013-02-13

Similar Documents

Publication Publication Date Title
EP2198610B1 (de) Verfahren und vorrichtung zum erstellen eines kodierten ausgangsvideostroms aus mindestens zwei kodierten eingangsvideoströmen, sowie verwendung der vorrichtung
EP1487113B1 (de) Kodierung und Dekodierung von Transformationskoeffizienten in Bild- oder Videokodierern
DE69432142T2 (de) Verfahren und vorrichtung zur effizienten transkodierung
DE10190285B4 (de) Verfahren und System zur Verarbeitung von komprimierten Videosignalen
DE69434271T4 (de) Adaptives variables Längenkodierungsverfahren für Videodaten
DE60031230T2 (de) Skalierbares videokodierungssystem und verfahren
DE69329637T2 (de) System mit mindestens einem Koder zur Kodierung eines digitalen Signals und mit mindestens einem Dekoder zur Dekodierung eines kodierten digitalen Signals
DE102016125379A1 (de) Bewegungsvektoraufteilung des letzten Frames
DE69329722T2 (de) System mit mindestens einem Koder zur Kodierung eines digitalen Signals und mit mindestens einem Dekoder zur Dekodierung eines digitalen Signals
DE112012005164T5 (de) Verfahren und Vorrichtung für Context-Adaptive Binäre Arithmetische Codierung von Syntaxelementen
WO2023020560A1 (zh) 视频编解码的方法、装置、电子设备及存储介质
DE102015115998A1 (de) Segmentierter Videocodec für Video mit hoher Auflösung und hoher Framerate
DE10204617B4 (de) Verfahren und Vorrichtungen zur Kompression und Dekompression eines Videodatenstroms
WO2011157399A1 (de) Verfahren und vorrichtung zum mischen von videoströmen auf der makroblock-ebene
DE3889939T2 (de) Verfahren und Mittel zur Kodierung und Dekodierung eines Bildsignals.
DE69928494T2 (de) Videosignalkompression
EP2389763B1 (de) Multiplexverfahren zum zusammenfassen digitaler videosignale
DE3726601C2 (de)
EP1413142A2 (de) Optimale snr-skalierbare videocodierung
DE10200901B4 (de) Effiziente Codierung von Videosignalen für skalierbare Simul-cast-Speicherung und -Übertragung sowie zugehöriger Codec
DE102020207711B3 (de) Verfahren und vorrichtungen zur codierung von bilddaten
WO2003026310A2 (de) Effiziente videocodierung für skalierbare simul-cast-speicherung und -übertragung
WO2006108780A1 (de) Verfahren und vorrichtung zur reduktion eines quantisierungsfehlers
DE102004011422B4 (de) Vorrichtung und Verfahren zum Verarbeiten einer Gruppe von Bildern und Vorrichtung und Verfahren zum Verarbeiten eines Basisbildes und eines oder mehrerer Erweiterungsbilder
EP2745510A1 (de) Verfahren zur behandlung von störungen bei der übertragung einer zeitlichen folge digitaler bilder

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20130116

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

DAX Request for extension of the european patent (deleted)
RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: UNIFY GMBH & CO. KG

17Q First examination report despatched

Effective date: 20160728

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: UNIFY GMBH & CO. KG

APBK Appeal reference recorded

Free format text: ORIGINAL CODE: EPIDOSNREFNE

APBN Date of receipt of notice of appeal recorded

Free format text: ORIGINAL CODE: EPIDOSNNOA2E

APBR Date of receipt of statement of grounds of appeal recorded

Free format text: ORIGINAL CODE: EPIDOSNNOA3E

APAV Appeal reference deleted

Free format text: ORIGINAL CODE: EPIDOSDREFNE

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: UNIFY GMBH & CO. KG

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: UNIFY PATENTE GMBH & CO. KG

APBT Appeal procedure closed

Free format text: ORIGINAL CODE: EPIDOSNNOA9E

REG Reference to a national code

Ref country code: DE

Ref legal event code: R003

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED

18R Application refused

Effective date: 20220613