DE60028486T2 - Videocoder und -decoder - Google Patents

Videocoder und -decoder Download PDF

Info

Publication number
DE60028486T2
DE60028486T2 DE60028486T DE60028486T DE60028486T2 DE 60028486 T2 DE60028486 T2 DE 60028486T2 DE 60028486 T DE60028486 T DE 60028486T DE 60028486 T DE60028486 T DE 60028486T DE 60028486 T2 DE60028486 T2 DE 60028486T2
Authority
DE
Germany
Prior art keywords
parts
puzzle
sequence
pieces
der
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.)
Expired - Lifetime
Application number
DE60028486T
Other languages
English (en)
Other versions
DE60028486D1 (de
Inventor
Laurent Duquesnois
Cecile Dufour
Lionel Bouchard
Ivo Jansch
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.)
Pendragon Wireless LLC
Original Assignee
Koninklijke Philips Electronics NV
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=26073407&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE60028486(T2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Application granted granted Critical
Publication of DE60028486D1 publication Critical patent/DE60028486D1/de
Publication of DE60028486T2 publication Critical patent/DE60028486T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2250/00Miscellaneous game characteristics
    • A63F2250/64Miscellaneous game characteristics used for radio or television, e.g. television shows; used in front of an audience
    • A63F2250/645Miscellaneous game characteristics used for radio or television, e.g. television shows; used in front of an audience used by the watcher or listener
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/6009Methods for processing data by generating or executing the game program for importing or creating game content, e.g. authoring tools during game development, adapting content to different platforms, use of a scripting language to create content
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game

Description

  • BEREICH DER ERFINDUNG
  • Die vorliegende Erfindung bezieht sich auf einen Videocodierer zum verarbeiten von Sequenzen animierter Bilder – wie Filme – und auf einen entsprechenden Decoder.
  • HINTERGRUND DER ERFINDUNG
  • Die MPEG-4 internationale Norm, beschrieben beispielsweise in " Overview of the MPEG-4 Version 1 Standard" (Dokument ISO/IEC JTC1/SC29/WG11 N1909, Oktober 1997, Fribourg, Schweiz), ist eine objektbasierte Norm für Multimedia. Dies bedeutet, dass die MPEG-4 Norm nicht nur imstande ist, Videobilder zu codieren, wie an einem Fernsehschirm üblich, sondern dass sie auch Videodaten mit Formen und Texturen innerhalb dieser Formen verarbeiten kann. Die MPEG-4 Videonorm soll dazu YUVA Eingangssignale meistern können, wobei YUV den Leuchtdichte- und Farbartanteilen entspricht und A mit demjenigen übereinstimmt, was als A Kanal oder Alpha-Kanal bezeichnet wird.
  • Eine Darstellung eines YUVA Objektes, wie in der MPEG-4 Norm begegnet, ist in den 1 und 2 dargestellt, wobei 1 ein Farbbild entsprechend den YUV Signalen zeigt und 2 nur eine Form zeigt, einen Umriss zwischen einem schwarzen und einem weißen Gebiet zeigt. Es ist bekannt, beispielsweise aus dem Dokument "Representing moving images with layers", von J.Y.A Wang und E.H. Adelson, "IEEE Transactions on Image Processing" Heft 3, Nr. 5, September 1994, Seiten 625–638, dass eine Alpha-Karte – oder eine Alpha-Ebene – es ermöglicht, dass die Transparenz oder die Undurchsichtigkeit eines Gebietes an jedem der Punkte definiert wird, d.h. die Form dieses Gebietes als transparent betrachtet, während der restliche Teil als maskiert, oder bedeckt betrachtet wird. Die Alpha-Ebene kann auch mit 8 Bits codiert werden, wodurch es dann möglich ist, dass eine genauere Information über den Pegel der Undurchsichtigkeit oder Transparenz des Objektes gegeben werden kann.
  • Diese Funktionalität der Meisterung von YUVA Signalen bietet die Möglichkeit, jedes Objekt eines Bildes auf eine autonome Weise zu verarbeiten. Die Hauptanwendung der genannten Möglichkeit ist eine flexible Verwaltung der Struktur von Video- oder audiovisuellen Szenen und der Zusammensetzung der elementaren Ströme entspre chend den genannten Szenen zu implementieren, und insbesondere Szenen zusammenzusetzen, in denen Daten verschiedenen Typs unabhängig voneinander verwaltet werden können.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Es ist nun u. a. eine Aufgabe der vorliegenden Erfindung, einen neuen Typ der Applikation dieser Funktionalität vorzuschlagen.
  • Dazu bezieht sich die vorliegende Erfindung auf einen Videocodierer, vorgesehen zum Verarbeiten einer Sequenz animierter Bilder – wie eines Films – wobei der genannte Codierer Folgendes umfasst:
    • – Mittel zum Aufteilen eines von der genannten Sequenz belegten Schirmfensters in X Reihen und Y Spalten:
    • – Mittel zum separaten Codieren jedes der X.Y Teile jedes Bildes der auf diese Weise erhaltenen Sequenz;
    • – Mittel zum Assoziieren eines bestimmten Etiketts mit jedem der Teile, wobei dieses Etikett die Position in dem Fenster angibt, und zum Übertragen oder Speichern der codierten Teile in einer beliebigen Reihenfolge.
  • Die vorliegende Erfindung bezieht sich auch auf einen entsprechenden Videodecoder, der zum Decodieren von Eingangssignalen vorgesehen ist, die mit Hilfe dieses bereits beanspruchten Codierers codiert worden sind, wobei der genannte Decoder Folgendes umfasst:
    • – Mittel zum Decodieren der genannten codierten Teile und der genannten codierten assoziierten Etikette;
    • – Mittel zum Wiedergeben der auf diese Weise erhaltenen decodierten Teile in beliebiger Reihenfolge, während die decodierten assoziierten Etikette gespeichert werden.
  • Der genannte Decoder umfasst vorzugsweise Nachverarbeitungsmittel zum Wiedergeben und zur Neuordnung der wiedergegebenen Teile in der ursprünglichen einwandfreien Ordnung.
  • Es ist eine weitere Aufgabe der vorliegenden Erfindung einen Decoder zu implementieren, in dem die genannten Nachverarbeitungsmittel Sätze mit von dem Computer auslesbaren Instruktionen aufweisen, die es ermöglichen ein Puzzle zu spielen und die der Implementierung der nachfolgenden Ereignisse entsprechen:
    • – das Verlagern eines einzelnen wiedergegebenen decodierten Teils des genannten Puzzles von jeder beliebigen Stelle zu einer anderen Stelle oder zu einer der X.Y Stellen, die in einem Schirmfenster entsprechend der neu geordneten Sequenz von Bildern verfügbar sind;
    • – das Verlagern eines wiedergegebenen decodierten Teils und aller anhängenden wiedergegebenen decodierten Teile von jeder beliebigen Stelle in jede andere beliebige Stelle oder in eine der X.Y Stellen, die in dem genannten Fenster verfügbar sind.
  • Vorzugsweise werden die genannten Verlagerungen mit Hilfe einer Maus oder einer ähnlichen Steuervorrichtung gesteuert, mit der nachfolgenden Sequenz von Ereignissen "LEFT BUTTON DOWN", "MOUSE MOVE". "LEFT BUTTON UP" zur Verlagerung eines einzelnen Teils und mit der nachfolgenden Sequenz von Ereignissen "RIGHT BUTTON DOWN", "MOUSE MOVE", "RIGHT BUTTON UP" zur Verlagerung jedes spezifischen Teils und aller berührten Teile.
  • KURZE BESCHREIBUNG DER ZEICHNUNG
  • Ausführungsbeispiele der Erfindung sind in der Zeichnung dargestellt und werden im Folgenden näher beschrieben. Es zeigen:
  • 1 ein Farbbild entsprechend YUV Signalen, und
  • 2 die entsprechende Schwarz-Weißform für den A-Kanal (Alphakanal),
  • 3 das Prinzip der Aufteilung einer Filmsequenz in X.Y Teile, mit denen ein zweidimensionales Etikett assoziiert ist,
  • 4 ein in 16 Puzzleteile aufgeteiltes Bild, und
  • 5 das Alphakanal-Eingangssignal entsprechend beispielsweise dem 6. Teil,
  • 6 ein Beispiel des an dem Schirmfenster wiedergegebenen Bildes am Anfang der Vorgänge, wenn wiedergegeben mit einer MPEG-4 Szene zur Neuordnung der Teile eines mit dieser Szene vorbereiteten Puzzles, und
  • 7 eine Darstellung, wie der Puzzlearbeitsraum organisiert ist,
  • 8 bis 17 je eine Darstellung der implementierten Hauptvorgänge, wenn das Puzzle in dem Arbeitsraum nach 7 wiedergegeben wird.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • Nach der vorliegenden Erfindung wird eine Sequenz animierter Bilderbeispielsweise eine Filmsequenz – verarbeitet, wie nachstehend näher erläutert wird. Die Filmsequenz wird in P Reihen und Q Spalten aufgeteilt, wie in 3 dargestellt, und jeder Teil des Films wird einzeln codiert, und zwar entsprechend der MPEG-4 Norm (d.h. als ein autonomes Objekt verarbeitet), während gleichzeitig ein zweidimensionales Etikett [a,b] gespeichert wird, das die ursprüngliche Position des betreffenden teils in der Filmsequenz angibt (a variiert von 0 bis X und b variiert von 0 bis Y; deswegen P = X + 1 und Q = Y + 1).
  • Die codierten Teile der Filmsequenz werden danach, in beliebiger Reihenfolge, entweder übertragen (Echtzeitübertragung) oder örtlich gespeichert, auf einer Disk oder in einem einzelnen Server. An der Empfangsseite werden die MPEG-4 sichtbaren Objekte, die einzeln codiert und übertragen (oder gespeichert) sind, die mit den ursprünglichen P × Q-Teilen der Filmsequenzen übereinstimmen, empfangen und decodiert. Die Bedeutung dieser einzelnen Codierung, Übertragung und Decodierung ist dann, das Wiederherstellen des ursprünglichen Films an P.Q unabhängigen Schirmfenstern, was zu verschiedenen spezifischen Applikationen führen kann. So können beispielsweise P.Q individuelle Schirme unabhängig voneinander einen Teil des Films wiedergeben, beispielsweise für Übersichtszwecke, oder zum Liefern von Teilen des Films zu einzelnen Zuschauern.
  • Eine andere Applikation kann sein, das Schaffen eines interaktiven Spiels für einen Endverbraucher. Die MPEG-4 sichtbaren Objekte, die die verschiedenen Teile der ursprünglichen Filmsequenz darstellen, können restituiert und in beliebiger Reihenfolge wiedergegeben werden: an dem Schirm, die MPEG-4 Szene spielt alle Teile des Films gleichzeitig ab, aber für den Benutzer nicht in der richtigen Reihenfolge.
  • Das Ziel des Spiels ist dann, durch einen geeigneten Steuervorgang des Benutzers an den teilen, diese neu zu ordnen um die Filmsequenz in dem ursprünglichen Aspekt wiederherzustellen. Um dieses Ergebnis zu erzielen kann der Benutzer eine Maus benutzen um auf einen bestimmten Teil zu klicken und diesen Teil an die Stelle zu schleppen, wo er denkt, das dieser Teil liegen soll. Ein Vergleich des ursprünglichen Etiketts (auch codiert und übertragen, oder gespeichert) mit dem Etikett der genannten Stelle kann zur Information des Benutzers geschaffen werden.
  • Es können verschiedene Regeln für die Verlagerung der wiedergegebenen, decodierten Teile gewählt werden. Eine Art und Weise sie zu verlagern ist, dass es nicht erlaubt ist, dass die Teile einander überlappen; der Benutzer kann dann nur einen Teil von der einen Stelle zu einer benachbarten Leerstelle verlagern. Eine andere Regel kann erlauben, dass der Benutzer einen Teil nach einer beliebigen Stelle schleppt, wie bei einem Puzzlespiel. Dann ist es aber notwendig, dass Überlappung der Teile erlaubt ist. Welche die Regel auch sein mag, beim Schleppen der Teile findet Wiedergabe der Sequenz nach wie vor statt und sogar der Teil, der zu der betreffenden Zeit geschleppt wird, ist konstant in Bewegung.
  • Eine weitere Applikation des genannten Codierungsprozesses kann folglich die Verwirklichung eines MPEG-4 Puzzles von M × N Stücken sein, beispielsweise eines sehr einfache Puzzles von 4 × 4 Stücken in der bestimmten Ausführungsform, die nun anhand der 4 näher beschrieben wird, wobei ein Rechteckbild dargestellt wird, das in 16 beliebig geformte Stücke aufgeteilt ist (dargestellt durch verschiedene Graupegel), und wobei 5 das Alphaeingangssignal des 6. Stücks (in Schwarz und Weiß) zeigt. Diese Ausführungsform erfordert 16 Alphakanal-Eingangssignale (M × N im allgemeinen Fall), wobei jeder derselben einem Stück des Puzzles entspricht.
  • Wenn jedes Alphasignal, das jedem Stück entspricht, einmal aufgebaut worden ist, werden 16 MPEG-4 Videoobjekt-Codierungsvorgänge durchgeführt (für den Lauf i von Video-Objektcodierung, mit i zwischen 1 und 16, sind die nachfolgenden Dateien: eine YUV-Eingangsdatei entsprechend dem herkömmlichen Videosignal, und die Alphadatei entsprechend dem Teil i). Diese 16 Vorgänge führen zu der Schaffung von 16 Bitströmen und die Decodierung eines einzelnen Bitstroms entspricht einem einzelnen Teil.
  • Die aufeinander folgenden Schritte der Decodierung und der Wiedergabeschritt werden nun anhand der 6 bis 17 näher erläutert. Das Startbild, das am Wiedergabeschirm sichtbar ist, kann beispielsweise aussehen, wie in 6 dargestellt, und der Puzzlearbeitsraum wie in 7 dargestellt. In dem genannten Puzzlearbeitsraum ist ein Teil P1 des Schirmfensters dem Frame des zu rekonstruierenden Puzzles zugeordnet und der restliche Teil P2 den einzelnen Stücken des Puzzles, wiedergegeben und in beliebiger Ordnung dargestellt.
  • Der Decodierungsprozess ist in 8 dargestellt und umfasst die nachfolgenden Vorgänge:
    • (a) das Auslösen (durch eine Aktion des Benutzers in dem Fenster "Start" des Schirmfensters nach 6 oder 7): im falle eines ersten Starts, der Puzzleteil P1, der gestoppt wurde, ist offenbar leer, aber im falle eines Neustarts werden alle vorher zugeordneten Daten entsprechend den Puzzleteilen, die bereits an ihrem Platz liegen, zerstört, was mit dem ersten Vorgang gemacht wird (Schritt 1: zerstöre das vorhergehende Puzzle).
    • (b) Puzzleerzeugung: das Puzzleobjekt wird geschaffen und die entsprechenden Auslösungen werden lanciert;
    • (c) der Benutzer lanciert das Puzzle (Schritt 3) und es kann eine begleitende Audiosequenz hinzugefügt werden, wobei eine Zeitplanungsstufe vorgesehen ist um alles was während der Implementierung des Prozesses geschehen soll zu verwalten und zu synchronisieren;
    • (d) der vierte Vorgang entspricht der Heranschaffung der Puzzlestück-Identifizierer (IDs) und deren Aufzeichnung entsprechend deren Lokalisierung (4: Aufzeichnung von Videoobjelctetiketten) damit es einen Bezugswert gibt um später zu entscheiden, ob das Puzzle gelöst wurde oder nicht;
    • (e) der Puzzlearbeitsraum wird wiedergegeben, d.h. die 16 Stücke, der Hintergrund,... (5: zeige den Puzzlearbeitsraum).
  • Wenn gespielt wird zum Neuordnen der Puzzlestücke können zusätzliche Vorgänge ausgelöst werden, beispielsweise der in 9 dargestellte Befehl "Spielstandereignis". Der Subschritt 1 des genannten Vorgangs zeigt den Spielstand, d.h. die Wiedergabe des Spielstandes (mit Namen und assoziierter Information). Wenn der Spielstand einmal wiedergegeben ist und wenn der Benutzer auf OK geklickt hat, wird der dargestellte Spielstand versteckt und wie Wiedergabe kehrt zu dem vorhergehenden Fenster zurück (Subschritt 2). Der Vorgang "Spielstand" kann entweder von dem Startschirm (6) oder von dem Arbeitsschirm aus (7) abgerufen werden.
  • Weiterhin wird, wenn eine Sekunde vorbei ist, ein Zeitgeber automatisch getriggert, entsprechend dem Flussdiagramm aus 10, wobei ein erster Test durchgeführt wird um zu überprüfen, ob ein Benutzer spielt ("PLAYING ?"). Sollte dies nicht der Fall sein (Ergebnis "FALSE" des Tests) so wird der Puzzlespielraum versteckt. Sollte dies aber der Fall sein, (Ergebnis "TRUE" des Tests), so findet ein Subschritt 1 statt um die Zeitvariablen zu aktualisieren (dieser Subschritt entspricht einer Fortschreibung mit Eins der Anzahl vergangener Sekunden und ggf. der Anzahl vergangener Minuten), und es werden danach einige Test durchgeführt:
    • – "GAME LOST ?" : sollte dies der Fall sein, so wird eine Prozedur entsprechend dem Ereignis "LOST" abgerufen (Subschritt 2), und sollte dies nicht der Fall sein, so wird der nachfolgende Test durchgeführt ("PUZZLE SOLVED ?");
    • – "PUZZLE SOLVED ?": sollte dies der Fall sein, so wird eine Prozedur entsprechend dem Ereignis "SOLVED" abgerufen (Subschritt 3), und sollte dies nicht der Fall sein, so wird der nachfolgende Test durchgeführt ("GAME STARTING ?");
    • – "GAME STARTING ?" : sollte dies der Fall sein, so werden alle Zeitvariablen (Subschritt 4) auf Null rückgestellt (übrigens kann das Spiel erst echt starten oder neu gestartet werden, wenn die Puzzlestücke durcheinander liegen), und sollte dies nicht der Fall sein, so wird der Puzzlearbeitsraum versteckt.
  • Das Ereignis "LOST" ist in 11 dargestellt. Der Zustand des Decoders wird auf "NOT PLAYING" gesetzt. Der Benutzer hat keinen Erfolg gehabt bei der Lösung des Puzzlespiels (beispielsweise vor dem Ende der Videosequenz oder dem Auftreten eines anderen vordefinierten Ereignisses). Es wird dann eine entsprechende Nachricht wiedergegeben, beispielsweise "you didn't complete the puzzle in time ! you lose..." und die Anordnung wartet bis der Benutzer auf "OK" geklickt hat. Das Ereignis "SOLVED" ist in 12 dargstellt. Wie oben bei dem Ereignis "LOST" wird der Zustand des Decoders auf "NOT PLAYING" gesetzt. Es können dann zwei Situationen auftreten: entweder hat der Benutzer das Puzzlespiel gelöst, hat aber nicht den höchsten Spielstand erreicht, oder er hat diesen Stand erreicht. Auf diesen Test "NEW HIGHSCORE ?" gibt es zwei Antworten: Nein (Ergebnis "FALSE"), und (Subschritt 1) es wird eine Nachricht wiedergegeben (beispielsweise "Too bad, not fast enough to reach the highscores") oder Ja (Ergebnis "TRUE"), und (Subschritt 2) der Spielstand wird zusammen mit dem Namen (und anderer etwaiger Information) des Benutzers gespeichert.
  • Bevor diese Ergebnisse erreicht werden, wird eine Maus (oder eine andere Steuervorrichtung, die es auch ermöglicht wie die maus auf ein Puzzlestück zu klicken und es zu verlagern) verwendet um mit den Puzzlestücken zu spielen, beispielsweise entsprechend den nachfolgenden Ereignissen "MOUSE MOVE", "LEFT BUTTON DOWN", "LEFT BUTTON UP", "RIGHT BUTTON DOWN", und "RIGHT BUTTON UP", was nachstehend noch näher erläutert wird.
  • Das Ereignis "MOUSE MOVE", dargestellt in 13, umfasst die nachfolgenden Hauptsubschritte: einen ersten Test "LEFT BUTTON PRESSED ?", wonach ein zweiter Test folgt: "RIGHT BUTTON PRESSED ?". Sollte die linke Taste der Maus eingedrückt gewesen sein, (oder wenn eine gleichwertige Funktion einer ähnlichen Steuervor richtung betätigt worden ist), wird der ID des selektierten Puzzlestücks (wie oben, ID=Identifier) abgeholt (Vorgang 1 : nimm ID des selektierten Stücks) und die neuen Koordinaten – nach der Mausverlagerung – werden diesem aktuellen Puzzlestück zugeführt (Vorgang 2: Aktualisierung der neuen Koordinaten). Wenn die erste Taste nicht eingedrückt gewesen ist, sondern die zweite Taste (die rechte Taste) (oder wenn die entsprechende Funktion der ähnlichen Steueranordnung betätigt worden ist), wird der ID des selektierten Puzzlestücks abgerufen (wie oben, Vorgang 1 : nimm ID des selektierten Stücks), aber nun werden dem aktuellen Stück und allen daran befestigten Stücken die neuen Koordinaten zugeordnet (Vorgang 3: Aktualisierung der Koordinaten aller angehängter Stücke), da es beim Durchführen eines Puzzlespiels tatsächlich oft nützlich ist, eine Anzahl bereits zusammengebrachter Stücke zu verlagern.
  • Das Ereignis "LEFT BUTTON DOWN", dargestellt in 14, umfasst die nachfolgenden Subschritte. Wenn dieses Ereignis stattfindet, dann geschieht Folgendes:
    • – der ID des selektierten Stücks wird abgerufen (1: nimm ID des selektierten Stücks),
    • – wenn der ID des selektierten Stücks vorhanden ist, wird die Bildtiefe derart verwaltet, dass das genannte Stück oben auf alle anderen gelegt wird (2: bringe das Stück in den Vordergrund);
    • – eine Ortungstabelle wird aktualisiert (3: entleere den Platz des Stücks), da das selektierte Stück verlagert worden ist und nicht länger an dem vorigen Platz liegt, der leer wird;
    • – die Lagenkoordinaten des Stücke werden gespeichert (4: Aufzeichnung der aktuellen Lage des Stücks), da diese verwendet werden könnten, wenn die neue Lage nicht erlaubt ist (in diesem Fall wird das Stück in die vorhergehende Lage zurückgebracht).
  • Das gleiche Ereignis "RIGHT BUTTON DOWN", dargestellt in 15, umfasst die nachfolgenden Schritte:
    • – das selektierte Stück wird abgeholt (1: nimm ID des selektierten Stücks);
    • – alle angehängten IDs werden abgerufen, damit man imstande ist, eine Gruppe von Stücken als ein ganzes zu verlagern (2: finde alle zusammenhängenden Stücke);
    • – die Lagenkoordinaten dieser zusammenhängenden, angehängten Stücke werden gespeichert (3: Aufzeichnung der Lagen von zusammenhängenden Stücken), da sie verwendet werden könnten, wenn die neue Lage nicht erlaubt ist (in dem Fall werden die Stücke in ihre vorhergehenden Lagen zurückgebracht);
    • – wenn diese selektierten Stücke gegeben sind, wird ihre Tiefe verwaltet, so dass die Grup pe nun selektierter Stücke oben auf allen anderen wiedergegeben werden (4: bringe die Stücke in den Vordergrund);
    • – die Eingaben in die Lagentabelle, die den Iden aller selektierten Stücke entsprechen, werden gelöscht (5: Entleerung der Lagen der Stücke).
  • Das Ereignis "LEFT BUTTON UP", dargestellt in 16, umfasst die nachfolgenden Schritte:
    • – der ID des selektierten Stücks wird angerufen (1: nimm den ID des selektierten Stücks);
    • – es wird ein test durchgeführt (2: neuen Platz frei ?) um zu prüfen, ob der neue Platz nicht bereits belegt ist;
    • – sollte dieser neue Platz nicht akzeptiert werden (bereits belegt), so wird das Stück an den Platz zurückgebracht, von dem es kam (3: das Stück zurückbringen), was möglich ist durch die während des Ereignisses "LEFT BUTTON DOWN" aufgezeichneten Koordinaten;
    • – wenn die neue Lage akzeptiert wird, wird ein Test durchgeführt (4:neue Lage möglich ?) um zu überprüfen, ob das neue Stück nicht mit einigen anderen umgebenden Stücken im Widerspruch ist (in einem derartigen Fall wird das neue Stück an den Platz, von dem es kam, zurückgebracht (3: bringe das Stück zurück);
    • – wenn es keine Unvereinbarkeit gibt, wird die neue Lage akzeptiert, das Stück wird an den neuen Platz gebracht und die Lagentabelle wird aktualisiert (5: lass das Stück an den neuen Platz fallen).
  • Das ähnliche Ereignis "RIGHT BUTTON UP", dargestellt in 17, umfasst die nachfolgenden Schritte, durchgeführt für jeden der I Stücke, die angehängt wurden um eine einzelne Gruppe zu bilden (es ist notwendig zu überprüfen, ob kein Stück der Gruppe mit einem bereits an seinem Platz liegenden Stück in der Umgebung in Widerspruch ist);
    • – der ID des selektierten Stücks wird abgerufen (1: nimm den ID des Stücks Nr. i, innerhalb der Gruppe angehängter Stücke, wobei i = 1 bis I);
    • – es wird ein Test durchgeführt (2: neuer Platz frei ?) um zu überprüfen, ob der neue Platz nicht bereits belegt ist;
    • – wenn dieser neue Platz nicht akzeptiert wird (bereits belegt), wird das Stück, zusammen mit den anhängenden Stücken, zurückgebracht, und zwar al den Platz, von dem es herkam (3: bringe die Stücke zurück);
    • – wenn der neue Platz akzeptiert wird, wird ein test durchgeführt (4: neuer Platz möglich ?), damit geprüft wird, dass das neue Stück nicht mit einem anderen umgebenden Stück in Widerspruch ist (in einem derartigen Fall, d.h. wenn "MOVE IS NOT OK", wird das neue Stück mit den anhängenden Stücken, an den Platz zurückgebracht, von dem es herkam (3: bringe die Stücke zurück);
    • – wenn es keine Unvereinbarkeit gibt, wird der neue Platz akzeptiert ("MOVE IS OK"), die Stücke werden an ihren neuen Platz gebracht und die Lagentabelle wird aktualisiert (5: lege die Gruppe an ihren neuen Platz).
    • Es sei bemerkt, dass diese Ereignisse im Allgemeinen gekoppelt sind, und zwar entsprechend den nachfolgenden Sequenzen: "LEFT BUTTON DOWN"/"MOUSE MOVE"/"LEFT BUTTON UP" oder "RIGHT BUTTON DOWN"/"MOUSE MOVE"/"RIGHT BUTTON UP".
  • Sie wurden aber nur der Deutlichkeit halber separat beschrieben.
  • Es sei ebenfalls bemerkt, dass die Maus (oder eine ähnliche Steuervorrichtung) sich frei von jedem Punkt auf dem Schirm bewegen kann; in der beschriebenen Applikation, ist sie aber nicht frei, an jeder beliebigen Stelle anzuhalten, da die Stellen, die durch Puzzlestücke besetzt werden sollen, diskrete Stellen sind, die der Anzahl Stücke entsprechen, aber nur an einer der X.Y oder M.N Stellen, die deutlich (von dem Benutzer) bezeichnet sind, durch die Zone, wo das Stück nach dem Ereignis "MOUSE MOVE" anlangte.
  • Es soll außerdem bemerkt werden, dass das Puzzle meistens innerhalb des Hauptfensters (Teil P1 aus 7) rekonstruiert wird, es kann aber entschlossen werden, einen Zusammenstellungsvorgang von wenigstens einigen Stücken auch in dem Arbeitsraum P2, der P1 umgibt, durchzuführen, und dazu in dem genannten Teil P2 die erforderlichen Tests zu implementieren um zu überprüfen, dass es zwischen diesen Stücken keinen Widerspruch gibt.
  • Wie bereits in Bezug auf die 14 bis 17 angegeben, gibt es verschiedene mögliche Endszenarien. Nach einem ersten Szenario war der Benutzer nicht imstande, das Puzzlespiel vor dem Ende des Films zu beenden: der Benutzer hat verloren. Wenn der Benutzer imstande war, des Puzzlespiel komplett zu machen, aber die erforderliche Zeit dazu war länger als die vorbestimmte Endzeit (oder länger als die Zeit, erforderlich für eine Anzahl Benutzer, die das Puzzlespiel vor dem betreffenden Benutzer gespielt haben), hat der Benutzer das Puzzlespiel gewonnen; aber er hat keinen hohen Spielstand erreicht. Wenn der Benutzer imstande war, das Puzzlespiel schneller als wenigstens einer der genannten Benutzer, die vor ihm das Puzzlespiel komplettierten, zu komplettieren, hat er das Puzzlespiel gewonnen. Er kann dann seinen Namen (und möglicherweise andere Information) in die Gewinnerliste eintragen. Zum Schluss kann entschieden werden, die Zeit zum Komplettieren des Puzzlespiels nicht zu begrenzen, wobei man das Spiel nur dann verloren hat, wenn man aufgibt.
  • Text in der Zeichnung
  • 8
    • Tue nichts
    • Falsch
    • Hat das Puzzle geendet oder hat der Benutzer das Spiel neu gestartet ?
    • Wahr
    • Zerstöre das vorhergehende Puzzle
    • Puzzle-Erzeugung
    • Abschließen
    • Aufzeichnung der Video-Objektetikette
    • Zeige den Puzzle-Arbeitsraum
  • 9
    • Zeige Spielstand
    • Warten bis der Benutzer auf OK geklickt hat
    • Verstecke den Spielstand
  • Zurück zu den vorhergehenden Fenstern
  • 10
    • Verstecke den Puzzle-Arbeitsraum
    • Falsch
    • Spielen ?
    • Wahr
    • Aktualisierung der Zeitvariablen
    • wahr
    • Erzeugung eines "LOST Ereignisses
    • Verloren ?
    • Falsch
    • Erzeugung eines "SOLVED" Ereignisses
    • Gelöst ?
    • Wahr
    • Falsch
    • Rückstellung der Zeit auf Null
    • Wahr
    • Wird das Spiel gestartet und das Puzzle durcheinander gemischt ?
    • Falsch
  • 11
    • Zustand auf "NOT PLAYING" setzen
    • Wiedergabe einer Nachricht:
    • Sie haben das Puzzle nicht rechtzeitig komplett gemacht, Sie haben verloren....
    • Warten bis der Benutzer auf OK klickt.
  • 12
    • Zustand auf "NOT PLAYING" setzen
    • 1: Wiedergabe einer Nachricht: "Schade, nicht schnell genug um den höchsten Spielstand
    • zu erreichen"
    • Falsch
    • Gibt es einen neuen höchsten Spielstand ?
    • Wahr
    • 2: Um den Namen bitten (usw.....)
    • + Spielstand speichern
  • 13
    • Linke Taste gedrückt ?
    • Wahr
    • 1: Nimm ID des selektierten Stücks
    • Falsch
    • 2: Aktualisierung der neuen Koordinaten des Stücks
    • Rechte Taste gedrückt ?
    • Tue nichts
    • Wahr
    • 1: nimm ID des selektierten Stücks
    • 3: Aktualisierung der Koordinaten aller angehängten Stücke
  • 14
    • 1: Nimm ID des selektierten Stücks
    • 2: Bring die Stücke in den Vordergrund
    • 3: Entleere das Stück
    • 4: Aufzeichnung des aktuellen Stücks
  • 15
    • 1: Nimm ID des selektierten Stücks
    • 2: finde alle zusammenhängenden Stücke
    • 3: Aufzeichnung der Plätze zusammenhängender Stücke
    • 4: Bringe Stücke in den Vordergrund
    • 5: Entleere die Plätze der Stücke
  • 16
    • 1: Nimm ID des selektierten Stücks
    • Falsch
    • 2: Neuer Platz frei ?
    • Wahr
    • 3: bringe das Stück zurück
    • Falsch
    • 4: Neuer Platz möglich ?
    • Wahr
    • 5: lege auf den neuen Platz
  • 17
    • 1: nimm ID des Stücks 1
    • Falsch
    • 2: Neuer Platz frei ?
    • Falsch
    • 3: bring zurück
    • 4: Neuer Platz möglich ?
    • Wahr
    • Wahr
    • Wenn i < Anzahl Stücke
    • 5: Lege Gruppe auf den neuen Platz
    • Wahr
    • Wenn Verlagerung OK ist
    • Falsch
    • 6: bring Stücke zurück.

Claims (5)

  1. Videocodierer, vorgesehen zum Verarbeiten einer Sequenz animierter Bilder – wie eines Films – , wobei der genannte Codierer Folgendes umfasst: – Mittel zum Aufteilen eines von der genannten Sequenz belegten Schirmfensters in X Reihen und Y Spalten: – Mittel zum separaten Codieren jedes der X.Y Teile jedes Bildes der auf diese Weise erhaltenen Sequenz; – Mittel zum Assoziieren eines bestimmten Etiketts mit jedem der Teile, wobei dieses Etikett die Position in dem Fenster angibt, und zum Übertragen oder Speichern der codierten Teile in einer beliebigen Reihenfolge.
  2. Videodecoder, vorgesehen zum Decodieren von Eingangssignalen, die vorher mit Hilfe eines Videocodierers nach Anspruch 1 codiert wurden, wobei der genannte Decoder Folgendes umfasst: – Mittel zum Decodieren der genannten codierten Teile und der genannten codierten assoziierten Etikete; – Mittel zum Wiedergeben der auf diese Weise erhaltenen decodierten Teile in beliebiger Reihenfolge, während die decodierten assoziierten Etikette gespeichert werden.
  3. Decoder nach Anspruch 2, mit Nachverarbeitungsmitteln zum Verlagern und Neuordnen der wiedergegebenen Teile in die ursprüngliche einwandfreie Reihenfolge.
  4. Decoder nach Anspruch 3, wobei die genannten Nachverarbeitungsmittel Sätze von computerlesbaren Instruktionen aufweisen, die das Spielen eines Puzzlespiels ermöglichen und der Implementierung der nachfolgenden Ereignisse entsprechen: – das Verlagern eines einzelnen wiedergegebenen decodierten Teils des genannten Puzzles von jeder beliebigen Stelle zu einer anderen Stelle oder zu einer der X.Y Stellen, die in einem Schirmfenster entsprechend der neu geordneten Sequenz von Bildern verfügbar sind; – das Verlagern eines wiedergegebenen decodierten Teils und aller anhängenden wiederge gebenen decodierten Teile von jeder beliebigen Stelle in jede andere beliebige Stelle oder in eine der X.Y Stellen, die in dem genannten Fenster verfügbar sind.
  5. Decoder nach Anspruch 4, wobei die genannten Verlagerungen mit Hilfeeiner Maus oder einer ähnlichen Steueranordnung gesteuert werden mit der nachfolgenden Sequenz von Ereignissen "LINKE TASTE DRÜCKEN" , "MAUS VERLAGERN", "LINKE TASTE LOSLASSEN" zur Verlagerung eines einzelnen Teils und mit der nachfolgenden Sequenz von Ereignissen "RECHTE TASTE DRÜCKEN",MAUS VERLAGERN", "RECHTE TASTE LOSLASSEN" zur Verlagerung jedes beliebigen spezifischen Teils und aller anhängende Teile.
DE60028486T 1999-04-16 2000-04-11 Videocoder und -decoder Expired - Lifetime DE60028486T2 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
EP99400938 1999-04-16
EP99400938 1999-04-16
EP00400273 2000-02-01
EP00400273 2000-02-01
PCT/EP2000/003206 WO2000064183A1 (en) 1999-04-16 2000-04-11 Video encoder and decoder

Publications (2)

Publication Number Publication Date
DE60028486D1 DE60028486D1 (de) 2006-07-20
DE60028486T2 true DE60028486T2 (de) 2006-12-28

Family

ID=26073407

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60028486T Expired - Lifetime DE60028486T2 (de) 1999-04-16 2000-04-11 Videocoder und -decoder

Country Status (6)

Country Link
US (1) US6452515B1 (de)
EP (1) EP1088453B1 (de)
JP (1) JP2002542738A (de)
KR (1) KR100720843B1 (de)
DE (1) DE60028486T2 (de)
WO (1) WO2000064183A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102008038420A1 (de) * 2008-08-19 2010-02-25 Nechiporenko, Igor V. Vorrichtung zur Bildung der elektronischen Darstellung für die Durchführung eines elektronischen Spiels

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10028139A1 (de) * 2000-06-07 2001-12-20 Siemens Ag Verfahren und Anordnung zur Verwürfelung von Bilddaten
AUPR270801A0 (en) * 2001-01-25 2001-02-22 Fillingham, Raymond Duncan Electronic game
KR20020088590A (ko) * 2001-05-18 2002-11-29 (주) 새롬기술 동영상 퍼즐 서버 시스템, 그 서비스 방법 및 기록매체
AU2003201473A1 (en) 2002-02-07 2003-09-02 Koninklijke Philips Electronics N.V. Method for distributing a video split up in spatial pieces
US20030200336A1 (en) * 2002-02-15 2003-10-23 Suparna Pal Apparatus and method for the delivery of multiple sources of media content
US20050075166A1 (en) * 2002-05-14 2005-04-07 Hemstreet Paul A. Media program with interactive feature
US20050184461A1 (en) * 2004-02-19 2005-08-25 Thomas Cogliano Electronic drawing game
US20070243919A1 (en) * 2006-04-12 2007-10-18 Paul Thelen Computer implemented puzzle
US20070294742A1 (en) * 2006-06-20 2007-12-20 Scientific-Atlanta, Inc. Video Scrambling
GB2463123A (en) * 2008-09-09 2010-03-10 Skype Ltd Video communications system with game playing feature
US8696436B2 (en) * 2009-11-16 2014-04-15 Patent Investment & Licensing Company Method for displaying gaming result
US8900043B1 (en) * 2011-05-26 2014-12-02 Amazon Technologies, Inc. Structured jigsaw puzzles
US8771048B2 (en) 2011-06-24 2014-07-08 Wpc, Llc Computer-implemented video puzzles
US9919224B2 (en) * 2014-07-03 2018-03-20 Gabriel S. Mott Color sorting puzzle game

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5220410A (en) * 1991-10-02 1993-06-15 Tandy Corporation Method and apparaus for decoding encoded video data
JP3161017B2 (ja) * 1992-04-16 2001-04-25 ソニー株式会社 動画像復号化装置
GB2274038B (en) * 1992-12-22 1996-10-02 Sony Broadcast & Communication Data compression
US5521369A (en) * 1994-07-25 1996-05-28 Khyber Technologies Corporation Card shaped computer peripheral device
US5727141A (en) * 1995-05-05 1998-03-10 Apple Computer, Inc. Method and apparatus for identifying user-selectable regions within multiple display frames
GB9510093D0 (en) * 1995-05-18 1995-07-12 Philips Electronics Uk Ltd Interactive image manipulation
US5721543A (en) * 1995-06-30 1998-02-24 Iterated Systems, Inc. System and method for modeling discrete data sequences
US6023301A (en) * 1995-07-14 2000-02-08 Sharp Kabushiki Kaisha Video coding device and video decoding device
US5643084A (en) * 1995-09-08 1997-07-01 Basic Software Limited Partnership 95, A Limited Partnership Moving video jigsaw puzzle
US5679075A (en) * 1995-11-06 1997-10-21 Beanstalk Entertainment Enterprises Interactive multi-media game system and method
US5828369A (en) * 1995-12-15 1998-10-27 Comprehend Technology Inc. Method and system for displaying an animation sequence for in a frameless animation window on a computer display
ID21557A (id) * 1996-11-28 1999-06-24 Thomson Multimedia Sa Proses untuk pengkodean dengan daerah informasi
US6064771A (en) * 1997-06-23 2000-05-16 Real-Time Geometry Corp. System and method for asynchronous, adaptive moving picture compression, and decompression
US5867208A (en) * 1997-10-28 1999-02-02 Sun Microsystems, Inc. Encoding system and method for scrolling encoded MPEG stills in an interactive television application

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102008038420A1 (de) * 2008-08-19 2010-02-25 Nechiporenko, Igor V. Vorrichtung zur Bildung der elektronischen Darstellung für die Durchführung eines elektronischen Spiels

Also Published As

Publication number Publication date
EP1088453A1 (de) 2001-04-04
KR20010052884A (ko) 2001-06-25
US6452515B1 (en) 2002-09-17
EP1088453B1 (de) 2006-06-07
WO2000064183A1 (en) 2000-10-26
JP2002542738A (ja) 2002-12-10
KR100720843B1 (ko) 2007-05-25
DE60028486D1 (de) 2006-07-20

Similar Documents

Publication Publication Date Title
DE60028486T2 (de) Videocoder und -decoder
DE69830012T2 (de) Programmerzeugung
DE69820093T2 (de) Hierarchisches verfahren und system für objektbasierte audiovisuelle deskriptiveetikettierung von bildern für die informationswiedergewinnung, -editierung und -manipulation
DE69731549T2 (de) Interaktivität mit audiovisueller programmierung
DE69630579T2 (de) Personalisierung einer interaktiven unterhaltung
DE69731695T2 (de) Verfahren um die Präsentation von statischen und dynamischen Komponenten eines interaktiven Multimediadokuments zu synchronisieren
DE69936264T2 (de) Verfahren und vorrichtung zur verwaltung einer multimediadatei
DE60022610T2 (de) Verfahren zur Animationskodierung in einer Bilddatei
DE60123851T2 (de) Fernsehplauderzimmer
DE60133374T2 (de) Verfahren und vorrichtung zum empfangen von hyperlink-fernsehprogrammen
DE69836893T2 (de) Bewegtbildkompositionssystem
DE60013624T2 (de) Trickwiedergabesignalerzeugung für einen digitalen videorekorder
DE60003455T2 (de) Abspielen von interaktiven programmen
DE3102455A1 (de) Zusammenwirkendes videoerzeugungsverfahren und -system
DE3914541A1 (de) Vorbereitungssystem
DE2732438A1 (de) Verfahren zur erzeugung mehrerer sich bewegender gegenstaende auf einem fernsehschirm
DE2839059A1 (de) Anordnung zur fernsehmaessigen darstellung und aufzeichnung von bewegungsbahnen
DE3043253A1 (de) Anordnung fuer interaktive bildwiedergabe
DE19833053A1 (de) Verfahren zum Übertragen eines Video-Datenstroms, Videosende- und Empfangssysteme
DE69816356T2 (de) Vorrichtung und Verfahren zum Betreiben eines Videospiels mit Einspielen eines Videobildes eines Spielers
DE60005482T2 (de) Verfahren und system zur auswahl von produkten in einer video produktion unter verwendung von referenzbildern
DE69736638T2 (de) Farbstanzen-Studiosystem
DE60004828T2 (de) Empfänger/dekodierer für digitale tv-signale mit interaktiver programmeinlesung
DE60027966T2 (de) Mehrfachkamera, Mehrfachspeisung und interaktive virtuelle Einblendungssysteme und Verfahren
WO2018069218A1 (de) Fernsehübertragungssystem zur erzeugung angereicherter bilder

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: IPG ELECTRONICS 503 LTD., ST. PETER PORT, GUER, GB

8328 Change in the person/name/address of the agent

Representative=s name: PATENTANWAELTE BRESSEL UND PARTNER, 12489 BERLIN

R081 Change of applicant/patentee

Ref document number: 1088453

Country of ref document: EP

Owner name: PENDRAGON WIRELESS LLC (A NEVADA MANAGED LIMIT, US

Free format text: FORMER OWNER: IPG ELECTRONICS 503 LTD., ST. PETER PORT, GB

Effective date: 20121213

R082 Change of representative

Ref document number: 1088453

Country of ref document: EP

Representative=s name: PATENTANWAELTE BRESSEL UND PARTNER, DE

Effective date: 20121213