METHOD AND DEVICE FOR DISPLAYING A PART OF A DIALOG

20180004379 · 2018-01-04

    Inventors

    Cpc classification

    International classification

    Abstract

    A method, performed by a computing device with a display, for displaying a part of a dialog, like e.g. a chat, between at least two participants is disclosed. The dialog comprises a set of speaking items, like speech bubbles, generated by the participants, and the speaking items generated by a single participant are arranged in a single column for display. The method comprises obtaining a sliding window comprising speaking items and moving according to information received from scrolling means. The method further comprises displaying a subset of speaking items arranged in columns, such that the width of a displayed speaking item 1 is determined as a function of the number of participants having at least one speaking item in the sliding window. A computing device for implementing the method and a computer program product are further disclosed.

    Claims

    1. A method, comprising: receiving scrolling data for displaying part of a dialog between at least two participants wherein said dialog comprises a set of dialog items generated by said at least two participants, said dialog items generated by a single participant being arranged in a single column for display; obtaining a sliding window comprising a number of dialog items and moving according to the scrolling data, the number of dialog items being kept constant after the sliding window slid from a first position to a second position; displaying a subset of dialog items arranged in columns, such that the width of a displayed dialog item is determined as a function of the number of participants having at least one dialog item in said sliding window.

    2. The method according to claim 1, wherein displaying said subset of dialog items further comprises determining said width of a displayed dialog item as an equal split of the total display width between the number of participants having at least one dialog item in said sliding window.

    3. The method according to claim 1, wherein displaying said subset of dialog items arranged in columns, further comprises obtaining a rank for each of said participant and ordering said columns according to said rank.

    4. The method according to claim 3, wherein displaying said subset of dialog items further comprises obtaining said rank for each participant as the order of appearance of the first dialog item generated by the corresponding participant in said dialog.

    5. The method according to claim 3, wherein displaying said subset of dialog items further comprises computing said rank for each participant as a ratio of the cumulated size of the dialog items generated by said participant in the dialog, over the cumulated size of all the dialog items of the dialog.

    6. The method according to claim 1, said dialog item comprises the total amount of dialog generated by a participant without interruption.

    7. The method according to claim 1, wherein said dialog item comprises a sentence.

    8. The method according to claim 1, wherein said dialog item comprises a word.

    9. A device comprising: a scrolling interface for receiving scrolling data for displaying a part of a dialog between at least two participants, wherein said dialog comprises a set of dialog items generated by said at least two participants, said dialog items generated by a single participant being arranged in a single column for display; a processor configured to obtain a sliding window comprising a number of dialog items and moving according to said scrolling data the number of dialog items being constant after the sliding window slid from a first position to a second position; the processor being further configured to send to a display a subset of dialog items arranged in columns, such that the width of a displayed dialog item is determined as a function of the number of participants having at least one dialog item in said sliding window.

    10. The device according to claim 9, wherein the processor is further configured to determine said width of a displayed dialog item as an equal split of the total display width between the number of participants having at least one dialog item in said sliding window.

    11. The device according to claim 9, wherein the processor is further configured to obtain a rank for each of said participant and to order said columns according to said rank.

    12. The device according to claim 11, wherein the processor is further configured to obtain said rank for each participant as the order of appearance of the first dialog item generated by the corresponding participant in said dialog.

    13. The device according to claim 11, wherein the processor is further configured to compute said rank for each participant as a ratio of the cumulated size of the dialog items generated by said participant in the dialog, over the cumulated size of all the dialog items of the dialog.

    14. The device according to claim 9, wherein said dialog item comprises the total amount of dialog generated by a participant without interruption.

    15. A computer-readable storage medium storing instructions of program code, executable by at least one processor for: receiving scrolling data for displaying a part of a dialog between at least two participants wherein said dialog comprises a set of dialog items generated by said at least two participants, said dialog items generated by a single participant being arranged in a single column for display; obtaining a sliding window comprising a number of dialog items and moving according to the scrolling data, the number of dialog items being kept constant after the sliding widow slid from a first position to a second position; displaying a subset of dialog items arranged in columns, such that the width of a displayed dialog item is determined as a function of the number of participants having at least one dialog item in said sliding window.

    Description

    4. BRIEF DESCRIPTION OF THE DRAWINGS

    [0027] In the drawings, an embodiment of the present invention is illustrated. It shows:

    [0028] FIG. 1 depicts a processing device for displaying a part of a dialog according to a specific and non-limitative embodiment of the invention;

    [0029] FIG. 2 represents an exemplary architecture of the processing device of FIG. 1 according to a specific and non-limitative embodiment of the invention;

    [0030] FIG. 3 represents a flow chart of a method for displaying a part of a dialog according to a specific and non-limitative embodiment of the invention;

    [0031] FIG. 4 represents an example of a dialog and of a sliding window according to a specific and non-limitative embodiment of the invention;

    [0032] FIG. 5 represents possible examples of displaying a part of a dialog in different scrolling situations, according to a specific and non-limitative embodiment of the invention.

    5. DETAILED DESCRIPTION OF THE INVENTION

    [0033] FIG. 1 depicts a processing device 1 for displaying a part of a dialog between at least two participants where a dialog comprises a set of speaking items generated by the participants, and where speaking items generated by a single participant are displayed in a single column. A group dialog may be of multiple form. It may be a dialog between a set of characters in a scene of a movie script. It may also be a dialog between several individuals over a network enabling multipoint communication means, where what is said by a group member may be received by anybody else in the group. A dialog between individuals communicating over a point to point network is also compatible with the invention. In the remaining of the document we describe the group dialog as a dialog between characters in a scene of a movie script, but the invention is applicable to any kind of group conversations including those over network systems.

    [0034] According to a specific and non-limitative embodiment of the invention, the processing device 1 comprises an input 10 configured to receive the dialog data which are obtained from a source. According to different embodiments of the invention, the source belongs to a set comprising: [0035] a local memory, e.g. a video memory, a RAM, a flash memory, a hard disk ; [0036] a storage interface, e.g. an interface with a mass storage, a ROM, an optical disc or a magnetic support; [0037] a communication interface, e.g. a wireline interface (for example a bus interface, a wide area network interface, a local area network interface) or a wireless interface (such as a IEEE 802.11 interface or a Bluetooth interface);
    The processing device 1 also comprises an input 12 to receive scrolling data from a user. Scrolling data are generated by a user via a scrolling mean in order to browse the dialog downward or upward. According to different embodiments of the invention, the scrolling mean belongs to a set comprising: [0038] a scroll wheel in a mouse for computer; [0039] a jog dial in a smartphone; [0040] at least two keys of a keyboard with user understandable signs such as upward and downward arrows; [0041] sub areas of a pad or of a touch screen, where one area is dedicated to scroll in one direction, and the other to scroll in the other direction.
    More generally any scrolling mean allowing to provide user requests for moving into one direction or the other, is compatible with this invention.
    The inputs 10 and 12 are linked to a processing module 14 configured to display on a display mean called output 18, a subset of dialog items according to the data received from the scrolling mean 12. According to a particular embodiment the display mean is external to the device and the module 18 is an output that sends the data to display to the external display mean. According to different embodiments of the invention, the display mean, internal or external, belongs to a set comprising: [0042] a personal computer screen; [0043] a TV screen; [0044] a tablet screen; [0045] a smartphone screen.
    More generally any display mean allowing to display a subset of the dialog items, is compatible with this invention.

    [0046] In a variant, the dialog data can be stored in a memory or can be sent to a destination. As an example, such information is stored in a remote or in a local memory, e.g. a video memory or a RAM, a hard disk. In a variant, the information is sent to a storage interface, e.g. an interface with a mass storage, a ROM, a flash memory, an optical disc or a magnetic support and/or transmitted over a communication interface, e.g. an interface to a point to point link, a communication bus, a point to multipoint link or a broadcast network.

    [0047] FIG. 2 represents an exemplary architecture of the processing device 1 according to a specific and non-limitative embodiment of the invention. The processing device 1 comprises one or more processor(s) 110, which is(are), for example, a CPU, a GPU and/or a DSP (English acronym of Digital Signal Processor), along with internal memory 120 (e.g. RAM, ROM, EPROM). The memory stores a database comprising dialog data. The processing device 1 comprises one or several Input/Output interface(s) 130 adapted to send to display output information and/or allow a user to enter commands and/or data (e.g. a keyboard, a mouse, a touchpad, a webcam, a display); and a power source 140 which may be external to the processing device 1. The processing device 1 may also comprise network interface(s) (not shown).

    [0048] According to an exemplary and non-limitative embodiment of the invention, the processing device 1 further comprises a computer program stored in the memory 120. The computer program comprises instructions which, when executed by the processing device 1, in particular by the processor 110, make the processing device 1 carry out the processing method described with reference to FIG. 3. According to a variant, the computer program is stored externally to the processing device 1 on a non-transitory digital data support, e.g. on an external storage medium such as a HDD, CD-ROM, DVD, a read-only and/or DVD drive and/or a DVD Read/Write drive, all known in the art. The processing device 1 thus comprises an interface to read the computer program. Further, the processing device 1 could access one or more Universal Serial Bus (USB)-type storage devices (e.g., “memory sticks.”) through corresponding USB ports (not shown).

    According to exemplary and non-limitative embodiments, the processing device 1 is a device, which belongs to a set comprising: [0049] a mobile device ; [0050] a communication device ; [0051] a game device ; [0052] a tablet (or tablet computer) ; [0053] a laptop ; [0054] a web server (e.g. a broadcast server, a video-on-demand server).

    [0055] FIG. 3 represents a flow chart of a method for displaying a part of a dialog between at least two participants. Without any limitation or loss of generality, but in order to increase the clarity, the dialog is described as a script for a movie, where a dialog participant is a character of the movie, but the invention is applicable to any kind of group dialog. A dialog comprises dialog items, where a dialog item is of several types. A first type of dialog item, called speaking item 400 as shown on FIG. 4, is a piece of dialog said by one character. It comprises one or more sentences. A second type of dialog item, called descriptive item 410 as shown on FIG. 4, is a description of an action performed by one or more characters in the scene, or a description of a situation in the scene. A single dialog may comprise for example both speaking items and descriptive items. In another example a dialog may comprise only speaking items. Advantageously a speaking item 400 comprises a piece of dialog said by one character without interruption by another character or by a descriptive item. Dialog items are used as unitary blocs for the group dialog display method, as described later. In a variant a dialog item is a sentence. In another variant a dialog item is a word. In yet another variant a dialog item is a set of words. More generally any type of word or sentence grouping for determining the unitary bloc granularity of a dialog item, is compatible with this invention. Dialog items 400, 410 are stored in a database 32.

    [0056] In the method of displaying a part of dialog between at least two participants, a sliding window 40 as shown in FIG. 4, is obtained in a step S30 according to information received from a scrolling mean 30. The sliding window 40 comprises speaking items 400 to 405, arranged in columns so that a column 41 as shown in FIG. 4, comprises speaking items generated by a unique character. Advantageously dialog items are vertically ordered according to the time they occur in the scene, and the sliding window vertically moves over the columns according to upward or downward information received from a user via the scrolling means. Advantageously the sliding window comprises only complete dialog items. In other words, either a dialog item is in the sliding window or it is not. Advantageously the sliding window comprises a constant number of dialog items. For example the number of dialog items keeps constant after the sliding window has slid from a first position to a second position. Consequently, whatever its position over the dialog, the size of the sliding window is constant in number of dialog items. In case the dialog item comprises only speaking items as mentioned above, the size of the sliding window in terms of number of speaking items remains constant after the window has slid from a first position to a second positon. In the step S32 of display of a subset of dialog items, dialog items are retrieved from the database 32 in a sub step S320. The number of retrieved dialog items depends on the sliding window size. The dialog items themselves depend on the sliding window position. More precisely the dialog items currently comprised in the sliding window are retrieved from the database 32. In the sub step S322 the width of the displayed speaking items present in the sliding window is determined as a function of the number of participants having at least one speaking item in the sliding window. In other words the number of characters having a piece of dialog in the sliding window is determined and then used to optimize the display area in order to have a better rendering of the current dialog. Advantageously the width of a displayed speaking item is an equal split of the total display width between the number of participants having at least one speaking item is the sliding window. In a variant only the maximum width of a displayed speaking item is an equal split of the total display width between the number of participants having at least one speaking item is the sliding window. In other words, the width of a displayed speaking item may be less than the equal split of the total display width, if the size of the speaking item is small. More generally any function used to determine a speaking item width based on the number of participants having at least one speaking item in the sliding window, is compatible with the invention.

    [0057] The size of the sliding window has a direct impact on the display of the dialog items. The size of the sliding window is expressed in number of dialog items. In one extreme, if the size of the sliding window is equal to the number of dialog items of the whole dialog, all the columns are displayed whatever information is received from the scrolling means. On the other extreme, if the size of the sliding window is equal to two, then a maximum of two columns are displayed. Therefore, in order to limit the number of displayed character's dialog to two, the size of the sliding window is set to two. Advantageously the size of the sliding window is adjusted to the available display area of the display mean 34. For example with a small display size, it is advantageous to choose the size of the sliding window in order to enforce a maximum threshold regarding the number of displayed characters, as the number of displayed characters is always smaller than the sliding window size. In a first variant the size of the sliding window is constant for the whole script. In a second variant the size of the window is constant for a scene of the movie script. In yet another variant the size of the sliding window is constant over a scene or the movie script, but reduced to a few dialog items when the sliding window is at the top or at the bottom of the dialog.

    [0058] An advantage of the disclosed method is to reduce or even avoid the need for lateral scrolling in the dialog in case the number of participants exceeds the display width capacity of the device displaying the dialog. More precisely, according to a particular embodiment, dialog items are for example vertically ordered according to the time they occurred and horizontally arranged according to which participant generated them, resulting for example in one column per participant. Dialog items are displayed by the device over time and participants according to upward/downward and left/right information received from a user via a scrolling mean. In case the number of dialog participants does not exceed the display width capacity of the device, no lateral scrolling is needed to browse the dialog. But in case the number of dialog participants exceeds the display width capacity of the device, lateral scrolling is required in addition to vertical scrolling while browsing the dialog. The disclosed principles are advantageous as they remove the need for lateral scrolling as long as the number of participants having a dialog item in the sliding window does not exceed the display width capacity of the device displaying dialog items of the sliding window.

    [0059] In a particular embodiment, the width of the displayed descriptive items is adjusted to the total display width. In a variant, the maximum width of the displayed descriptive items is adjusted to the total display width. For example, if the amount of data comprised in the descriptive item is small, the width of the displayed descriptive item may be less than the total display width.

    [0060] In the sub step S324, columns are ordered for display. As the number of columns varies according to the sliding window move and to the speaking items it comprises, a strategy is determined so as to order the columns for display. In a particular embodiment, a rank is obtained for a column, and the columns are ordered according to the rank. In a first variant, the first rank, and therefore the first column is allocated to the character who has the first speaking item in the dialog, the second column to the second and so on. This variant is simple but it may imply many column changes for the same character while scrolling in the dialog, even in a reduced set of characters. Too frequent column swaps make the reading of the movie script a painful task for a user. In a second variant, a rank is determined in function of characteristics of its corresponding character. For example a characteristic of a character is the importance of the character in the movie, set by the script author. In another example a characteristic of a character is the importance of the character in the scene of the movie. In another variant the rank of a column is determined as a ratio of the cumulated size of the speaking items generated by the corresponding character in the dialog, over the cumulated size of all the speaking items of the dialog. In some way, the rank therefore reflects the importance of the character in the dialog. In another variant the rank is determined as a ratio of the cumulated size of the speaking items generated by the character over the cumulated size of all the speaking items, wherein the sizes are cumulated over the sliding window. In yet another variant, the rank is dynamically computed so as to minimize the column swaps while scrolling over the dialog.

    [0061] Then the subset of dialog items, arranged in columns are displayed on a display mean 34. Advantageously when the last scrolling event received from the scrolling mean indicates downward, the first dialog item of the sliding window is displayed first, and when the last scrolling event received from the scrolling means indicates upward, the last dialog item of the sliding window is displayed first.

    [0062] FIG. 4 represents an example of a dialog and of a sliding window according to a specific and non-limitative embodiment of the invention. The dialog represented in FIG. 4 comprises six speaking items 400, 401, 402, 403, 404, 405 and one descriptive item 410. The dialog comprises four characters, and therefore the speaking items are arranged in four columns 41. The sliding window 40 is located at the top of the dialog and comprises three speaking items 400, 401, 402, generated by three different characters. Therefore according to a specific and non-limitative embodiment of the invention, the total width of the display is split in three equal parts for determining the maximum width allocated for the display 40d of the speaking items of the sliding window 40. Displayed speaking items 400d, 401d, 402d correspond to the speaking items 400, 401 and 402 of the sliding window 40. As speaking items 400, 402 contain a sufficient amount of text the width of their corresponding displayed speaking items is equal to split of the total width display. As the speaking item 401 contains a small amount of text, the width of its corresponding displayed speaking item 401d is less than the equal split of the total width display. Also the displayed speaking items are arranged in columns wherein the columns are ordered according to the rank of the corresponding character.

    [0063] FIG. 5 represents possible examples of displaying a part of a dialog between four characters in different scrolling situations, according to a specific and non-limitative embodiment of the invention. A sliding window is represented in three different positions 50, 52 and 54 over a dialog 56 according to downward information 57 received from a scrolling mean. The sliding window 50 comprises three speaking items generated by three different participants. According to a specific and non-limitative embodiment of the invention, the total width of the display is split in three equal parts for determining the width allocated for the display 51 of the speaking items of the sliding window 50. According to downward information received from a scrolling mean, the sliding window 52 has moved downward of one dialog item. The sliding window 52 comprises three speaking items generated by two different participants. According to a specific and non-limitative embodiment of the invention, the total width of the display is split in two equal parts for determining the width allocated for the display 53 of the speaking items of the sliding window 52. After the reception of more downward scrolling information, the sliding window 54 is at the bottom of the dialog and comprises three dialog items among which two dialog items are speaking items and one dialog item is a descriptive item. The sliding window 54 comprises speaking items generated by two different participants. According to a specific and non-limitative embodiment of the invention, the total width of the display is split in two equal parts for determining the width allocated for the display 55 of the displayed speaking items 550 of the sliding window 52. According to a specific and non-limitative embodiment of the invention, the displayed descriptive item 551 width is adjusted to the total width of the display 55 of the dialog subset.