Method and system for creating stickers from user-generated content

Example aspects include techniques for creating video stickers from user-generated content. These techniques may include receiving selection of a video content item previously uploaded to a SMP server application corresponding to the SMP client application, and presenting a graphical user interface (GUI) for receiving one or more derivative attributes for generating a derivative video sticker from the video content item. In addition, the techniques may include adding the derivative video sticker to a library of stickers provided by the SMP server application to a plurality of SMP client applications, and presenting the derivative video sticker within a communication interface associated with the SMP server application.

BACKGROUND

With the widespread adoption of digital forms of communications, the usage of stickers has rapidly increased. For example, stickers are commonly employed in social media applications and messaging applications. Some examples of stickers include animated emoticons, gifs, and other visual representations used in digital communications. As users seek more expressive digital communication experiences, many users will endeavor to create custom stickers that heighten and enrich their user experience instead of relying on stock stickers provided by developers. However, sticker creation and custom sticker usage is currently not native to social media applications and messaging applications, which negatively impacts usability and frustrates the moderation efforts of application developers.

SUMMARY

In some aspects, the techniques described herein relate to a method including: receiving selection of a video content item previously uploaded to a SMP server application corresponding to the SMP client application; presenting a graphical user interface (GUI) for receiving one or more derivative attributes for generating a derivative video sticker from the video content item; adding the derivative video sticker to a library of stickers provided by the SMP server application to a plurality of SMP client applications; and presenting the derivative video sticker within a communication interface associated with the SMP server application.

In some aspects, the techniques described herein relate to a method including: transmitting video content item to a SMP client application; receiving, from a first SMP client application, one or more derivative attributes for generating a derivative video sticker based on the video content item; generating the derivative video sticker based on the video content item and the one or more derivative attributes; adding the derivative video sticker to a collection of stickers provided to a plurality of SMP client applications; and presenting the derivative video sticker within a communication interface of a second SMP client application.

In another aspect, an example computer-readable medium (e.g., non-transitory computer-readable medium) storing instructions for performing the methods described herein, an example system or device configured to perform operations of the methods described herein, and an example apparatus including means of performing operations of the methods described herein are also disclosed.

Additional advantages and novel features relating to implementations of the present disclosure will be set forth in part in the description that follows, and in part will become more apparent to those skilled in the art upon examination of the following or upon learning by practice thereof.

DETAILED DESCRIPTION

This disclosure describes techniques for creating video stickers from user-generated content. Aspects of the present disclosure generate custom stickers and incorporate the stickers as native elements to a social media platform. In particular, aspects of the present disclosure receive user-generated content from a social media platform, generate a customer sticker within a social media application based on the user-generated content, distribute the custom sticker to different users of the social media platform, and integrate the customer sticker into native interfaces (e.g., messaging interfaces, sticker library interfaces, etc.) of the social media application. As a result, the present disclosure may be used to introduce sticker customization to social media platforms, and/or to increase usability for users endeavoring to employ custom stickers, and/or to enable effective moderation of custom stickers.

Illustrative Environment

FIG.1illustrates an example architecture of a social media platform (SMP) system100, in accordance with some aspects of the present disclosure. The SMP system100may be configured to provide social media applications and digital messaging services.

As illustrated inFIG.1, the SMP system100may include a SMP102and a plurality of client devices104(1)-(n). Some examples of the client device104include cellular phones, smartphones, tablets, wearable devices, desktops, workstations, virtual machines, etc. Further, the SMP system100may include one or more communication networks106(1)-(n). In some implementations, the communication network(s)106may include one or more of a wired and/or wireless private network, personal area network, local area network, wide area network, and/or the Internet. Further, in some aspects, the SMP102and the plurality of client devices104(1)-(n) may be configured to communicate via the communication network(s)106(1)-(n).

