Rendering of text-based subtitle data including user selectable style information
Abstract
This record has no abstract on file.
Term
Term ended
Projected expiry passed 9 November 2024, 1.9 years ago.
- Priority
- Filed
- Published
- Projected expiry
- Today
1 claim: 1 independent, 0 dependent
- 1Patent claims Zastrzeżenia patentowe 1. A device (410) for transferring data from a storage medium, which storage medium includes:1. Urządzenie (410) do transferowania danych z nośnika pamięci, który to nośnik pamięci zawiera: dane ruchomego obrazu;a także dane (400) napisów do dostarczania napisów dla danych ruchomego obrazu, przy czym dane napisów zawierają element ustawienia stylu zawierający co najmniej jeden element stylu oraz co najmniej jeden zmienialny przez użytkownika element stylu, przy czym co najmniej jeden element stylu zawiera identyfikator elementu stylu oraz informację o stylu do zastosowania względem tekstu w elemencie skryptowym, zaś co najmniej jeden zmienialny przez użytkownika element stylu zawiera identyfikator zmienialnego przez użytkownika elementu stylu oraz informację o stylu, która może być zmieniana przez wybór użytkownika;zaś element skryptowy zawiera informację tekstową mającą tekst do zastosowania w napisach, informację o czasie wyjścia, kiedy napis jest moving image data;and subtitle data (400) for providing subtitles for moving image data, the subtitle data comprising a style setting element comprising at least one style element and at least one user-changeable style element, wherein the at least one style element comprises a style element identifier and style information to apply to the text in the script element, and at least one user-changeable style element includes the identifier of the user-changeable style element and style information that can be changed by the user selection;and the script element contains textual information having text to be used in subtitles, information about the exit time when the subtitle is 53/59P30329PL00 wyprowadzany, a także informację wyznaczającą identyfikator elementu stylu do zastosowania względem tekstu, przy czym urządzenie zawiera: Output, as well as information designating the identifier of the style element to be applied to the text, the device comprising: a text subtitle processor (413) adapted to select a style element in the style setting element based on information determining the identifier of the style element in the script element, and to apply the selected style element to the text in the script element, characterized in that the device includes a register (416) the player's state intended to store the identifier of the user-changeable style element, which is to be used to select a user-changeable style element from at least one user-changeable style element, wherein the subtitle processor is adapted to make a user-selectable style element from at least one user-changeable style element based on an identifier a user-changeable style element stored in the player's status register, when the identifier of the user-changeable style element stored in the player's state register is changed during playback of the moving image data;as well as applying the selected style element and the user-selectable style element to the text in the script element. procesor (413) napisów tekstowych dostosowany do dokonania wyboru elementu stylu w elemencie ustawienia stylu na podstawie informacji wyznaczającej identyfikator elementu stylu w elemencie skryptowym, a także do zastosowania wybranego elementu stylu względem tekstu w elemencie skryptowym, znamienne tym, że urządzenie zawiera rejestr (416) stanu odtwarzacza przeznaczony do przechowywania identyfikatora zmienialnego przez użytkownika elementu stylu, który ma być wykorzystany w celu dokonania wyboru zmienialnego przez użytkownika elementu stylu spośród co najmniej jednego zmienialnego przez użytkownika elementu stylu, przy czym procesor napisów tekstowych jest dostosowany do dokonania wyboru zmienialnego przez użytkownika elementu stylu spośród co najmniej jednego zmienialnego przez użytkownika elementu stylu na podstawie identyfikatora zmienialnego przez użytkownika elementu stylu przechowywanego w rejestrze stanu odtwarzacza, kiedy identyfikator zmienialnego przez użytkownika elementu stylu przechowywany w rejestrze stanu odtwarzacza jest zmieniany podczas odtwarzania danych ruchomego obrazu;a także zastosowania wybranego elementu stylu oraz wybranego zmienialnego przez użytkownika elementu stylu względem tekstu w elemencie skryptowym. 2. A method of transferring data from a storage medium, which storage medium includes: 2. Sposób transferowania danych z nośnika pamięci, który to nośnik pamięci zawiera: dane ruchomego obrazu;a także moving image data;and 53/59P30329PL00 dane napisów do dostarczania napisów dla danych ruchomego obrazu, przy czym dane napisów zawierają element ustawienia stylu zawierający co najmniej jeden element stylu oraz co najmniej jeden zmienialny przez użytkownika element stylu, przy czym co najmniej jeden element stylu zawiera identyfikator elementu stylu oraz informację o stylu do zastosowania względem tekstu zaś co najmniej element stylu skryptowym, użytkownika zmienianego w elemencie jeden zmienialny przez zawiera identyfikator przez użytkownika elementu stylu oraz informację o stylu, która może być zmieniana przez wybór użytkownika;zaś element skryptowy zawiera informację w napisach, napis jest wyznaczającą tekstową mającą tekst do zastosowania informację o czasie wyjścia, kiedy wyprowadzany, a także informację identyfikator elementu stylu do zastosowania względem tekstu, przy czym sposób obejmuje: Subtitle data for providing subtitles for moving image data, the subtitle data comprising a style setting element comprising at least one style element and at least one user-changeable style element, wherein the at least one style element comprises a style element identifier and information with a style to apply to the text and at least a scripting style element, a user changed in an element, one changeable by includes a user identifier of a style element and style information that can be changed by user selection;and the script element includes information in the subtitles, the subtitle is a text designator having text to use information about the time of exit when output, as well as information identifier of the style element to be applied to the text, the method comprising: selecting a style element in a style setting element based on information determining the identifier of a style element in a script element and applying the selected style element to text in a script element, characterized by selecting a user-changeable style element from at least one user-changeable style element based on an identifier that is changeable by the user of a style element stored in the player's status register, when the identifier of the user-changeable style element stored in the player's state register is changed during reproduction of the moving image data in the reproduction apparatus;wybieranie elementu stylu w elemencie ustawienia stylu na podstawie informacji wyznaczającej identyfikator elementu stylu w elemencie skryptowym i zastosowanie wybranego elementu stylu względem tekstu w elemencie skryptowym, znamienny przez wybieranie zmienialnego przez użytkownika elementu stylu spośród co najmniej jednego zmienialnego przez użytkownika elementu stylu na podstawie identyfikatora zmienialnego przez użytkownika elementu stylu przechowywanego w rejestrze stanu odtwarzacza, kiedy identyfikator zmienialnego przez użytkownika elementu stylu przechowywany w rejestrze stanu odtwarzacza jest zmieniany podczas odtwarzania danych ruchomego obrazu w urządzeniu odtwarzającym;and oraz 53/59P30329PL00 zastosowanie wybranego elementu stylu oaz wybranego zmienialnego przez użytkownika elementu stylu względem tekstu w elemencie skryptowym. Applying the selected style element and the selected user-changeable style element to the text in the script element. SAMSUNG ELECTRONICS CO., LTD. Pełnomocnik: SAMSUNG ELECTRONICS CO., LTD. Proxy: 53 / 59P30329PL00 53/59P30329PL00 53 / 59P30329PL00 53/59P30329PL00 53 / 59P30329EN00 53/59P30329PL00 53 / 59P30329PL00 53/59P30329PL00 FIG. FIG. LU § LU § O o Oh 53 / 59P30329PL00 53/59P30329PL00 FIG. 5 FIG. 5 PLAYER STATUS REGISTERS (PSR) REJESTRY STANU ODTWARZACZA (PSR) FIG. 6 FIG. 6 GENERAL DESTINATION (GPR) OR TEXT PROCESSOR BUFFER REGISTERS REJESTRY OGÓLNEGO PRZEZNACZENIA (GPR) LUB BUFOR PROCESORA NAPISÓW TEKSTOWYCH 53 / 59P30329PL00 53/59P30329PL00 FIG. 7 i * Next_Style and Prev_Style are pre-defined symbols * / FIG. 7 i* Next_Style and Prev_Style are pre-defined symbols */ Siibtitle 'Stylesheet_Change (arg) { Siibtitle„Stylesheet_Change(arg) { jf (arg == Next_Style) - CASE A f jf(arg == Next_Style) — PRZYPADEK A f 'ńPSRO.9) == yaitieOf (Stari_addr' ol_StylesheeUD + Num 'of_Stylesheet - 1)) and PSR (19) = ValueOf (Śtart_addr_of_StylesheetJD);ί -------------------- elser........................................................ 'ńPSRO.9) == yaitieOf(Stari_addr„ol_StylesheeUD + Num„of_Stylesheet - 1)) i PSR(19) = ValueOf(Śtart_addr_of_StylesheetJD);ί--------------------else r........................................................ : addr = Start_addr_ef_SlylesheeUD: · i while (PSR (19)! = ValueOf (addr)) and ί addr = addr + 1: I --------------------- --------- and PSR (19) = ValueOf (addr + I): : addr = Start_addr_ef_SlylesheeUD:· i while(PSR( 19) != ValueOf(addr)) i ί addr = addr + 1: I------------------------------i PSR(19) = ValueOf(addr + I): }..................................................... }..................................................... } else ifiarg == Piev_Style) - CASE B {if (PSR (19) == VaiueOf (Start_addr_ol_Sty1esheeUD)): PSR (19) - ValueO ((Stait_address_of_Stylesheet_ID + Num_ol_Stylesheet - I):;} else ifiarg == Piev_Style) — PRZYPADEK B { if(PSR( 19) == VaiueOf(Start_addr_ol_Sty1esheeUD)) : PSR(19) - ValueO((Stait_address_of_Stylesheet_ID + Num_ol_Stylesheet - I): ;else { else { addr = 5tart_addr_of "Stylesheet_ID;i while (PSR (l9)! = ValueOf (addr)};________________________________ addr = addr + 1;· and PSR (19) = ValueOf (addr - 1): i} ...... .................................................. addr = 5tart_addr_of„Stylesheet_ID;i while(PSR(l9) != ValueOf(addr)} ;________________________________ addr = addr + 1;· i PSR(19) = ValueOf(addr - 1): i } ........................................................ } else - CASE C t .... } else — PRZYPADEK C t .... | PSR (19) = arg:! ----------------------------------------- ------} ........... ' |PSR(19) = arg:!-----------------------------------------------} ........... ' 701 701 702 702 703 703 704 704 705 705 53 / 59P30329PL00 53/59P30329PL00 FIG. 8 FIG. 8 801 package BDROM.media.subtitle pub lic interface TextSubtitle extends Subtitle {public boolean status: public TextSubtitleAttribute getAttributeO: public unsigned int getLangCodeO;public String getTitleNameO: public unsigned int getSubtitielDO: 801 package BDROM.media.subtitle pub lic interface TextSubtitle extends Subtitle { public boolean status: public TextSubtitleAttribute getAttributeO: public unsigned int getLangCodeO;public String getTitleNameO: public unsigned int getSubtitielDO: public unsigned int getCurrentTextStylesheetlD ();public unsigned int getCurrentTextStylesheetlD();' public void setTextStylesheetlD(unsigned int ID): 'public void setTextStylesheetlD (unsigned int ID): public void nextTextStylesheet (): public void prevTextStylesheet ();public unsigned int getDefaultTextStylesheetlD (): public void nextTextStylesheet(): public void prevTextStylesheet();public unsigned int getDefaultTextStylesheetlD(): public Time getCurrentPresentationTimeO;public void setPresentationTime (Time t);public FILE getCurrentTextSubtitle ();public Time getCurrentPresentationTimeO;public void setPresentationTime(Time t);public FILE getCurrentTextSubtitle();public void setTextSubtitle ($ tring filename or unsigned int ID);public void setTextSubtitle($tring filename or unsigned int ID);public void startO;public void stop ();public void startO;public void stop();} } 53 / 59P30329PL00 53/59P30329PL00 FIG. 9 : import BOROM.media.*: FIG. 9: import BOROM.media. *: : public class PlayXlet extends Xlet implements ControllerListener { : Player player: : public class PlayXlet extends Xlet implements ControllerListener {: Player player: : public votd init () {: setLayout (new BorderLayoutO);: public votd init() { : setLayout(new BorderLayoutO);: String mediaFile = getParameterCFILE ');: String mediaFile = getParameterCFILE');: try { : URL mediaURL = new URL(getDocumentBase(), mediaFile);: try {: URL mediaURL = new URL (getDocumentBase (), mediaFile);: player = Manager. createPlayerCmediaURL): : player = Manager. createPlayerCmediaURL): : player .addControllerListener (this);: player .addControllerListener(this);: player.subtitle - new TextSubti1le (): : player.subtitle - new TextSubti1le(): : player.subtitle.setTextSubtitlei "filename"): : player.subtitle.setTextSubtitlei“filename”): : }catch(Exception e) { :} catch (Exception e) { System.out.printlnCGet Exception "+ e);System.out.printlnCGet Exception “ + e);: } } : } } : public vaid startO { : player.startO: : public vaid startO {: player.startO: ł : public synchronized void controllerUpdate(ControllerEvent e) { : if( e instanceof SubtitleToggleEyent) { : ifCpIayer.subtitle.status == TRUE) : player.subtitle.stopO: ł: public synchronized void controllerUpdate (ControllerEvent e) {: if (e instanceof SubtitleToggleEyent) {: ifCpIayer.subtitle.status == TRUE): player.subtitle.stopO: : else { : player.subtitle.setPresentationTime(player.getMediaTimeO) : player .sublitle.startO: : else {: player.subtitle.setPresentationTime (player.getMediaTimeO): player .sublitle.startO: } } } } : if (e instanceof nextSubtitleStylesheetEvent) { : if( e instanceof nextSubtitleStylesheetEvent) { 26: player.subtitle.nextTextStylesheetO: 26: player.subtitle.nextTextStylesheetO: } : if(e instanceof prevSubtitleStylesheetEvent) { : player.subtitle.prevTextStylesheet[): }: if (e instanceof prevSubtitleStylesheetEvent) {: player.subtitle.prevTextStylesheet [): } : ifCe instanceof setSublitleStylesheetEvent) { : player.subtitle.setTextStylesheetlD(e.value);}: ifCe instanceof setSublitleStylesheetEvent) {: player.subtitle.setTextStylesheetlD (e.value);} } } } } } 53 / 59P30329PL00 53/59P30329PL00 53 / 59P30329PL00 53/59P30329PL00 END KONIEC
129 paragraphs, as filed
Technical field The present invention relates to the reproduction of a storage medium, in particular a storage medium on which text-based subtitle data containing style information is recorded, and also relates to a device and method for reproducing a storage medium.
Background Art [0002] Basically, storage media, such as, for example, universal digital discs (DVDs), store audiovisual (AV) data that includes video data and audio data. Recorded video data and audio data in AV data are compressed according to a standard, such as, for example, movie expert group (MPEG) standards. AV data optionally includes subtitle data. In the following, AV data is referred to as moving image data.
[0003] Conventional storage media, such as DVDs, for example, use bitmap image data as subtitle data to provide moving image subtitles. The image data has been compressed together with the video stream, audio stream etc. according to a standard such as MPEG2 or similar. When subtitle data is provided using conventional bitmap data, the subtitle data is precisely synchronized with the video data stream.
Technical problem [0004] However, the use of sub-picture data on a bitmap basis causes the following problems. First,
Since the subtitles are provided using a bitmap image, the output style of the subtitles mirrored after the image corresponding to the subtitles has been created cannot be changed. Secondly, because the subtitle data is multiplexed with the video stream, audio stream, etc., it is difficult to add new subtitle data to the multiplexed subtitle data or to improve existing subtitle data. Third, the number of subtitle data that can be added is limited to prevent image degradation. "Understanding SAMI 1.0" (February 2003, available at: URL<a href="http://msdn2.microspft.com/en-us/library/ms971327">http://msdn2.microspft.com/enus/library/ms971327</a>) presents an introduction to synchronized interchange of available media.
Technical solution [0005] An aspect of the present invention provides a storage medium on which text-based subtitle data containing style information is recorded, as well as a device and method for reproducing a storage medium.
Advantageous Effects of the Invention [0006] The storage medium according to an embodiment of the present invention comprises text-based subtitle data recorded separately from the data of moving images. The text-based subtitle data contains a lot of information about the style, so that the style in which the subtitle is output can be changed as desired. Accordingly, a moving image caption can be output in a variety of styles without degrading the image quality of the video stream, and producing and editing subtitle data is very easy. Also the style in which subtitles are output can be freely changed by the user.
[0007] In addition, although this has been described in terms of the subtitles used for moving image data, it should be understood that aspects of the present invention may be used with still image data and / or with audio data. In addition, although it has been described in terms of style sheets, it should be understood that aspects of the invention can be applied to any set of information associated with an electronic document and which presents a grouping of data, a definition of the appearance of the document in terms of elements such as font, size and color for headers and basic text, section arrangement in terms of space, line spacing, margin width, header spacing, and so on.
[0008] In addition, in a storage medium according to an aspect of the present invention, in which text-based subtitle data containing style information is stored, as well as in a device and method of reproducing a storage medium, subtitles may be output using the style information selected by the user. Also, the style in which subtitles are output can be changed. In other words, the text-based caption data according to the features of the present invention can be easily formed and edited and output in a variety of styles. In addition, various output subtitle styles can be selected by the user using a variety of style information contained in the text-based subtitle data.
Description of the drawings [0009] The above and / or other features and advantages of the present invention will become more pronounced and more easily appreciated by detailed description of their embodiments with reference to the accompanying drawings, in which:
[0010] Figure 1 is a block diagram showing the types of data recorded on a storage medium according to an embodiment of the present invention;
[0011] Figure 2 is a table defining the elements and attributes that are used in a Markup document as an example of the text-based data of the inscriptions shown in Figure 1;
[0012] Figure 3 illustrates an example of text-based data subtitles made in the Markup language defined in Figure 2;
[0013] Figure 4 is a conceptual block diagram of a reproduction apparatus supporting text-based subtitle data according to an embodiment of the present invention;
[0014] Figure 5 illustrates some player status registers (PSRs), which are system registers that record style information contained in the text-based subtitle data shown in Figure 1;
[0015] Figure 6 illustrates some general purpose registers (GPRs), which are system registers that record style information contained in the text-based subtitle data shown in Figure 1;
[0016] Figure 7 shows an algorithm for selecting the appropriate style information in response to a user instruction according to an aspect of the invention;
[0017] Figure 8 illustrates an example of an application program interface (API) used to change the style information shown in Figure 1;
[0018] Figure 9 is an example of a Java application written using the API defined in Figure 8;
[0019] Figure 10 is a flowchart illustrating a method of outputting subtitles using the text-based subtitle data shown in Figure 1; and
[0020] Figure 11 is a flowchart illustrating a method of changing the output style of the subtitles using the style information contained in the text-based data of the figure subtitles.
1.
Best Mode [0021] According to an aspect of the present invention, there is provided a device according to claim 1.
[0022] According to another aspect of the present invention, a method according to claim 2 is provided.
[0023] Additional aspects and / or advantages of the invention will be set forth in part in the description which follows, and also, in part, will become apparent from the description, or may be learned by implementing the invention.
Mode of the invention [0024] Reference will now be made in detail to embodiments of the present invention, examples of which are illustrated in the accompanying drawings, where the same reference signs refer to the same elements throughout the description. Embodiments which explain the present invention by reference to the figures are described below.
[0025] Figure 1 is a block diagram illustrating the types of data recorded on the storage medium according to an embodiment of the present invention. Referring to Figure 1, the storage medium includes core data 100, full data 110, system data 120, and text based data 130 of the subtitle.
[0026] Core data 100 is data for reproducing a moving image and includes information about the moving image 102 that has been compressed, and navigation information 101 that is used to control the reproduction of the information about the moving image 102. Information 102
The moving image includes one or more clip A / V stream files encoded according to a standard, such as MPEG, for example. Each clip is a unit in which data is saved. The moving image information 102 includes a clip information file containing the encoding attributes of the clip A / V stream file, its entry point information, and the like. The moving image information 102 further includes a play list consisting of a plurality of reproduction elements, wherein the reproduction element is a unit in which data is reproduced. Each of the playback elements indicates an input time position and an exit time position in the clip information file. The moving image information 102 is reproduced with respect to the bearer information 101 of the storage medium, and the user is watching a moving image, e.g. a high-quality movie or similar message reproduced from the moving image information 102. However, it should be understood that AN data may be organized differently and the data need not be compressed and / or may be compressed by other standards.
[0027] Full data 110 is data for providing an additional function other than reproducing the moving image and includes program data 111 for obtaining interaction with the user and / or browser data 112 for reproducing information regarding the moving image from the marker document. If an additional function is not necessary, full data 110 may not be included.
[0028] According to aspects of the invention, program data 111 is used to provide a game function using a moving image, a function of displaying director comments when reproducing a portion of a moving image, a function for displaying additional information when reproducing a portion of a moving image, a chatting function for reproducing a moving image and the like. Program data
Document in the language
111 can support JAVA as well as other interactive environments.
[0029] Browser data 112 is an order to reproduce information regarding the moving image from the tag. This command can be expressed in tags and / or in an executable scripting language (for example, the ECMA scripting language). The information regarding the moving image reproduced from the tag document is reproduced together with the moving image. For example, the latest actor news saved on a website, file and the like, news about movie events, updated subtitles and the like may be played from a storage medium storing the movie and played back with the movie and / or may be recovered from the network or other storage media to which the playback device is connected. Full data 110 may further include other data for providing a different function instead of the function of reproducing a moving image.
[0030] System data 120 is data used to control playback of core data 100 and / or full data 110 and includes start information 121 and title information 122. The start information 121 indicates the position of the object to be played back first when the storage medium is played back at the playing device
122 the title contains point information indicating the location of each object to be reproduced. [0031] The text-based subtitle data 130 is stored separately from the core data 100, full data 110 and system data 120 and has a text-based data structure such that the style in which the produced subtitles are output can be changed, added or corrected. For example, the text-based data of 130 subtitles may be expressed in a text-based markup language. The subtitle data 130 includes script information 131 and style information 132.
Input information,
[0032] The script information 131 means text to be displayed as subtitles of a moving image. Style information 132 means information about the style in which the string is output. This information is used when the script information 131 is rendered for display on the display device. Data 130 subtitles can be recorded in local memory separate from the storage medium.
[0033] Figure 2 is a table defining the elements and attributes that are used in the tag document to establish an example of the text-based data 130 of the subtitles in Figure 1. Referring to figure 2, the tag document includes script information 203 and style information 202 according to with what is described in the subtitle element 201. In the following, the tag document for creating subtitle data is referred to as the text subtitle document.
[0034] detail elements and text. level in attribute (ID) for
The attributes used in the subtitle document will now be described. Element 201 subtitle means the element of the upper text subtitle document. Each subtitle document begins with a subtitle element. The subtitle element contains the following attributes:
denoting the identifier of the subtitle of each subtitle data item from the other subtitle data items; the "lang" attribute means the character code of the language of the subtitles displayed on the screen using the subtitle data; and the title attribute denoting the title of the moving image that uses the subtitle data.
[0035] The style setting element includes style information for use in rendering subtitle data and includes at least one style sheet element according to an aspect of the invention. A style sheet element indicates the unit in which the style of the given subtitle is managed and changed. A style sheet element contains one or more style elements. If there are many subtitle_id "distinction
53 / 59P30329EN00 style sheet elements, each of the style sheet elements contains an identical number of style elements, each of which is used to render subtitle data. If style elements are used for the storage medium manufacturer to render identical subtitle data, although contained in different style sheet elements, style elements have the same style_id value.
[0036] Each element of the style sheet contains the following attributes. First, the "stylesheet_id" attribute identifies the style sheet ID to distinguish between style sheet elements. Because the stylesheet_id attribute is registered in the playback device registry, which will be described later, and used as the current value of style information, the stylesheet_id attribute preferably has a binary value.
[0037] Secondly, the "defalult" attribute defines the style sheet to be applied initially when the subtitle data is output to the display screen. Only one element of the style sheet has a default value of "yes" and other elements of the style sheet have a default value of "no".
[0038] Third, the desc attribute indicates the style descriptions that are selected by the style sheet element.
[0039] According to an aspect of the invention, the style element stores the style information to be used after rendering the subtitle data and includes the following attributes. The first attribute style_id denotes the style class value to distinguish between style elements contained in a style sheet element. The second attribute font is the font to be used in the text used as script information by the dialog element. The third color attribute is the color of the text used as script information by the dialog element. The fourth bgcolor attribute indicates the background color of the text used as script information by the dialog element. The fifth size attribute means size
53 / 59P30329EN00 of each character of text used as script information by the dialog element. The sixth position attribute indicates the reference position at which the characters of the text used as script information by the dialog element are derived. The seventh align attribute means alignment of the text used as script information by the dialog element. The eighth area (region) attribute is the area on the screen where the text is to be output using the dialog element. The ninth attribute lineheight means the line spacing of text to be output on the screen using a dialog element.
[0040] The script element stores the subtitle text information and comprises at least one dialog element according to an aspect of the invention.
[0041] Each of the dialog elements stores information about the subtitle text to be displayed on the display screen and includes the following attributes. The first attribute begin (begin) means information about the time when the text of the subtitles begins to be displayed. The second attribute end indicates the time when the subtitle text stops being displayed. The third attribute ref_styte_id denotes the class value of the specific style element to determine the style to the text of the subtitles applied to the information displayed on the display screen using the dialog element.
[0042] Figure 3 illustrates an example of a file for text-based data 130 of subtitles made in a markup language. Referring to Figure 3, it begins with subtitle element 300. The subtitle element 300 includes a single style setting element 310 containing style information to be used for rendering the script information, and a single script element 320 containing the information defined in Figure 2 of the text subtitle document
Scripted moving image. The subtitle element 300 corresponds to the text based data 130 of the figure 1, the style element 310 corresponds to the style information 132 of figure 1, and the script element 320 corresponds to the script information 131 of figure 1.
[0043] The style setting element 310 includes the first and second style sheet elements, 311 and 312. As described above, each of the style sheet elements, 311 and 312, means a unit in which the style can be managed and changed. Each of the style sheet elements 311 and 312 includes a stylesheet_id attribute that indicates the value of the playback attribute registry attribute to reflect current style information.
[0044] The first style sheet element 311 having the stylesheet_id attribute of 0 is set to have a default value of "yes". Therefore, as long as the user does not generate style change orders, the first element 311 of the style sheet is mainly used for the subtitle text information. The first 311 element of the style sheet indicates a font of normal size using the desc attribute. [0045] The second style sheet element 312 having the stylesheet_id attribute with a value of 1 indicates a large font size using the desc attribute. Thus, when the subtitle style is changed by the user, the font size can be changed.
[0046] Each of the style sheet elements 311 and 312 includes an identical number of style elements. Each of the style elements has, as its attribute value, information about the style actually applied to the subtitle text.
[0047] Style elements 311a, 311b, 312a and 312b are used to indicate a number of style information elements that the manufacturer wants to apply to the text of the subtitles. As shown in figure 3, the first style sheet element 311 includes two style elements, 311a and 311b, having
53 / 59P30329EN00 style_id attributes with values x and y respectively. When the element
Style 311a having the style_id attribute with the value x is compared to the style element 311b having the style_id attribute with the value of y, they have different style information. In particular, the font size difference is large.
[0048] For example, the manufacturer may apply the style information indicated by the style element 311a to a portion of the subtitle text information such as, for example, the title of the subtitles, as well as the style information indicated by the style element 311b to the subtitle text information corresponding to the dialog.
[0049] Although not required, it is preferred that the storage medium according to an embodiment of the present invention is an optical disc that can be removed from the reproduction apparatus and from which data can be read using the optical reproduction apparatus. Examples of storage media include, but are not limited to, CDROMs, DVDs, Bluray and Advanced Optical Discs, optical discs to be developed, and the like.
[0050] A reproduction apparatus for reproducing the aforementioned storage medium according to an embodiment of the present invention will now be described in detail with reference to figures 1 and 4. Figure 4 is a conceptual block diagram of a reproduction apparatus 410 supporting text-based subtitle data, according to an embodiment of the present invention. Referring to Figure 4, the reproduction apparatus 410 includes a core data processor 411, a full data processor 412, a text subtitle processor 413, a moving image processor 414, a mixer 415, and a system register 416. Although the description is given in relation to the reproduction apparatus, it should be understand that the device may also have write capability and may be a device
53 / 59P30329EN00 free standing or embedded in a general or special purpose computer.
[0051] The core data processor 411 controls the reproduction of the moving image data (i.e., the moving image information 102) using the navigation information 101 of the figure
1. The core data processor 411 is also referred to as the navigation engine. The full data processor 412 processes application data providing user interaction, such as, for example, program data 111 (Java program or similar) and / or browser data 112 (tag or similar document). The full data processor 412 may include a program engine and a browser engine separate from the program engine, or these engines may be combined.
[0052] The text subtitle processor 413 verifies the text-based subtitle data structure 130, including script information 131 and style information 132, and also processes the text-based subtitle data 130.
[0053] Moving image processor 414 decodes the moving image data and outputs the decoding result to the output device screen 420. Moving image processor 414 is also referred to as a presentation engine.
[0054] Mixer 415 mixes the images output by the full data processor 412 and the moving image processor 414 and outputs the mixing result to the screen of the output device 420.
[0055] System register 416 includes player status registers (PSR) storing various types of reproduction device status information, as well as general purpose registers (GPR) that are used by the reproduction apparatus for temporary data recording.
[0056] In particular, the core data processor 411 stores the information necessary for reproduction in the system register 416 according to the navigation instruction for reproducing a moving image (such as a movie) and transmits the instruction
Reproducing a moving image processor 414. In response to the reproduction order, the moving image processor 414 decodes the moving image data using the information necessary for reproduction stored in the system register 416. During the reproduction of the moving image, when the user receives the subtitle output order, the core data processor 411 transmits the subtitle output order to the processor 413 text subtitles.
[0057] In response to the subtitle output order, the subtitle processor 413 loads the subtitle data into memory (not shown) and checks that the sentence structure of the subtitle data matches the predetermined sentence structure. If the sentence structure of the text subtitle data matches the predetermined sentence structure, the text subtitle processor 413 performs a syntax analysis of script information and style information, and renders text subtitle information using style information defined by the first style sheet element 311 having the value of default = yes from figure 3. The rendering result is sent to the moving image data processor 414 and output to the output device 420.
[0058] During playback of the moving image, upon receipt of the subtitle output style change order 401, the core data processor 411 transmits the subtitle output style change user command 401 to the subtitle processor 413. The text subtitle processor 413 changes the style information used to render text subtitle information (e.g., by changing the style sheet to another style sheet) and re-registers the changed style information in the system register 416.
[0059] When the video is played by the full data processor 412, the full data processor 412 records the information necessary for playing the application contained in
53 / 59P30329EN00 full data 110, in the system register 416 controls, using the application (API) for Data Processor 414, moving image reproduction of the predefined program interface of the processor 414 moving image data of the moving image, reproduces the moving image data with respect to the information necessary for playback stored in the system registry 416 in the same way as in the core mode (which means the mode of playing a moving image using the core data and is referred to as the movie code).
[0060] During playback of the moving image, upon receiving the subtitle output command from the user, the full data processor 412 transmits the subtitle output order to the subtitle processor 413. In response to the subtitle output order, the subtitle processor 413 outputs the subtitle using the text-based subtitle data 130 in the same way as in the core mode.
[0061] In receiving the output of the moving image during the user instruction 401 changing the subtitle style, the full data processor 412 transmits the user instruction 401 to the subtitle processor 413 via a predefined style changing API for the subtitle processor 413. In response to user order 401, the subtitle processor 413 changes the subtitle output style in the same way as in core mode.
[0062] Figure 5 illustrates some of the player state registers (PSRs), which are system registers that record style information 132 contained in the text-based data 130 of the subtitles in Figure 1. Referring to figure 5, PSR means registers that store different types of status information regarding a reproduction apparatus of the present invention. PSR No. 1 indicates the number of the audio stream selected for playing back the current moving image, PSR No. 2 indicates the number of the subtitle stream selected
53 / 59P30329EN00 for playing the current moving image, and PSR No. 17 indicates the language code of the subtitle stream selected for playing the current moving image.
[0063] PSR No. 19 is used to indicate the ID of the style sheet selected when rendering script information when subtitles are output using the given subtitle data. PSR No. 19 is only an embodiment, so it can be replaced by any of the 32-bit PSR registers numbered 1 to 63 of the embodiment shown, or by any appropriate indicator in registers having other sizes.
[0064] PSR No. 19 may be changed by a user operation that will be described later, a Java API or the like. When the content of PSR No. 19 content is changed during playback of moving image data containing text-based subtitle data, the subtitle output style applied to the script information is also changed. [0065] The style information described above applied to the current script information is stored in the PSR registers as shown in figure 5. Alternatively, the style information described above can be stored in general purpose registers (GPR) which will be described later, or in the internal buffer (not shown) of the subtitle processor 413 according to aspects of the invention.
[0066] An example of a user operation (hereinafter referred to as UOP) for changing the style will now be described. The Text_subtitle_style_Change (stylesheet_id) function, which is a UOP user operation, sets the ID of the style sheet applied to the text-based subtitle data and changes PSR register 19. Stylesheet_id, which is an argument to the Text_subtitle_style_Change (stylesheet_id) function, can have any value from 0 to 231, because the number of styles applicable to text subtitles is theoretically infinite, but the PSR register according to the example shown
53 / 59P30329PL00 has a size of 32 bits. An example of a new navigation command is the SetSS (for stylesheet_id) function. The SetSS (for stylesheet_id) function changes the value of PSR register 19, which indicates the ID of the style sheet to be used when rendering text subtitle data, to the value of the argument. Also, when the PSR has a different memory size, it should be understood that stylesheet_id may have different numbers.
[0067] Figure 6 illustrates some of the GPR registers, which are system registers that record style information 132 contained in the text-based data 130 of the subtitles in Figure 1. The ID information about a style sheet element defined in the style sheet element is recorded in the registers GPR as shown in figure 6. Alternatively, the ID information about the style sheet element may be stored in the internal buffer of the text subtitle processor 413 or in the PSR registers of figure 5.
[0068] Referring to figure 6, address 100 stores the value 102 as the start address ID information about the style sheet element, and address 101 stores the value 2 as the number of style sheet elements used in the subtitle document. Address 102 saves the ID of the style sheet elements indicating the normal font size, and address 103 saves the ID of the style sheet element indicating the large font size. In other words, the text caption document described in figure 6 has two style sheet elements that indicate normal font size and large font size, respectively.
[0069] The manner in which the above-mentioned reproducing apparatus reproduces moving image data using user-selected subtitle style information from the aforementioned storage medium will now be described with reference to figure 7. Figure 7 illustrates an algorithm for selecting style information 132 according to the instruction user. When in
53 / 59P30329EN00 while playing back the moving image, the user receives an order to change the output style of the subtitles, the reproduction device can change the text of the subtitles so that the style information selected by the user can by using a function such as (Subtitle_Stylesheet_Change arg), which function to be used will be described later.
[0070] Referring to figure 7, the argument Next_Style (case A) or Prev_Style (case B) can be used as an argument in the function Subtitle_Stylesheet_Change (arg). Alternatively, a specific value of the stylesheet_ID attribute may be specified as an argument for C. Case C can be expressed in a function similar to that of the UOP user operation mentioned above.
[0071] In case A, in which the Next-Style value is used as an argument to the Subtitle_Stylesheet_Change (arg) function, the reproduction device increases the stylesheet_ID value stored in PSR register 19, GPR registers or the internal processor buffer 413 of the text based and applies the next style having an increased ID. If the stylesheet_ID value of the currently used style is the largest, such as 701, then the style with the lowest stylesheet_ID value is used. For 702, a style is used that has the stylesheet_ID value obtained by increasing the current stylesheet_ID 1 value by 1.
[0072] Style 703 and 704 cases used in the case used as
Subtitle_Stylesheet_Change (arg) how to store the designated stylesheet_ID value in PSR register 19, GPR registers or the internal processor buffer of text based 413 subtitles.
represent ways of changing B, where Prev_Style is a function argument Case 705 represents
Indicating interfaces [0073] Figure 8 illustrates an example of an API used to change style information 132 according to an aspect of the invention. Referring to Figure 8, a BDROM package can be used as a group of instructions that can be used to write an application contained in full data 110. The BDROM package includes a media package to control playback of a moving image according to the application.
[0074] The media packet includes a subtitle package for controlling text-based subtitles or bitmap-based subtitles of the moving image. The TextSubitle interface is defined as part of the subtitle package for text-based subtitles. The TextSubitle interface may contain the following APIs. The term "status" means the parameter for the output status of subtitles "getAttribute ()" receives information about text subtitles that is just turned on / off. File attribute used. the subtitle file "getLangCode ()" receives the text language code. "getTitleName ()" is given the name of the moving image data title. "getSubtitleID ()" receives an identifier
ID of current file
CurrentTextStylesheet ID of subtitles. "getthe stylesheet_ID that is being used." setTextStylesheet ID (unsigned int ID) "receives as the argument the ID of the style sheet to be used for rendering text subtitles and sets PSR register 19 as the style sheet corresponding to the received ID. "nextTextStylesheet ()" means the style sheet next to the current style sheet in the style sheet table and sets the style sheet to be used for rendering text subtitles. "prevTextStylesheet ()" means the style sheet previous to the current style sheet in the style sheet table and sets the style sheet to be used for rendering text subtitles. "getDefauItTextStylesheet ID ()" receives the style sheet set as the default from the style sheet table.
53 / 59P30329EN00 "getCurrentPresentationTime ()" receives a presentation time indicating the time when the subtitle is output from the current text-based subtitle data. "setPresentationTime (Time t)" sets the presentation time corresponding to the current presentation time using the time information t given as an argument. "getCurrentTextSubtitle ()" receives the ID of the subtitle file currently used for the current subtitle output. "setTextSubitle (String filename or unsigned int ID)" receives the file to be used for outputting subtitles as an argument and sets the received file as the ID of the received file name or received subtitle file. "start ()" starts outputting text subtitles. "Stop ()" stops outputting subtitles
<td>text. Belongs</td><td>but</td><td>understand,</td><td>that</td><td>other</td><td>interfaces</td><td>API</td>
<td>can be used</td><td colspan="2">or developed,</td><td>and</td><td>no</td><td>interface</td><td>API</td>
<td>presented on</td><td>figure</td><td>8 no</td><td>must</td><td>be</td><td>applied</td><td>in</td>
all aspects of the invention.
[0075] Figure 9 illustrates an example of a Java application written using the API defined in Figure 8. Referring to Figure 9, the PlayXlet application inherits the function of the Xlet application, which is the basic unit of Java application and contained in the full data 110 executed by the reproduction apparatus, and also implements the ControllerListener interface to process the command received from the user during playback of the moving image.
[0076] When the application implemented by the Xlet function extension starts, first the application init () part is executed to initialize the application. Then, the start () part of the application is performed. As shown in Figure 9, when the PlayXlet application is executed, it is initialized by the first operation of the init () part (applies to line 4). The PlayXlet application codes will now be described in detail.
[0077] In line 1, the media packet described in figure 8 is imported to control moving image data. On line 2, the PlayXlet application object is declared. The PlayXlet application inherits the function of the Xlet application and implements the ControllerListener interface. In line 3, the Player object is declared, which is the object controlling the moving image data used in the PlayXlet application. On lines 4 to 15, when the PlayXlet application is initially executed, it is initialized. In line 5 the appearance of the PlayXlet application is set. On line 6, a moving image data file is called that will be used by the PlayXlet application. On lines 7 through 13, an exception is temporarily stored that can be generated when the Player object is initialized. Line 8 sets the path for moving image data resources to be used by the PlayXlet application. In line 9, the playback control object for the moving image data resources corresponding to the designated path is generated and allocated to the Player object. On line 10, the Event Listener event is used, which is used by the Player object to receive the order from the user and process the order. On line 11, a "subtitle" object is generated for the Player object. Line 12 sets text based subtitles for use by the "subtitle" object. An exception is processed in i14 which may be when the Player object is being initialized. An error message is output on the line when an exception is thrown. On lines 16 and 17, the start () part is performed after the Player object has been initialized. On line 17, the playback of moving image data controlled by the Player object begins. On lines 18-30, the control command received from the user is processed.
[0078] On lines 19 to 24 in the Subtitle event type
Toggle Event, when current subtitles are output, subtitle output stops. On the other hand, 13 lines generated,
When no subtitles are output, the point in time at which the subtitles are to be output is synchronized with the point in time at which the current moving image is to be played back, and then the subtitle output begins.
[0079] On lines 25 and 26, in the event type nextSubtitleStylesheetEvent, the style sheet to be used for subtitling is changed to the style sheet next to the current style sheet. If the currently used style sheet is the last one in the style sheet table, the style sheet to be used for outputting the subtitles is changed to the first style sheet in the style sheet table.
[0080] On lines 27 and 28, in the event type prevSubtitleStylesheetEvent, the style sheet to be used for subtitling is changed to the previous style sheet relative to the style sheet currently used. If the currently used style sheet is the first in the style sheet table, the style sheet to be used for outputting subtitles is changed to the last style sheet from the style sheet table. [0081] On lines 29 and 30, in the event type setSubtitleStylesheetEvent, the style sheet to be used for outputting subtitles is changed to the style sheet determined by the argument value contained in the event object "e".
[0082] In the operation described above, the PlayXlet application from the Java application is executed, when FIG. 9, playback of the determined moving image data begins. After receiving the order to output subtitles, play back the moving image, subtitle. When it is received from the user while outputting another command to output subtitles, output of subtitles is stopped.
[0083]
When the nextSubtitleStylesheetEvent command is received from the user while the subtitles are output, the subtitle output style is changed using style information having the stylesheet_ID attribute, which
53 / 59P30329EN00 the value is 1 greater than the value of the stylesheet_ID attribute of the currently used style information. When the prevSubtitleStylesheetEvent command is received from the user while subtitles are output, the subtitle output style is changed using style information having the stylesheet_ID attribute whose value is 1 less than the value of the stylesheet_ID attribute of the currently used style information.
[0084] When the setSubtitleStylesheet order to set the current style sheet as a specific style sheet is received using the application of figure 9, the subtitle output style change menu provided by playback or similarly, the current style sheet is changed to a specific style sheet using stylesheet_ID introduced by user.
[0085] Figure 10 is a flowchart illustrating a method of outputting subtitles using text-based data 130 subtitles. Referring to figure 10, when an order is received from a user to start subtitling, then, in operation 1010, the style sheet element having the default attribute "yes" is set as style information to be used when rendering subtitle text information. Then, the time point at which the current moving image is played back is synchronized with the time point at which the subtitle is output, by setting the presentation time, in operation 1020. In operation 1030, it is checked that the current status of the subtitle output is the state in which the inscription is output or a state in which the inscription is not output.
[0086] If the current subtitle output state is the state in which the subtitles are output, then in the operation 1040 subtitle output is performed. If the current subtitle output state is a state in which the subtitle is not output, then the subtitle output is terminated.
[0087] If subtitles are output in operation 1040 and it is found in operation 1050 that the subtitle elements for continuous output remain, operations 1030 and 1040 are repeated. On the other hand, if operation 1050 states that there are no string elements for continuous output, the subtitle output is terminated.
[0088] The user's style sheet change order is applied to operations ranging from operation 1030, in which the status of output of current subtitles is checked, to operation 1050, in which it is checked whether output of subtitles is to be completed.
[0089] Figure 11 is a flowchart illustrating a method of changing the subtitle output style using style information 132 contained in the text-based subtitle data 130 according to an aspect of the invention. Referring to figure 11, in operation 1110, an instruction to change the subtitle output style is received from the user. Operation 1120 determines whether the event for the received command is a subtitle switch type event or a subtitle style sheet change event.
[0090] If the event for the received instruction is an event of the subtitle switching type, then operation 1130 determines whether the current subtitle output state is the state in which the subtitle is output or the state in which the subtitle is not output. If the current subtitle output state is the state in which the subtitle is output, the subtitle state is changed in operation 1140 to the state in which the subtitle is not output. If the current subtitle output state is a state in which the subtitle state is changed to a state in which the subtitle is not output, the subtitle is output, in operation 1150.
[0091] On the other hand, if the event for the received instruction is an event of the subtitle style sheet change type, then operation 1160 determines whether the event for the received
The instruction is a setStylesheet event, a nextStylesheet event, or a prevStylesheet event. The setStylesheet event sets the output style for subtitles using the stylesheet_id attribute of the style sheet selected by the user. The nextStylesheet event sets the output style of subtitles using the next style sheet relative to the style sheet currently used according to the style sheet sequence. The prevStylesheet event sets the output style of subtitles using the previous style sheet relative to the style sheet currently used according to the style sheet sequence. As described above with reference to figure 7, the setStylesheet event, the nextStylesheet event, and the prevStylesheet event are executed in operations 1170, 1180 and 1190, respectively, so that the style of the subtitles displayed on the screen is changed according to the designated command.
[0092] The storage medium according to an embodiment of the present invention comprises text-based subtitle data stored separately from the moving image data. The text-based subtitle data contains many elements of style information, so the style in which subtitles are output can be changed as desired. Thus, moving video subtitles can be derived in a variety of styles without deteriorating image quality of the video stream, and producing and editing subtitle data is easy. In addition, the style in which subtitles are output can be freely changed by the user.
[0093] Furthermore, although aspects of the present invention have been described in terms of subtitles used together with moving image data, it should be understood that they can also be used with still images and / or audio data. Similarly, although aspects of the invention have been described with respect to style sheets, it should be understood that they can be applied to any set of information associated with an electronic document and which presents the grouping
Data, definition of the appearance of the document in terms of elements such as font, size and color of headings and basic text, such as sections should be distributed in terms of space, line spacing, margin widths, distance between headers and so on.
[0094] Furthermore, on the storage medium according to an embodiment of the present invention, on which text-based subtitle data containing style information is recorded, as well as on the device and method of reproducing the storage medium, the subtitles may be output using the style information selected by the user . Also the style in which the inscription is being output can be changed. In other words, the text-based subtitle data according to the features of the present invention can be easily formed as well as edited and output in various styles. In addition, various subtitle output styles can be selected by the user using a plurality of style information elements contained in the text-based subtitle data.
[0095] Although not required, aspects of the invention can also be implemented as computer-readable codes on at least one computer-readable recording medium. A computer readable recording medium is any data storage device that can store data that can then be read by a general or special purpose computer system. Examples of computer-readable recording media include read-only memory (ROM), random access memory (RAM), CD-ROMs, magnetic tapes, floppy disks, optical data storage devices, as well as carrier waves (such as data transmission via Internet). The computer-readable recording medium may also be dispersed in a network connected to the computer system, so that the computer-readable code is stored and executed in a distributed manner.
[0096] Although in particular several embodiments of the present invention have been shown and described with reference to exemplary embodiments thereof, those skilled in the art will understand that without departing from the scope of the present invention as defined by the following claims, various changes can be made as to forms and details of the present invention.
Industrial Applicability [0097] An aspect of the present invention provides a storage medium on which text-based subtitle data containing style information is recorded, as well as a device and method for reproducing a storage medium.
8 priority claims, no other members on record
Priority claims8
| Document | Office | Kind | Date |
|---|---|---|---|
| 20030079244 | Republic of Korea | A | |
| 20030079244 | Republic of Korea | A | |
| 04818265 | European Patent Office (EPO) | A | |
| 04818265 | European Patent Office (EPO) | A | |
| 09166655 | European Patent Office (EPO) | A | |
| EP20040818265 | – | – | – |
| EP20090166655 | – | – | – |
| KR20030079244 | – | – | – |
Numbers
- Publication, DOCDB
- 2109109
- Publication, EPODOC
- PL2109109T
- Application
- 20090166655
- Application, DOCDB
- 09166655
- Application, EPODOC
- PL20090166655T
Titles2
- English
- Rendering of text-based subtitle data including user selectable style information
- Polish
- Renderowanie opartych na tekście danych napisów zawierających wybieralną przez użytkownika informację o stylu
Classification
- CPC, 11
- G11B20/10
- H04N5/913
- G11B27/105
- G11B27/329
- G11B2220/2541
- H04N5/775
- H04N5/85
- H04N9/8042
- H04N9/8205
- H04N9/8233
- H04N21/4884
- IPC, 8
- G11B20 10
- G11B27 10
- G11B27 32
- H04N5 775
- H04N5 781
- H04N5 85
- H04N9 804
- H04N9 82