!HU000005161T2! (19)
HU
(11) Lajstromszám:
E 005 161
(13)
T2
MAGYAR KÖZTÁRSASÁG Magyar Szabadalmi Hivatal
EURÓPAI SZABADALOM SZÖVEGÉNEK FORDÍTÁSA H04N 5/76
(21) Magyar ügyszám: E 04 256160 (22) A bejelentés napja: 2004. 10. 05. (96) Az európai bejelentés bejelentési száma: EP 20040256160 (97) Az európai bejelentés közzétételi adatai: EP 1523179 A1 2005. 04. 13. (97) Az európai szabadalom megadásának meghirdetési adatai: EP 1523179 B1 2008. 11. 26.
(51) Int. Cl.:
(30) Elsõbbségi adatok: 508315 P 2003070751 2004026643 2004075488
(73) Jogosult: SAMSUNG ELECTRONICS CO., LTD., Yeongtong-gu, Suwon-si, Gyeonggi-do (KR)
2003. 10. 06. 2003. 10. 10. 2004. 04. 19. 2004. 09. 21.
US KR KR KR
(72) Feltalálók: Jung, Kil-Soo 104-1401 Namsuwon Doosan Apt., Hwaseong-gun Gyeonggi-do (KR); Park, Sung-Wook, Mapo-gu Seoul (KR); Ko, Jung-Wan, Yeongtong-gu, Suwon-si Gyeonggi-do (KR) (54)
H04N 5/44 H04N 5/92
(2006.01) (2006.01) (2006.01)
(74) Képviselõ: Sári Tamás Gusztáv, DANUBIA Szabadalmi és Jogi Iroda Kft., Budapest
Eljárás és berendezés eseményfellépési információ reprodukálására
HU 005 161 T2
(57) Kivonat Eseményinformációt tároló információtároló médium esemény generálására hivatkozással audio¹/videoadat (111) struktúrára, valamint berendezés és ahhoz kapcsolódó eljárás. Az információtároló médium magában foglal: mag adatot (110), amely magában foglal audio¹/videoadatot (111) és navigációs adatot (112) az audio¹/videoadat (111) reprodukálásához; és programadatot (121), amely felhasználóval való interakcióhoz van alkalmazva, amelynél a programadat (121) magában foglal eseményfellépési információt eseménynek reprodukáló berendezésben való generálása céljából hivatkozással klipinformáció fájlra, amely magában foglal az audio¹/videoadatot felépítõ audio-videokliphez jellemzõ információt. 4. ábra A leírás terjedelme 14 oldal (ezen belül 6 lap ábra) Az európai szabadalom ellen, megadásának az Európai Szabadalmi Közlönyben való meghirdetésétõl számított kilenc hónapon belül, felszólalást lehet benyújtani az Európai Szabadalmi Hivatalnál. (Európai Szabadalmi Egyezmény 99. cikk (1)) A fordítást a szabadalmas az 1995. évi XXXIII. törvény 84/H. §-a szerint nyújtotta be. A fordítás tartalmi helyességét a Magyar Szabadalmi Hivatal nem vizsgálta.
1
HU 005 161 T2
A találmány eseményfellépési információt magában foglaló információtároló médiumra, valamint annak reprodukálására (lejátszására) szolgáló berendezésre és eljárásra vonatkozik, és pontosabban információtároló médiumra vonatkozik, amely eseményinformációt tárol esemény generálása céljából hivatkozással AV adatstruktúrára, valamint annak reprodukálására (lejátszására) szolgáló berendezésre és eljárásra vonatkozik. A mozgóképadatot nagy hûségû (high definition) mozifilmhez való audio-video (AV) adatra és az AV adat reprodukálását vezérlõ navigációs adatra osztják. A fent említett mozgóképadat vonatkozásában a felhasználóval való interakciót megerõsítõ programozási és böngészési funkciókkal bíró alkalmazások iránti igény növekedõben van. Mindazonáltal annak érdekében, hogy biztosíthassák ezeket a funkciókat, programadatot (121) alkalmazó alkalmazást kell az AV adattal szinkronizálva végrehajtani. A találmánynál az ilyen alkalmazási adatra kiegészítõ adatként hivatkozunk annak érdekében, hogy megkülönböztessük azokat az AV adattól. Annak érdekében, hogy a kiegészítõ adatot szinkronizálják az AV adattal, eseménynek elõre meghatározott idõintervallumban vagy egy, az AV adatba befoglalt speciális jelölésnek megfelelõen feltétel nélkül való generálására szolgáló eljárást vagy eseményfellépési információnak az AV adatba foglalt egy bizonyos jelenetbe való beillesztésére szolgáló eljárást javasoltak. Mindazonáltal ezen eljárások mindegyikével kapcsolatban problémák merültek fel. Például eseményeket generálnak szükségtelenül még akkor is, amikor nincs szinkronizálandó és az AV adattal reprodukálandó kiegészítõ adat, és ezen túlmenõen nehéz az elõre meghatározott eseményfellépési helyeket megváltoztatni, mivel az AV adat ismételten kódolásra kerül, amikor csak az eseménygenerálási helyek megváltoznak. Az US 2002/0166123 irat olyan AV folyam szórását tárja fel, amely párhuzamos IP információs folyamra vonatkozó tageket foglal magában. A WO 01/22729 irat olyan mûsorszóró folyamot tár fel, amelybe ID tagek vannak beillesztve. A jelen találmány szerint a csatolt igénypontokban megadott berendezést és eljárást alkottunk meg. A találmány elõnyös jellemzõi nyilvánvalóak lesznek az aligénypontok és az alább következõ leírás alapján. A találmány jobb megértése érdekében és azért, hogy bemutassuk, hogy annak megvalósítási módjai hogyan vehetõek használatba, példaképpen hivatkozással élünk a csatolt vázlatos rajzra, amelyen az 1. ábra a találmány egy aspektusának megfelelõ információtároló médiumon tárolandó adattípusokat mutat be; a 2. ábra az AV adatot felépítõ játszási lista, játszandó elem, klipinformáció és klip közötti összefüggéseket mutatja be; a 3. ábra a klipinformáció felépítését mutatja be; a 4. ábra a találmány egy kiviteli alakjának megfelelõ reprodukáló (lejátszó) berendezés tömbvázlata; az
5
10
15
20
25
30
35
40
45
50
55
60 2
2
5. ábra a találmány egy foganatosítási módjának megfelelõ reprodukálási (lejátszási) eljárást szemléltetõ folyamatábra; és a 6. ábra eseményt generáló és AV adatot reprodukáló folyamatot szemléltetõ folyamatábra. Most a jelen találmány megvalósításai módjaira fogunk részletesen hivatkozni, amelyekre vonatkozó példák a csatolt rajzon kerültek szemléltetésre, amelyen a hasonló hivatkozási számok mindvégig hasonló elemekre hivatkoznak. A megvalósítási módok abból a célból kerültek alább leírásra, hogy a rajzra való hivatkozás mellett érthetõvé tegyék a találmányt. Az 1. ábra egy, a találmány szerinti információtároló médiumon tárolandó adattípusokat mutat be. Hivatkozással az 1. ábrára a 110 mag adat (core data) 111 AV adatot és 112 navigációs adatot foglal magában. A 112 navigáció adat navigációs parancsok gyûjteménye az AV adat reprodukálásához. A mag adatra mint mag üzemmód adatra (core mode data) is hivatkozunk. A 110 mag adat olyan adat, amely videoalkalmazásnál, mint például DVD-nél van alkalmazva, és amelyre videó, mint például mozifilm bemutatásához szükség van. Az ilyen 110 mag adatot reprodukáló (lejátszó) üzemmódra mozi üzemmódként (movie mode) hivatkozunk. A felhasználóval való különféle interakciók megerõsítésére szolgáló adatot általánosan 120 teljességhez való adatként (Data for Full) ismerjük. A 120 teljességhez való adatra teljes üzemmódhoz való adatként (Data for Full mode) ugyancsak hivatkozunk. A teljes üzemmódhoz való adat magában foglal 121 programadatot a felhasználóval való különféle interakciók biztosítása céljából, valamint 122 böngészési adatot hálózati böngészés, mint például internetböngészés lehetõvé tétele céljából. A 121 programadat például java alkalmazás, amely különféle felhasználói interakciós funkciókat biztosít. A 122 böngészési adat magában foglal jelölõnyelven, mint például XML-ben írt jelölt (markup) dokumentumokat, jelölt (markup) dokumentumok magukban foglalnak vagy meghivatkoznak szkriptkódokat, mint például ECMA szkripteket, szkriptfájlokat, legalább egy, a jelölt (markup) dokumentumok által hivatkozott képet, valamint forrásfájlokat, mint például grafikus vagy hangfájlokat. A 110 mag adat alkalmazásprogramozási felületen (application program interface, API) keresztül képes a 120 teljességhez való adattal kommunikálni. A 121 programadat magában foglal eseményfellépési információt (event occurrence information) a 112 AV adat által megjelölt idõben és/vagy helynél esemény generálása céljából. 130 rendszeradat magában foglal legalább 131 indítási információt (startup information) és 132 cím információt (title information). A 130 rendszeradat akkor kerül kiolvasásra, amikor az információtároló médium bootol, vagy amikor azt behelyezzük. A rendszeradat – amelyet akkor olvasunk ki, amikor a tároló médium bootol, vagy amikor azt beillesztjük – nem tartozik semmilyen speciális üzemmódhoz. Az információtároló médiumon rögzített AV adat többféle üzemmódban lehet reprodukálva, ezek közé
1
HU 005 161 T2
tartozik: mag üzemmód, amely az adatot mozifilm üzemmódban reprodukálja a navigációs adatot alkalmazva kód üzemmódhoz való adatként, ahogy fent leírtuk, és teljes üzemmód, amely lehetõvé teszi, hogy AV adat legyen kijelezve egy valamely programnyelv által kialakított alkalmazásban definiált kijelzõ ablakon keresztül teljes üzemmódhoz való adatként. Amikor a teljes üzemmód kerül kiválasztásra a felhasználó vagy navigációs folyam által, valamely programozási nyelven készített alkalmazásba (például programozási nyelvként valamely Java nyelvet alkalmazó Java alkalmazásba) programozott funkció révén mozgóképadat kijelzésére szolgáló kijelzõ ablak kerül kialakításra, AV adat kerül vezérlésre és kijelzésre az API¹n keresztül, és ezzel egyidejûleg JAVA alapú tartalmak vagy különféle, a JAVA alkalmazásban hivatkozott források (például kép, hang stb.) kerülnek kijelzésre az AV adat reprodukálásával szinkronban. Mindazonáltal ahhoz, hogy a JAVA alkalmazásban definiált kijelzõ ablakon keresztül AV adat legyen kijelezve a fent leírt teljes üzemmódban, az AV adat és a JAVA alkalmazás szinkronizálására van szükség. A 2. ábra az AV adatot felépítõ játszási lista (PlayList), játszandó elem (PlayItem), klipinformáció (Clip Information) és klip (clip) közötti kölcsönös viszonyt mutatja be. Hivatkozással a 2. ábrára, a JAVA alkalmazás API¹n, mint például „BDPlayPL” (Playlist Number) – játszási lista száma – keresztül vezérli az AV adatot a teljes üzemmódhoz való adatként. A játszási lista a reprodukálás, lejátszás alapegysége, és az információtároló médium több játszási listát tárol. A játszási lista több olyan játszandó elemet foglal magában, amelyek egymáshoz csatlakoznak. A játszandó elem kijelöli valamely klip egyik részét, a játszandó elemet különösen arra használjuk, hogy megjelölje a klip reprodukálási kezdõidejét és reprodukálási végidejét. Ennek megfelelõen a hozzá tartozó rész valamely klipben klipinformáció alkalmazásával kerül megkeresésre. Az AV folyam alapegységként klip alkalmazásával van rögzítve. A klipek jellemzõen rendre egy folyamatos területen vannak rögzítve, és tömörítve vannak a terjedelmük csökkentése végett. A rögzített klipek reprodukálása, lejátszása érdekében szükség van a tömörített megjelenítési adat (presentation data) jellemzõ információjának detektálására. Klipinformáció van rögzítve minden egyes kliphez. A klipinformáció magában foglalja az egyes klipek audio- és videotulajdonságait, valamint azon belépési pontok (Entry Point) helyzetinformációját tároló belépésipont-térképet (Entry Point Map), amelyek lehetõvé teszik a véletlen elérést elõre meghatározott intervallumonként stb. MPEG esetén – amely egy általános mozgókép-tömörítési technológia – a belépési pont egy I kép vagy képcsoport (Group of Picture, GOP) fejléc, amely véletlen hozzáférési pontként van alkalmazva. A belépésipont-térképet alkalmazzuk idõkeresésnél olyan eltelt idõpont detektálásához, amely egy elõre meghatározott idõvel a reprodukálás kezdete után van. A találmánynál az I kép helyét a GOP-ben változóként alkalmazzuk esemény generálására. Például ese-
5
10
15
20
25
30
35
40
45
50
55
60 3
2
mény kerül generálására a klipinformációba foglalt belépésipont-térképben rögzített PTS érték alkalmazásával. Kiegészítõ adat, amit akkor kell reprodukálni, amikor az esemény generálásra kerül, magában foglal olyan információt, amely azt jelzi, hogy esemény van generálva egy elõre meghatározott PTS értéknél. Ennek megfelelõen miközben egy AV folyam reprodukálásra kerül, egy esemény generálására vonatkozó kiegészítõ adatról való informálás révén, amikor a kiegészítõ adat révén eseményfellépési idõként megjelölt PTS értéknek megfelelõ forráscsomag generálásra kerül, a kiegészítõ adat az eseménynek megfelelõ mûveletet hajt végre. A 3. ábra a klipinformáció felépítését mutatja be. Hivatkozással a 3. ábrára a 300 klipinformáció legalább 310 CPI¹t (Characteristic Point Information: jellemzõpont-információ) és 320 ClipMark()¹ot foglal magában. A 310 CPI Entry Point Map (EP_map) információt foglal magában. Az EP_map olyan táblázat, amely kiegészítõ információt foglal magában egy hozzá tartozó klip belépési pontjához. Az MPEG videokódolási szabványnál a belépési pont I képként kódolt kép kezdõpontját jelöli. Az EP_map információ egy PTS érték és az AV folyam fájlban lévõ címe között teremt kapcsolatot. Amikor a PTS érték belépési pontja mint „PTS_EP_start” kerül jelölésre, és a belépési pont címe mint „SPN_EP_start” kerül jelölésre, a PTS-nek megfelelõ forráscsomag számot (Source Packet Number, SPN) magában foglaló információ van az EP_map¹be foglalva. Eközben a 320 ClipMark() olyan információként van alkalmazva, amely jelölésnek (Mark) az AV folyam fájlban lévõ bizonyos helyre való beágyazására szolgál. Ennek megfelelõen a CPI() vagy a ClipMark() triggereseményt generáló paraméterekként vannak alkalmazva, ahogy azt késõbb leírjuk. A triggeresemény olyan esemény, amely eseményt generál mozgókép reprodukálása közben egy meghatározott idõpontban, és amely kiegészítõ adatot reprodukál a mozgóképpel szinkronban, vagy egy bizonyos változót generál ahhoz, hogy egy elõre meghatározott mûvelet kerüljön végrehajtásra a generált eseménynek megfelelõen. Azaz amikor a triggeresemény generálásra kerül, a triggeresemény a reprodukált mozgóképre vonatkozó kiegészítõ adatot reprodukál úgy, hogy a kiegészítõ adat bemutatásra kerül felhasználó számára vagy megváltoztatja a mozgókép reprodukálási állapotát stb. Ahogy fent leírtuk, az EP_map a felhasználó által véletlenszerûen elérhetõ reprodukálható helyekhez információt leíró táblázatot foglal magában a PTS-nek megfelelõ forráscsomag számként (SPN). A PTS értéket alkalmazzuk változóként esemény generálásához. Pontosabban az MPEG-ben definiált GOP-ben lévõ I kép helyét alkalmazzuk változóként esemény generálásához. Azaz az I kép helyét alkalmazzuk eseményfellépési helyként úgy, hogy az esemény minden egyes GOP egységhez generálható. Általában véve, mivel az AV folyamok reprodukálására szolgáló reprodukáló (le-
1
HU 005 161 T2
játszó) berendezések minden egyes GOP egységhez dekódolást és reprodukálást hajtanak végre, nem elõnyös kisebb idõegységet alkalmazni az esemény generálásához. Mindemellett a JAVA alkalmazásnál alkalmazott API és a szükséges paraméterek részletesebben leírásra kerülnek. 1. BDVideo.SetTrigger(trigger_id, clip_Information_file_name, PTS_EP_start, ref) 1) jelentés: triggeresemény generálása, amikor megjelölt klipinformációban lévõ PTS értéknél van klip reprodukálva 2) paraméterek: trigger_id: triggeresemény azonosító Clip_lnformation_file_name: klipinformáció neve olyan kliphez, amelyben triggeresemény lesz generálva PTS_EP_start: PTS érték belépési pontja klipinformációban olyan kliphez, amelyben triggeresemény lesz generálva ref: eseményváltozóba befoglalandó érték, amikor esemény felhívásra kerül 2. BDVideo.SetTrigger(trigger_id, Clip_AV_stream_file_name, SPN_EP_start, ref) 1) jelentés: triggeresemény generálása, amikor megjelölt klip AV folyam forráscsomag száma reprodukálásra kerül 2) paraméterek: trigger_id: triggeresemény azonosító Clip_AV_stream_file_name: olyan AV folyam neve, amelyben triggeresemény lesz generálva SPN_EP_start: olyan klip AV folyamban lévõ forráscsomag kezdõpontja, amelyben triggeresemény lesz generálva ref: eseményváltozóba befoglalandó érték, amikor esemény felhívásra kerül 3. BDVideo.SetTrigger(trigger_id, Clip_AV_stream_file_name, ClipMark(), ref) 1) jelentés: triggeresemény generálása, amikor megjelölt klipinformációban lévõ ClipMark reprodukálásra kerül 2) paraméterek: trigger_id: triggeresemény azonosító Clip_lnformation_file_name: klipinformáció neve olyan kliphez, amelyben triggeresemény lesz generálva ClipMark(): olyan kliphez tartozó klipinformációban lévõ ClipMark (klip jelölés), amelyben triggeresemény lesz generálva ref: eseményváltozóba befoglalandó érték, amikor esemény felhívásra kerül BDVideo.ClearTrigger(trigger_id) 1) jelentés: kért triggeresemény elengedése 2) paraméterek: trigger_id: triggeresemény azonosító (például amennyiben trigger_id-ként „¹1” van megjelölve, úgy ez használható olyan parancs jelentésben, hogy az összes generált triggereseményt el kell engedni).
5
10
15
20
25
30
35
40
45
50
55
60 4
2
A 4. ábra a találmány egy aspektusának megfelelõ reprodukáló (lejátszó) berendezés tömbvázlata. A reprodukáló berendezés információtároló médiumon rögzített AV adatot jelez ki egy bizonyos üzemmódhoz tartozó adat alkalmazásával egy kijelzési eljárásnak megfelelõen. Hivatkozással a 4. ábrára, a reprodukáló berendezés 420 kiolvasót, 430 puffert, 430 programmotort, 450 mag navigációs motort, 460 megjelenítési (prezentációs) motort, 470 alkalmazás motort és 480 keverõt tartalmaz. A 420 kiolvasó kiolvassa az AV adatot, programadatot, mag navigációs adatot és rendszeradatot a 410 információtároló médiumból, és átviszi a kiolvasott adatot rendre a megfelelõ 431, 432, 433 és 434 pufferekbe. A megfelelõ pufferek (431 puffer a programadathoz, 432 puffer a mag navigációs adathoz, 433 puffer az AV adathoz és 434 puffer a rendszeradathoz és menedzsmentinformációhoz) rendre pufferelik a fogadott adatot. A pufferelt adatok átvitelre kerülnek rendre a megfelelõ motoroknak reprodukálás (lejátszás) céljából, és reprodukálásra kerülnek a megfelelõ motorok révén. A megfelelõ motorok között van például programmotor, mag navigációs motor, megjelenítési (prezentációs) motor és alkalmazásmenedzser. Ekkor a rendszeradatátvitelre kerül a 470 alkalmazásmenedzsernek. A 470 alkalmazásmenedzser meghatároz egy üzemmódot, és elõször reprodukálandó adatot a rendszeradatban lévõ indítási (start¹up) adat belépési pontján alapulóan. Miközben a megfelelõ AV adat reprodukálásra kerül, üzemmódok közötti átmenet vagy címkeresés következtében generált megfelelõ objektumok belépési pontjai átvitelre kerülnek a hozzájuk tartozó reprodukáló motoroknak, amelyek képesek a hozzájuk tartozó objektumok reprodukálására hivatkozással a rendszeradatra, ezáltal reprodukálva a megfelelõ objektumokat. A 470 alkalmazásmenedzser ugyancsak magában foglalhat felhasználói bevitelt fogadó egységet és felhasználói bevitelt feldolgozó egységet annak érdekében, hogy átvigye a felhasználói bevitelt a hozzá tartozó üzemmódhoz tartozó motornak. A 460 megjelenítési motor mozgóképadatot és állókép folyamot és/vagy adatfájlokat dekódol és reprodukál. A 440 programmotor vezérli a 460 megjelenítési motort az API¹n keresztül, hasonlóan a 450 mag navigációs motorhoz. A 440 programmotor végrehajtja a JAVA alkalmazást, beleértve a fent leírt különféle eseményfellépési információkat, és átviszi az eseményfellépési információt a 460 megjelenítési motornak. A 460 megjelenítési motor eseményt generál az idõpontnál, amelyet reprodukál, egy idõpontnál vagy helynél, amely megfelel az eseményfellépési információnak (azaz egy bizonyos klipinformáció PTS értékének vagy ClipMark-jának vagy egy klip AV folyamban lévõ bizonyos helynek), miközben AV adatot reprodukál. Mint olyan, amennyiben esemény kerül generálásra egy bizonyos idõpontnál vagy helynél az eseményfellépési információnak megfelelõen, a 440 programmotor felismeri a generálás tényét, és hozzá tartozó mûveletet hajt végre a JAVA alkalmazás révén programozott
1
HU 005 161 T2
programfunkciónak megfelelõen. Az eseményfellépési információ 495 eseményfellépési táblázatban lehet rögzítve, és egy, a 495 eseményfellépési táblázat alkalmazásával esemény generálására szolgáló folyamat és 490 eseménymenedzser a késõbbiekben kerül leírásra. Az 5. ábra egy, a találmány szerinti reprodukálási eljárást szemléltetõ folyamatábra. Hivatkozva az 5. ábrára, amennyiben egy bizonyos JAVA alkalmazás kerül végrehajtásra felhasználói bemenet vagy navigációs parancs stb. révén, úgy a 440 programmotor a JAVA alkalmazásba foglalt eseményfellépési információt (például API-kat) értelmez, és hozzá tartozó paraméterértékeket visz át a 460 megjelenítési motornak S510 lépés során. Az API hozzá tartozó paramétere fent leírásra került. A 460 megjelenítési motor egy klip megjelölt idõpontját vagy helyét detektálja az átvitt paraméterértéknek megfelelõen 520 mûvelet során, és hozzá tartozó eseményt generál, amikor egy klip a detektált eseményfellépési idõpontban vagy helynél reprodukálásra kerül 530 mûvelet során. Amikor az esemény generálásra kerül, a 440 programmotor felismeri az esemény fellépését, meghívja a JAVA alkalmazásba programozott eseménykezelõ függvényt, és bizonyos mûveletet hajt végre szinkronban a hozzá tartozó klip reprodukálási idõpontjával. Ahogy fent leírtuk, a 460 megjelenítési motor eseményt generálhat eseményfellépési helynél, miközben a 460 megjelenítési motor AV adatot reprodukál azáltal, hogy eseményfellépési információ kerül beillesztésre az AV adatba. Az alábbiakban olyan eljárást írunk le, amely AV adathoz szinkronizált eseményinformációt tárol különálló helyen az AV adat megváltoztatása nélkül, és amely átviszi az eseményinformációt a 460 megjelenítési motornak. Olyan 495 eseményfellépési táblázat alkalmazásával kerül esemény generálásra, amelyben eseményfellépési információ van elhelyezve a táblázatban bináris
5
10
15
20
25
30
35
2
adat formájában annak érdekében, hogy az esemény az AV adat egy bizonyos reprodukálási helyénél legyen generálva különállóan programadattól, mint például JAVA alkalmazástól (amelyre információ „táblázásaként” hivatkozunk). Az ilyen eseménygeneráló táblázat 470 alkalmazásmenedzser vagy 490 eseménymenedzser révén kerül értelmezésre és menedzselésre. Az információ bináris adatként való táblázása olyan eljárásra utal, amelynek során az eseményfellépéshez szükséges információt azáltal tároljuk, hogy jelentést tulajdonítunk egy sor bináris adat minden egyes elõre meghatározott bitjének. Az eseményfellépési táblázat azonosítókat foglal magában az események azonosításához, az eseményfellépési idõinformációhoz, egy-egy esemény által végrehajtott JAVA alkalmazáshoz tartozó információhoz, paraméterinformációhoz, amelyet át kell vinni az esemény által végrehajtott JAVA alkalmazásnak és további információnak. Az eseményazonosító egy esemény azonosítására szolgáló információ, mint például eseményfellépési függvényben használt triggeresemény trigger_id azonosítója, és például Even_ID lehet, Az eseményfellépési idõ reprodukálási idõinformáció, mint például eltelt idõ értéke lehet vagy egy AV folyam egyedi információjának – mint például PTS, SPN, ClipMark – értéke. A JAVA alkalmazás információ a végrehajtandó JAVA alkalmazás azonosítására alkalmazott információ. A JAVA alkalmazás információ egy alkalmazás ID¹je vagy neve lehet. A paraméterinformáció olyan paraméterinformáció, amelyet át kell vinni egy, az esemény típusának megfelelõen végrehajtandó JAVA alkalmazásnak. A paraméterinformáció különféle értékekkel rendelkezhet az esemény típusának és az eseménynek megfelelõen mûködõ JAVA alkalmazás jellemzõinek megfelelõen. A kiegészítõ információ információnak, mint például metaadatnak kiegészítõ jellegû tárolására van alkalmazva, és elhagyható. Az 1. táblázat az eseményfellépési táblázatra vonatkozó egy példa.
1. táblázat Eseményazonosító
Eseményfellépési idõ
Alkalmazásinformáció
Kiegészítõ információ
Paraméterinformáció
Event_ID
PTS, SPN, ClipMark(), reprodukálási eltelt idõ
Alkalmazás 1
JAVA alkalmazás törölt képekhez
Paraméter 1=a Paraméter 2=b
…
…
…
…
…
A 6. ábra olyan folyamatot szemléltetõ folyamatábra, amely eseményfellépési táblázat, mint például az 1. táblázat alkalmazásával eseményt generál és AV adatot reprodukál. Amikor lemez kerül behelyezésre reprodukáló berendezésbe, a 470 alkalmazásmenedzser vagy a 490 eseménymenedzser kiolvassa az eseményfellépési táblázatban tárolt információt 610 mûvelet során. Ezután a 470 alkalmazásmenedzser vagy a 490 eseménymenedzser eseményt regisztrál a 440 programmotorban eseményazonosító és eseményfellépési idõinformáció alkalmazásával 620 mûvelet során. Ezek
után, miközben AV adat reprodukálásra kerül, a 50 440 programmotor eseményt generál egy, a regisztrált eseménynek megfelelõ idõpontban 630 mûvelet során. A 440 programmotor JAVA alkalmazást olvas ki egy elõre meghatározott mûvelet végrehajtása céljából, válaszul a hozzá tartozó eseményre, valamint paraméte55 reket, amelyeket át kell vinni a JAVA alkalmazásnak a 470 alkalmazásmenedzsertõl vagy 490 eseménymenedzsertõl, amelyek kiolvasták az eseményfellépési táblázatot a generált eseményazonosító alkalmazásával 640 mûvelet során. A paraméterek és a generált 60 esemény átvitelre kerül a JAVA alkalmazásnak 5
1
HU 005 161 T2
650 mûvelet során. Így a JAVA alkalmazás, amely fogadta az eseményt, végrehajtja a generált eseménynek megfelelõ elõre meghatározott mûveletet szinkronban az AV adattal 660 mûvelet során. Amikor új esemény kerül generálásra, miközben a JAVA alkalmazás mûködik, a JAVA alkalmazás fogadja az eseményfellépési táblázatban definiált új paraméterértékeket a generált esemény tartalmának megfelelõen, és másik mûveletet hajt végre szinkronban az AV adattal. Amikor a generált esemény révén jelölt JAVA alkalmazás nincs végrehajtás alatt, amikor az eseményfellépési táblázatban keresés zajlik az alkalmazásmenedzser vagy az eseménymenedzser segítségével annak érdekében, hogy végrehajtásra kerüljön a megfelelõ mûvelet az eseményfellépés szerint, a programmotor figyelmen kívül hagyhatja a generált eseményt, vagy végrehajthatja a hozzá tartozó JAVA alkalmazást, és ezután átadhatja a generált eseményt a JAVA alkalmazásnak. Eseményfellépés és az AV adat reprodukálásának az 5. ábrára való hivatkozás mellett fent leírt eljárása során egy bizonyos reprodukálási idõvel bíró esemény regisztrálásra került egy bizonyos JAVA alkalmazásban programozás révén, és az esemény generálásának idején végrehajtandó mûveletek ugyancsak programozásra kerülnek a hozzá tartozó JAVA alkalmazásban. Mindazonáltal az eseményfellépés és az AV adat reprodukálásának a 6. ábrára való hivatkozás mellett fent leírt eljárása során még az a paraméterinformáció is, amelyet át kell vinni, és/vagy ahhoz a JAVA alkalmazáshoz való információ, amelyet mûködtetni kell, amikor esemény kerül generálásra, táblázat formájában vannak leírva úgy, hogy az esemény ezen információk alkalmazásával kerül generálásra. Ahogy az 1. táblázatban bemutatásra került, az eseményfellépési táblázat magában foglalhat eseményazonosítókat, eseményfellépési idõinformációt, JAVA alkalmazásinformációt és kiegészítõ információt; mindazonáltal lehetõség van arra, hogy az eseményfellépési táblázat csak eseményazonosítókat és eseményfellépési idõinformációt foglaljon magában alapvetõ információként. Amikor az eseményfellépési táblázat csak az alapvetõ információt foglalja magában, nehéz, vagy lehetetlen megállapítani azt, hogy egy JAVA alkalmazás eseményt fogadott, és végrehajt egy annak megfelelõ mûveletet, amikor a programmotor generálja az eseményt. Ezért a JAVA alkalmazás, amelynek generált eseményt kell fogadnia, és végre kell hajtania egy elõre meghatározott mûveletet, „eseményfigyelõt” foglal magában a generált esemény eseményazonosítójának felismerése céljából. A JAVA alkalmazás elõnyösen ugyanabban az idõpontban készül, amikor az a tároló médium gyártásra kerül, amelyen az AV adat rögzítve van. Az eseményfigyelõ egyfajta függvény, és olyan JAVA alkalmazásban van definiálva, amely magában foglalja a hozzá tartozó függvényt. A JAVA alkalmazásba foglalt információ sokféle lehet; mindazonáltal a JAVA alkalmazás magában foglalhat bizonyos mûveleteket végzõ függvényeket, amelyeket végre kell hajta-
5
10
15
20
25
30
35
40
45
50
55
60 6
2
ni, amikor esemény kerül generálásra az egyes eseményazonosítókhoz. Ilyen eseményfigyelõ olyan JAVA alkalmazásban van definiálva, amelyet végre kell hajtani, amikor egy bizonyos eseményazonosítóval bíró esemény generálásra kerül. Ennek megfelelõen, amikor a programmotor eseményt generál egy bizonyos eseményazonosítóval, miközben a megjelenítési (prezentációs) motor reprodukálási mûveletet hajt végre, az összes olyan JAVA alkalmazás, amely eseményfigyelõt foglal magában a programmotorban, és amely éppen reprodukálás alatt van, fogadja az éppen generált esemény eseményazonosítóját paraméterként az eseményfigyelõkön keresztül. Amikor az egyes JAVA alkalmazások oly módon vannak programozva, hogy végrehajtsanak egy bizonyos mûveletet, miközben egy hozzájuk tartozó eseményazonosító generálásra került a saját eseményfigyelõjükben, a JAVA alkalmazás végrehajtja a bizonyos mûveletet, miközben fogadja az eseményazonosítót. Máskülönben a JAVA alkalmazás egy különálló programszekvenciának megfelelõen mûködik, vagy figyelmen kívül hagyja a fogadott eseményazonosítót. A találmány ugyancsak megvalósítható olyan számítógéppel olvasható médiumon tárolt programként, amely általános számítógépen, mint például személyi számítógépen futtatható. Itt a számítógéppel olvasható médiumok közé értendõek a tároló médiumok, mint például a mágneses tároló médiumok (például ROM¹ok, floppy lemezek, merevlemezek stb.), optikailag olvasható médiumok (például CD¹ROM¹ok, DVD¹k stb.) és a hordozóhullámok (például interneten keresztüli átvitel), de nem korlátozódnak ezekre. A találmány ugyancsak megvalósítható számítógéppel olvasható médiumon tárolt számítógéppel olvasható programkód egységként, amely hálózaton keresztül csatlakoztatott bizonyos számú számítógépes rendszert arra késztet, hogy elosztott feldolgozást hajtsanak végre. Ahogy fent leírtuk, a találmány révén beállítható egy eseményfellépési idõ AV adatstruktúra alkalmazásával, és egy bizonyos esemény generálható a beállított idõpontban. Ennek megfelelõen lehetõség van alkalmazásból származó kép outputként való létrehozására AV képpel szinkronban. Mûveletek hajthatóak végre eseményfellépésnek megfelelõen anélkül, hogy AV adatstruktúrát meg kellene változtatni azáltal, hogy eseményfellépési információ táblázatos formátumban van tárolva anélkül, hogy az eseményfellépési információ az AV adatba lenne belefoglalva. Továbbmenve lehetõség van arra, hogy könnyedén hozzáadjunk vagy kijavítsunk triggereseményeket olyan különálló API definiálása révén, amely esemény regisztrálására képes egy forráscsomag helyének vagy a PTS értéknek az alkalmazásával, amely változóként az EP_map révén, eseményregisztráláshoz tartozó osztály stb. révén van definiálva, és amely a hozzá tartozó eseményregisztrálási információt kiegészítõ adatként, a mozgóképadattól különállóan foglalja magában. Habár néhány elõnyös megvalósítási módot mutattunk be és írtunk le, a szakember számára érthetõ lesz,
1
HU 005 161 T2
hogy különféle változtatások és módosítások tehetõek anélkül, hogy eltávolodnánk a csatolt igénypontok által meghatározott oltalmi körtõl. 5 SZABADALMI IGÉNYPONTOK 1. Reprodukáló vagy rögzítõ és reprodukáló berendezés, amely tartalmaz: kiolvasót (420), amely úgy mûködtethetõ, hogy audio¹/videoadatot (111) és eseményfellépési információt magában foglaló programadatot (121) olvasson ki, programmotort (440), amely úgy mûködtethetõ, hogy a programadatot (121) végrehajtsa, és hogy outputként létrehozza az eseményfellépési információt; és megjelenítési motort (460), amely úgy mûködtethetõ, hogy reprodukálja az audio¹/videoadatot (111), és hogy eseményt generáljon egy, az eseménynek megfelelõ alkalmazás végrehajtása révén, amikor audio¹/videoadat (111) egy bizonyos idõpontnál van reprodukálva egy, az eseményfellépési információ révén megszabott idõnél, hivatkozással klipinformáció fájlra, amely az audio-videoadat korábban létezõ struktúrájára vonatkozó jellemzõ információt foglal magában; és amelynél a megjelenítési motor (460) úgy mûködtethetõ, hogy generálja az eseményt a programadattal, amikor egy, az audio¹/videoadat klipinformáció fájljába foglalt bizonyos megjelenítési idõbélyegnek – Presentation Time Stamp – megfelelõ idõpont van reprodukálva. 2. Az 1. igénypont szerinti reprodukáló vagy reprodukáló és rögzítõ berendezés, amelynél a programadat (121) JAVA alkalmazásprogram. 3. Az 1. vagy 2. igénypont szerinti reprodukáló vagy reprodukáló és rögzítõ berendezés, amelynél a megjelenítési motor (460) úgy mûködtethetõ, hogy az eseményt akkor generálja, amikor egy, a klipinformáció fájlba foglalt elõre meghatározott jelölésnek megfelelõ idõpont van reprodukálva. 4. Az 1. vagy 2. igénypont szerinti reprodukáló vagy reprodukáló és rögzítõ berendezés, amelynél a megjelenítési motor (460) úgy mûködtethetõ, hogy az eseményt akkor generálja, amikor egy, a klipinformáció fájlba foglalt elõre meghatározott bizonyos helynek megfelelõ csomag van reprodukálva. 5. Az 1–4. igénypontok bármelyike szerinti reprodukáló vagy reprodukáló és rögzítõ berendezés, amely tartalmaz továbbá eseményfellépési táblázatot, amely úgy mûködtethetõ, hogy eseményfellépési információt tároljon, amely úgy mûködtethetõ, hogy az eseményt generálja az audio¹/videoadat (111) elõre meghatározott reprodukálási idejénél. 6. Az 5. igénypont szerinti reprodukáló vagy reprodukáló és rögzítõ berendezés, amelynél az eseményfellépési táblázat bináris adatformátumban van írva. 7. Az 5. vagy 6. igénypont szerinti reprodukáló vagy reprodukáló és rögzítõ berendezés, amelynél az eseményfellépési táblázat (495) tartalmaz:
10
15
20
25
30
35
40
45
50
55
60 7
2
eseményazonosítót, amely eseményt azonosít; és eseményfellépési idõinformációt, amely reprodukálási idõinformáció, mint például eltelt idõ értéke vagy az audio¹/videoadat (111) egyedi információjának egy értéke. 8. A 7. igénypont szerinti reprodukáló vagy reprodukáló és rögzítõ berendezés, amelynél az eseményfellépési táblázat (495) tartalmaz továbbá: információt, amely a generált eseményre vonatkozik, és amely egy, a fogadott eseménynek megfelelõen végrehajtandó JAVA alkalmazásra vonatkozik; paraméterinformációt, amely úgy mûködtethetõ, hogy a generált eseménynek megfelelõen végrehajtható JAVA alkalmazásnak kerüljön átvitelre; és kiegészítõ információt, amely metaadatot foglal magában. 9. Az 1–8. igénypontok bármelyike szerinti, információtároló médiumon tárolt információ reprodukálására szolgáló reprodukáló vagy reprodukáló és rögzítõ berendezés, amelynél a megjelenítési motor (460) úgy mûködtethetõ, hogy a kiolvasótól (420) vagy a programmotortól (440) fogadott adatfájlokat dekódoljon, és reprodukáljon. 10. A 9. igénypont szerinti reprodukáló vagy reprodukáló és rögzítõ berendezés, amelynél a kiolvasó (420) úgy mûködtethetõ továbbá, hogy mag navigációs adatot (112) és rendszeradatot (130) olvasson ki az információtároló médiumról, és hogy tárolja az információt. 11. A 10. igénypont szerinti reprodukáló vagy reprodukáló és rögzítõ berendezés, amely tartalmaz továbbá több tárolópuffert (431–434), amelyek úgy mûködtethetõek, hogy tárolják a kiolvasó (420) révén kiolvasott adatot, továbbá a több tároló puffer (431–434) közül minden egyes az audio¹/videoadathoz vagy programadathoz van hozzárendelve, és úgy mûködtethetõ, hogy átvigye az információt a programmotornak (440) vagy a megjelenítési motornak (460) motornak reprodukció céljából. 12. A 9., 10. vagy 11. igénypont szerinti reprodukáló vagy reprodukáló és rögzítõ berendezés, amely tartalmaz továbbá alkalmazásmenedzsert (470), amely úgy mûködtethetõ, hogy meghatározzon üzemmódot és reprodukálandó adatot rendszeradatnak (130) megfelelõen, továbbá a rendszeradat (130) magában foglal indítási információt, amely akkor van kiolvasva, amikor az információtároló médium be van helyezve a reprodukáló berendezésbe. 13. A 12. igénypont szerinti reprodukáló vagy reprodukáló és rögzítõ berendezés, amelynél az alkalmazásmenedzser (470) felhasználói bevitelt fogadó egységet és felhasználói bevitel feldolgozó egységet foglal magában, amely úgy mûködtethetõ, hogy átvigyen felhasználói bevitelt a meghatározott üzemmódnak megfelelõ motorok egyikének. 14. A 9–13. igénypontok bármelyike szerinti reprodukáló vagy reprodukáló és rögzítõ berendezés, amelynél a programadat (121) JAVA alkalmazásadat, amely JAVA nyelvnek megfelelõen van írva úgy, hogy a JAVA alkalmazásadatban hivatkozott JAVA alapú erõforrások mindegyike ki van jelezve.
1
HU 005 161 T2
15. A 14. igénypont szerinti reprodukáló vagy reprodukáló és rögzítõ berendezés, amelynél az alkalmazásprogramozási felület úgy mûködtethetõ, hogy az audio¹/videoadatot (111) kijelezze és vezérelje egy, a JAVA alkalmazásban definiált kijelzõn. 16. Eljárás, amely felhasználói berendezésen való végrehajtásra szolgál felhasználó számára, hogy médiumon tárolt információt reprodukáljon, amely eljárás során: kiolvasunk audio¹/videoadatot (111) és programadatot (121); és reprodukáljuk a kiolvasott audio¹/videoadatot (111) és végrehajtunk programadatot (121), hogy a reprodukálás alatt lévõ audio¹/videoadatra (111) vonatkozó eseményt generáljunk, amelynél a programadat (121) eseményfellépési információt foglal magában, amely egy, az eseménynek megfelelõ alkalmazás végrehajtását okozza szinkronban az audio¹/videoadattal (111) és egy abban lévõ bizonyos idõpontnál úgy, hogy az esemény a programadat révén egy, az eseményfellépési információ révén megszabott idõpontnál van generálva hivatkozással az audio¹/videoadat egy klipinformáció fájljára, amely az audio¹/videoadat
2
(111) korábban létezõ struktúrájára vonatkozó jellemzõ információt foglal magában; amelynél az audio¹/videoadat (111) reprodukálása során továbbá generáljuk az eseményt a programadattal amikor egy, az audio¹/videoadat klipinformá5 ció fájljába foglalt bizonyos megjelenítési idõbélyegnek – Presentation Time Stamp – megfelelõ idõpont reprodukálásra kerül. 17. A 16. igénypont szerinti reprodukáló eljárás, 10 amelynél a programadat (121) végrehajtása során egy, az eseményfellépési információt magában foglaló JAVA alkalmazásprogramot hajtunk végre, értelmezzük az eseményfellépési információt, és outputként létrehozunk egy, az eseményfellépési információnak 15 megfelelõ paraméterértéket. 18. A 17. igénypont szerinti reprodukáló eljárás, amelynél az audio¹/videoadat (111) reprodukálása során továbbá az audio¹/videoadatban detektálunk egy, a paraméterértéknek megfelelõ adat helyét, és generál20 juk az eseményt, amikor a helynél lévõ adat reprodukálásra kerül. 19. A 16–18. igénypontok bármelyike szerinti reprodukáló eljárás, amelynek során továbbá elengedjük az eseményt, miután generáltuk az eseményt.
8
HU 005 161 T2 Int. Cl.: H04N 5/76
9
HU 005 161 T2 Int. Cl.: H04N 5/76
10
HU 005 161 T2 Int. Cl.: H04N 5/76
11
HU 005 161 T2 Int. Cl.: H04N 5/76
12
HU 005 161 T2 Int. Cl.: H04N 5/76
13
HU 005 161 T2 Int. Cl.: H04N 5/76
Kiadja a Magyar Szabadalmi Hivatal, Budapest Felelõs vezetõ: Törõcsik Zsuzsanna Windor Bt., Budapest