As illustrated inFIG.1, the SMP102may include a SMP server application108. The SMP server application108may be a video sharing social networking service. For example, in some aspects, a user of the SMP102may be able to view video content generated by other users via the SMP server application108. In some other examples, users of the SMP102may be able to communicate to each other via direct messaging or group messaging via the SMP server application108.

As illustrated inFIG.1, a client device104(1) may include SMP client application110for providing access to the SMP102. For example, the SMP client application110may capture user-generated content created by a user, upload the user-generated content to the SMP102for consumption by other users, and present a feed including user-generated content created by the other users to the user. In some aspects, the user-generated content may be video content items112(1)-(n) and other content related to the video content items112(1)-(n). Further, the user-generated content may be presented within feed information114(1)-(n) transmitted to the SMP client applications110(1)-(n) from the SMP server application108. In some aspects, the feed information114may be personalized for each SMP client application110based upon a user and/or account associated with the SMP client application110.

Further, as described in detail herein, the SMP client application110may be configured to create video stickers116(1)-(n) and present the video stickers116(1)-(n) within graphical user interfaces (GUIs) of the SMP client application110. As used herein, in some aspects, a video sticker116may refer to a video clip including textual information, graphical effects, static images, and animated images. As illustrated inFIG.1, the SMP client application110may include a sticker generation module118that presents a GUI for generating a video sticker116based on a video content item112received from the SMP server application108. In particular, the GUI may receive one or more derivative attributes120(1)-(n) for generating a video sticker116from a video content item112. The derivative attributes120may include special effects to apply to the video content item112within the derivative video sticker116, one or more captions to include within the derivative video sticker116, an overlay sticker to include within the derivative video sticker116, and/or trimming information identifying a portion of the video content item112to include in the derivative video sticker116. Upon receipt of the derivative attributes120via the GUI, the sticker generation module118may generate a derivative video sticker116based on the video content item112and the derivative attributes120. Further, the sticker generation module118may transmit the derivative video sticker116to the SMP server application108to be stored within a library of video stickers116, and distributed to and/or consumed by other SMP client applications110(2)-(n) and/or other client devices104(2)-(n). In some other aspects, the sticker generation module118may receive the derivative attributes120(1)-(n) via the GUI and transmit the derivative attributes120(1)-(n) to the SMP server application108, which may generate a derivative video sticker116based on the video content item112and the derivative attributes120, and distribute the derivative video sticker116to other SMP client applications110(2)-(n) and/or other client devices104(2)-(n).

Additionally, the SMP client application110may transmit messages124(1)-(n) to other SMP client applications110on the other client devices104(2)-(n) and receive messages124(1)-(n) from other SMP client applications110on the other client devices104(2)-(n). In some aspects, the SMP client application110may include a communication module126for receiving a message124from a user via a GUI and transmitting the message124to one or more to other SMP client applications110. Further, the communication module126may receive messages124(1)-(n) from other SMP client applications110and present the messages124(1)-(n) to a user within the SMP client application110via a GUI. As described herein, in some aspects, the messages124may include derivative video stickers116, as illustrated inFIG.7.

In addition, in some aspects, the communication module126may manage the feed information114. For example, the communication module126may be used to post user-generated content (e.g., a video content item112) to the SMP server application108for distribution as the feed information114or post user-generated content (e.g., comments) in response to the feed information114received from the SMP server application108. As described herein, in some aspects, the user-generated content may include derivative video stickers116.

Further, in some aspects, the communication module126may request access to the video stickers116(1)-(n) of the SMP server application108. For example, the communication module126may transmit library requests128(1)-(n) to the SMP server application108. In some aspects, the library request128may include one or more query terms identifying the type of video stickers116to provide to the SMP client application110in response to the library request128. Upon receipt of the video stickers116from the SMP server application108, the communication module126may natively present the video stickers116within a GUI of the SMP client application110, as illustrated inFIGS.6-7. Further, the video stickers116received in the library request may be stored on the client device104and presented for selection within GUIs of the SMP client application110for inclusion in messages124(1)-(n) and feed information114(1)-(n).

As illustrated inFIG.1, the SMP server application108may include a content management module130, a sticker generation module132, the plurality of video content items112(1)-(n), and the plurality of video stickers116(1)-(n). The content management module130may manage the storage and distribution of the plurality of video content items112(1)-(n) and the plurality of video stickers116(1)-(n). In some aspects, the content management module130may transmit the plurality of video stickers116(1)-(n) to the SMP client applications110(1)-(n) in response to the plurality of library requests128(1)-(n). Further, the content management module130may moderate content usage associated with the SMP102by restricting distribution and use of the video content items112and/or the video stickers116. For example, the content management module130may receive flags134(1)-(n) from the SMP client applications110. In some aspects, a flag134may identify a video content item112or a video sticker116as inappropriate (e.g., the video content item or video sticker may include nudity, hate speech, or unlicensed content not permitted within the SMP system100). In response to a flag134the SMP server application108may delete the video content item112or the video sticker116or mark the video content item112or video sticker116for later review. Further, if the flag134identifies a video content item112, the content management module130may identify video stickers116derived from the video content item112and delete the video stickers116or mark the video stickers116for later review. In addition, the SMP server application108may transmit flag information136to the SMP client applications110that identifies a video content item112or a video sticker116that has been flagged and/or video stickers116derived from a video content item112that has been flagged. In response to the flag information136, a SMP client application110may delete a locally-stored version of the video content item112and/or video sticker116identified within the flag information136. In some aspects, the SMP client application110may remove the video content item112and/or video sticker116identified within the flag information136from messages124(1)-(n) that have been previously transmitted between SMP client applications110, and/or prevent presentation of the video sticker116identified within GUIs of the SMP client application.

As illustrated inFIG.1, the sticker generation module132may generate video stickers116based on video content items112and derivative attributes120received from the SMP client applications110(1)-(n). In some aspects, the derivative attributes120may include special effects to apply to the video content item112within the derivative video sticker116, a caption to include within the derivative video sticker116, an overlay sticker to include within the derivative video sticker116, or trimming information identifying a portion of the video content item112to include in the derivative video sticker116. Upon receipt of the derivative attributes120from a SMP client application110, the sticker generation module132may generate a derivative video sticker116based on the corresponding video content item112and the derivative attributes120. Further, the sticker generation module132may store the generated video sticker116with the plurality of stickers116(1)-(n).

FIG.2illustrates an example of graphical user interfaces for initiating generation of a video sticker, in accordance with some aspects of the present disclosure. As illustrated inFIG.2, a user may endeavor to create a derivative video sticker from a video content item202displayed in a first GUI204. As such, the user may select a first control206in the first GUI204. In response to selection of the first control206, the user may be presented with a second GUI208. As illustrated inFIG.2, the second GUI208may include a second control210for creating a video sticker. Upon selection of the second control210, the sticker generation module118may present a third GUI212for providing derivative attributes for create a video sticker.

FIG.3illustrates an example of graphical user interfaces for designing a video sticker, in accordance with some aspects of the present disclosure. As illustrated inFIG.3, the sticker generation module118may present a first GUI302including one or more controls304for selecting one or more special effects (e.g., filters, transitions, motion graphic effects, animations, sounds, etc.) to apply and/or add to a video content item112to generate a video sticker116, and trimming the video content item112to determine the portion of the video content item112to be used in the video sticker116. Additionally, the sticker generation module118may present a second GUI306including one or more second controls308for cropping the video control item and selecting an aspect ratio for the video sticker. Further, the sticker generation module118may present a third GUI310including one or more third controls312for adding a caption to a video sticker and applying one or more special effects to the text of the caption.

FIG.4illustrates an example graphical user interface for saving a video sticker design, in accordance with some aspects of the present disclosure. Once a user has finished providing derivative attributes (e.g., the derivative attributes120), the user may select a control402for generating and saving a video sticker within the GUI404. In some aspects, the sticker generation module118may generate a derivative sticker116in response to selection of the control402, and upload the derivative sticker to the SMP server application. In some other aspects, the sticker generation module118may transmit the derivative attributes to the SMP server application108, which will generate the derivative sticker116.

FIG.5illustrates an example graphical representation500of a content ecosystem, in accordance with some aspects of the present disclosure. As illustrated inFIG.5, the content ecosystem502of a SMP (e.g., the SMP102) may include a plurality of video content items504(1)-(n) (e.g., the video content items112(1)-(n)). Further, as described in detail herein, users may create derivative stickers506(1)-(n) based on the plurality of content items504(1)-(n). Further, as described herein, in some aspects, the relationship between a content item504and one or more corresponding derivative stickers506(1)-(n) may be used to moderate content within the content ecosystem502. For example, if a content item504is flagged as including inappropriate content or unauthorized use of protected content, the derivative stickers506generated from the flagged content item504may also be flagged. In some examples, the flagged content may be removed from the content ecosystem502or added to a queue for additional review.

FIG.6illustrates example graphical user interfaces for viewing a collection of video stickers, in accordance with some aspects of the present disclosure. In some aspects, a user may endeavor to use a video sticker116during communications with another user. For example, a user may be using a first GUI602to transmit direct messages (e.g., the messages124) to another user and receive direct messages (e.g., the messages124) from the other user. Further, the user may select a first control604for adding content to a direct message. Upon selection of the first control604, the communication module126may present a second GUI606for adding content to a message. As illustrated inFIG.6, the second GUI may include a second control608for viewing a library of video stickers. Upon selection of the second control608, the communication module126may present a third GUI610including a library of selectable video stickers612(1)-(n). In some aspects, the library of selectable of video stickers612may include derivative video stickers.

FIG.7illustrates example graphical user interfaces for inserting a video sticker into a message, in accordance with some aspects of the present disclosure. In some aspects, the communication module126may present a first GUI702including a library of selectable video stickers704(1)-(n) (e.g., the video stickers116(1)-(n)). In some aspects, the library of selectable of video stickers704(1)-(n) may include derivative video stickers. Upon selection of a video sticker704by a user, the communication module126may transmit the video sticker704within a message (e.g., a message124) and display the video sticker within a second GUI706showing the messages exchanged within a conversation.

FIG.8illustrates example graphical user interfaces for favoriting a video sticker, in accordance with some aspects of the present disclosure. In some aspects, the SMP client application may present a first GUI802including a library of selectable video stickers804(1)-(n). Further, in some aspects, upon selection of a video sticker806with the first GUI802, the video sticker806may be categorized as favorited content within the SMP client application. As such, the selected video sticker806may be subsequently displayed with a graphical effect and/or an area of the second GUI808associated with favorited/bookmarked content. For example, as illustrated in a second GUI808, the selected video sticker806may displayed with a graphical effect810(e.g., a filled star) to identify that it is favorited content. In some aspects, the selection of the video sticker as favorited content may include pressing an area of the first GUI corresponding to the graphical effect810.

FIG.9illustrates example graphical user interfaces for viewing video sticker information, in accordance with some aspects of the present disclosure. In some aspects, the SMP client application may present a GUI902including a library of video stickers904(1)-(n). Further, in some aspects, upon performance of gesture input906(e.g., a long press on an area of a touch screen interface or button of a client device104) with respect to a video sticker908of the library of video stickers904, related content910may be displayed within the SMP client application. For example, the SMP client application may update the GUI902to including the related content910. As illustrated inFIG.9, the related content910may include a control for viewing other video stickers created by the same creator as the video sticker908, a control for viewing the video content item that the video sticker is derived from, and a control for flagging the video sticker908. For example, in some aspects, the related content910may display source information (e.g., a selectable control corresponding to the original video item from which the video sticker derives). Further, in response to selection of the source information, the GUI902may display the video content item from which the video sticker derives.

EXAMPLE PROCESSES

FIG.10is a flow diagram illustrating an example method for creating derivative video stickers on a client device, in accordance with some aspects of the present disclosure.

The process described inFIG.10below is illustrated as a collection of blocks in a logical flow graph, which represent a sequence of operations that can be implemented in hardware, software, or a combination thereof. In the context of software, the blocks represent computer-executable instructions stored on one or more computer-readable storage media that, when executed by one or more processors, perform the recited operations. Generally, computer-executable instructions include routines, programs, objects, components, data structures, and the like that perform particular functions or implement particular abstract data types. The order in which the operations are described is not intended to be construed as a limitation, and any number of the described blocks can be combined in any order and/or in parallel to implement the processes. The operations described herein may, but need not, be implemented using the SMP client application110. By way of example and not limitation, the method1000is described in the context ofFIGS.1-9and12. For example, the operations may be performed by one or more of the SMP client application110, the sticker generation module118, and/or the communication module126.

At block1002, the method1000may include receiving selection of a video content item previously uploaded to a SMP server application corresponding to the SMP client application. For example, the SMP client application110may receive a video content item112from the SMP server application108, as illustrated inFIG.2. Further, the video content item112may be user-generated content provided by another SMP client application110to the SMP server application108.

Accordingly, the client device104, the system/device1200, and/or the processor501executing the SMP client application110may provide means receiving selection of a video content item previously uploaded to a SMP server application corresponding to the SMP client application.

At block1004, the method1000may include presenting a graphical user interface (GUI) for receiving one or more derivative attributes for generating a derivative video sticker from the video content item. For example, the sticker generation module118may receive the derivative attributes120(1)-(n) via a GUI, as illustrated inFIGS.2-3.

Accordingly, the client device104, the system/device1200, and/or the processor501executing the sticker generation module may provide means for presenting a graphical user interface (GUI) for receiving one or more derivative attributes for generating a derivative video sticker from the video content item.

At block1006, the method1000may include adding the derivative video sticker to a library of stickers provided by the SMP server application to a plurality of SMP client applications. For example, the SMP client application110may generate a video sticker116and transmit the video sticker116to the SMP server application108to be stored with the plurality of video stickers116made available to other SMP client applications110.

Accordingly, the client device104, the system/device1200, and/or the processor501executing the sticker generation module118may provide means for adding the derivative video sticker to a library of stickers provided by the SMP server application to a plurality of SMP client applications.

At block1008, the method1000may include presenting the derivative video sticker within a communication interface associated with the SMP server application. For example, the communication module126may transmit a message to another SMP client application110including the video sticker116, as illustrated inFIGS.6-7. As another example, the communication module126may add the video sticker116to user-generated content (e.g., a video content item112) to be distributed by the SMP server application108as feed information.

Accordingly, the client device104, the system/device1200, and/or the processor501executing the communication module126may provide means for presenting the derivative video sticker within a communication interface associated with the SMP server application.

In some aspects, the techniques described herein relate to the method1000, further including generating the derivative video sticker from the video content item by applying the one or more derivative attributes to the video content item.

In some aspects, the techniques described herein relate to the method1000, wherein the one or more derivative attributes include at least one of: a sticker effect to apply to the video content item within the derivative video sticker; a caption to include within the derivative video sticker; an overlay sticker to include within the derivative video sticker; or trimming information identifying a portion of the video content item to include in the derivative video sticker.

In some aspects, the techniques described herein relate to the method1000, wherein the communication interface is a direct messaging interface for communicating with a SMP client application on another device.

In some aspects, the techniques described herein relate to the method1000, wherein presenting the derivative video sticker includes presenting a plurality of stickers for selection for use within the SMP client application, the plurality of stickers including the derivative video sticker.

In some aspects, the techniques described herein relate to the method1000, further including: receiving selection of the derivative video sticker within sticker selection interface of the SMP client application; and displaying derivation information associated with the derivative video sticker based upon the selection, the derivation information including an account of a creator of the derivative video sticker.

In some aspects, the techniques described herein relate to the method1000, further including: receiving selection of the derivative video sticker within sticker selection interface of the SMP client application; and adding the derivative video sticker to a collection of favorited stickers based upon the selection.

In some aspects, the techniques described herein relate to the method1000, further including: receiving flag information from the SMP server application, the flag information identifying the video content item and/or the derivative video sticker; and preventing access to the derivative video sticker via the SMP client application based upon the flag information.

In some aspects, the techniques described herein relate to the method1000, further including displaying source information of the derivative video sticker, the source information corresponding to the video content item; and displaying the video content item in response to selection of a control associated with the source information.

While the operations are described as being implemented by one or more computing devices, in other examples various systems of computing devices may be employed. For instance, a system of multiple devices may be used to perform any of the operations noted above in conjunction with each other.

FIG.11is a flow diagram illustrating an example method for creating derivative video stickers on a server device, in accordance with some aspects of the present disclosure.

The process described inFIG.11below is illustrated as a collection of blocks in a logical flow graph, which represent a sequence of operations that can be implemented in hardware, software, or a combination thereof. In the context of software, the blocks represent computer-executable instructions stored on one or more computer-readable storage media that, when executed by one or more processors, perform the recited operations. Generally, computer-executable instructions include routines, programs, objects, components, data structures, and the like that perform particular functions or implement particular abstract data types. The order in which the operations are described is not intended to be construed as a limitation, and any number of the described blocks can be combined in any order and/or in parallel to implement the processes. The operations described herein may, but need not, be implemented using the SMP server application108. By way of example and not limitation, the method1100is described in the context ofFIGS.1-9and12. For example, the operations may be performed by one or more of the SMP server application108, the content management module130, and/or the sticker generation module132.

At block1102, the method1100may include transmitting video content item to a SMP client application. For example, the SMP server application108may transmit a video content item112to a SMP client application110. Further, the video content item112may be user-generated content provided by another SMP client application110to the SMP server application108.

Accordingly, the client device104, the system/device1200, and/or the processor501executing the SMP server application108may provide means for transmitting video content item to a SMP client application.

At block1104, the method1100may include receiving, from a first SMP client application, one or more derivative attributes for generating a derivative video sticker based on the video content item. For example, the sticker generation module132may receive derivative attributes120for generating a video sticker116based on the video content item112from the SMP client application110.

Accordingly, the client device104, the system/device1200, and/or the processor501executing the sticker generation module132may provide means for receiving, from a first SMP client application, one or more derivative attributes for generating a derivative video sticker based on the video content item.

At block1106, the method1100may include generating the derivative video sticker based on the video content item and the one or more derivative attributes. For example, the sticker generation module132may generate a video sticker116based on the derivative attributes120and the video content item112.

Accordingly, the client device104, the system/device1200, and/or the processor501executing the sticker generation module132may provide means for generating the derivative video sticker based on the video content item and the one or more derivative attributes.

At block1108, the method1100may include adding the derivative video sticker to a collection of stickers provided to a plurality of SMP client applications. For example, the content management module130may store the video sticker116among the plurality of video stickers116for distribution to the SMP client applications110.

Accordingly, the client device104, the system/device1200, and/or the processor501executing the content management module130may provide means for adding the derivative video sticker to a collection of stickers provided to a plurality of SMP client applications.

At block1110, the method1100may include presenting the derivative video sticker within a communication interface of a second SMP client application. For example, the SMP server application108may receive a library request128from another SMP client application110and transmit the video sticker116to the other SMP client application110in response to the library request128. Upon receipt of the video sticker116, the SMP client application110may present the video sticker116within a messaging GUI of the SMP client application110. Further, the SMP client application110may transmit messages including the video sticker116to other SMP client applications110. In addition, in some examples, the SMP server application108may transmit feed information114including a derivative video sticker116.

Accordingly, the client device104, the system/device1200, and/or the processor501executing the content management module130may provide means for presenting the derivative video sticker within a communication interface of a second SMP client application.

In some aspects, the techniques described herein relate to the method1100, wherein presenting the derivative video sticker comprises receiving a request for one or more stickers from the second SMP client application and transmitting the derivative video sticker to the second SMP client application in response to the request.

In some aspects, the techniques described herein relate to the method1100, further comprising receiving flag information identifying the video content item and removing the derivative video sticker from the collection of stickers based on the flag information.

In some aspects, the techniques described herein relate to the method1100, further comprising receiving flag information identifying the video content item and removing the derivative video sticker from the communication interface based on the flag information.

In some aspects, the techniques described herein relate to the method1100, wherein the one or more derivative attributes include at least one of: a sticker effect to apply to the video content item within the derivative video sticker; a caption to include within the derivative video sticker; an overlay sticker to include within the derivative video sticker; or trimming information identifying a portion of the video content item to include in the derivative video sticker.

Illustrative Computing Device

FIG.12illustrates a block diagram of an example computing system/device1200(e.g., the SMP102, the client device104) suitable for implementing example embodiments of the present disclosure. The system/device1200may be a general-purpose computer, a physical computing device, or a portable electronic device, or may be practiced in distributed cloud computing environments where tasks are performed by remote processing devices that are linked through a communication network. The system/device1200can be used to implement any of the processes described herein.

As depicted, the system/device1200includes a processor1201which is capable of performing various processes according to a program stored in a read only memory (ROM)1202or a program loaded from a storage unit1208to a random-access memory (RAM)1203. In the RAM1203, data required when the processor1201performs the various processes or the like is also stored as required. The processor1201, the ROM1202and the RAM1203are connected to one another via a bus1204. An input/output (I/O) interface1205is also connected to the bus1204.

The processor1201may be of any type suitable to the local technical network and may include one or more of the following: general purpose computers, special purpose computers, microprocessors, digital signal processors (DSPs), graphic processing unit (GPU), co-processors, and processors based on multicore processor architecture, as non-limiting examples. The system/device1200may have multiple processors, such as an application-specific integrated circuit chip that is slaved in time to a clock which synchronizes the main processor.

A plurality of components in the system/device1200are connected to the I/O interface1205, including an input unit1206, such as a keyboard, a mouse, microphone) or the like; an output unit1207including a display such as a cathode ray tube (CRT), a liquid crystal display (LCD), or the like, and a speaker or the like; the storage unit1208, such as disk and optical disk, and the like; and a communication unit1209, such as a network card, a modem, a wireless transceiver, or the like. The communication unit1209allows the system/device1200to exchange information/data with other devices via a communication network, such as the Internet, various telecommunication networks, and/or the like.

The methods and processes described above, such as the method1100, can also be performed by the processor1201. In some embodiments, the method1100can be implemented as a computer software program or a computer program product tangibly included in the computer readable medium, e.g., storage unit1208. In some embodiments, the computer program can be partially or fully loaded and/or embodied to the system/device1200via ROM1202and/or communication unit1209. The computer program includes computer executable instructions that are executed by the associated processor1201. When the computer program is loaded to RAM1203and executed by the processor1201, one or more acts of the method1100described above can be implemented. Alternatively, processor1201can be configured via any other suitable manners (e.g., by means of firmware) to execute the methods1000or1100in other embodiments.

CONCLUSION

In closing, although the various embodiments have been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended representations is not necessary limited to the specific features or acts described. Rather, the specific features and acts are disclosed as example forms of implementing the claimed subject matter.