Method and system for sharing snapshots extracted from a video transmission

By converting television video transmission to lower bandwidth and generating snapshots through a receiver, the problem of users having difficulty taking screenshots of television programs is solved, and the effect of efficiently generating and sharing television snapshots on mobile devices is achieved.

CN114567801BActive Publication Date: 2025-11-04NAGRAVISION SA
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202210366088.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2016-02-12
Filing Date
2017-02-10
Publication Date
2025-11-04
Estimated Expiration
2037-02-10

AI Technical Summary

Technical Problem

In television programs, it is difficult for users to obtain screenshots of interest from content displayed on a screen using personal devices such as smartphones or tablets, especially in wireless display technologies where existing technologies struggle to achieve efficient screenshot sharing.

Method used

The receiver converts video transmission to a lower bandwidth version and sends it to the mobile device. It receives user instructions to generate snapshots and sends them to a third-party server for sharing, including the generation and publication of image and video snapshots.

Benefits of technology

It enables the efficient generation and sharing of snapshots on TV screens under limited bandwidth conditions. Users can easily publish snapshots to third-party devices, improving the convenience and sharing efficiency of screenshots.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114567801B_ABST
    Figure CN114567801B_ABST
Patent Text Reader

Abstract

The present disclosure relates to a method and system for sharing a snapshot extracted from a video transmission. The invention relates to the field of television experience, in particular the simultaneous use of a mobile device and a television set to share a user's experience. The present disclosure proposes a method of creating a snapshot from a video transmission received by a receiver connected to a mobile device and having a screen output, the method comprising the steps of receiving by the receiver the video transmission, converting by the receiver the video transmission into a lower bandwidth video transmission, sending the lower bandwidth video transmission to the mobile device, receiving from the mobile device by the receiver a command to perform a snapshot, generating by the receiver the snapshot from the video transmission, sending the snapshot to the mobile device.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application of the application for patent with the application number 201780010191.1, the date of filing of 10 / 02 / 2017 and the title of "Method and system for sharing a snapshot extracted from a video transmission". TECHNICAL FIELD

[0002] The present invention relates to the field of television experience, in particular the simultaneous use of a mobile device and a television to share the experience of a user. BACKGROUND

[0003] The first step in taking a screenshot on a television program is the "freeze" function. With the advent of digital television, it is quite simple to use a remote control to send an instruction to the television to freeze the current image. The signal is processed by the internal processor of the television and a loop on the internal memory easily displays a still image on the screen.

[0004] The second step is the possibility of printing the frozen image. Known solutions exist to link the television to a printer and then print the frozen image. It is also possible to save this image in the memory of the television for later use.

[0005] For example, conventional wireless display technology can project content on a display device connected with a wireless display host through a wireless display device. Examples of the wireless display host can include a computer, a tablet, a smart phone, or other communication devices. Examples of the display device can include a television or other large screen monitor that supports wireless display technology. However, when people watch the content projected on the display device, it is often difficult for people to use their personal devices, such as a smart phone, a tablet, and / or others, to obtain a screenshot of interest from the content. In this case, we use the personal device in the same way as a remote control to trigger the making of a screenshot. SUMMARY

[0006] Methods and systems are discussed herein that facilitate generating a snapshot from a video transmission currently being transmitted to a receiver device.

[0007] The method can share a snapshot with a third party device, the snapshot being part of a video transmission received by a receiver, the receiver having a screen output and being connected with a mobile device, the method comprising the steps of:

[0008] - receiving, by the receiver, a video transmission,

[0009] - converting, by the receiver, the video transmission into a lower bandwidth video transmission,

[0010] - sending the lower bandwidth video transmission to the mobile device,

[0011] - displaying on the screen of the mobile device a lower bandwidth video transmission,

[0012] - receiving by the mobile device an instruction to perform a snapshot,

[0013] - sending the instruction to the receiver,

[0014] - generating by the receiver a snapshot of the video transmission,

[0015] - sending the snapshot to the mobile device,

[0016] - publishing the snapshot to a third party server at a location specified by a link address,

[0017] - sharing the link address to a third party device.

[0018] The image snapshot is understood to be an image of the content currently displayed on the screen at the time the snapshot is instructed or an image of the content displayed on the screen shortly before the instruction to take the snapshot arrives. The snapshot can also be a video snapshot comprising a short video sequence of images currently displayed on the screen at the time the snapshot is instructed or shortly before the instruction to take the snapshot arrives.

[0019] Another aspect of the disclosure is to transmit the video transmission concurrently to the mobile device in order to facilitate the snapshot operation. In some embodiments, the receiver can facilitate the snapshot operation without sending the complete video transmission to the mobile device, in particular in view of the limited bandwidth between the receiver and the mobile device. For example, the receiver can prepare a lower bandwidth version of the video transmission to send this version to the mobile device. BRIEF DESCRIPTION OF DRAWINGS

[0020] The disclosure will be better understood in view of the attached drawings, in which:

[0021] - Figure 1 Fig. illustrates the system of the invention,

[0022] - Figure 2 Fig. illustrates the different modules in the receiver,

[0023] - Figure 3 Fig. illustrates the synchronization buffer of the receiver,

[0024] - Figure 4 Fig. illustrates an alternative embodiment without transmitting the video transmission to the mobile device,

[0025] - Figure 5 Fig. illustrates an example of a contact table for selecting a snapshot image,

[0026] - Figure 6 Fig. illustrates another way of selecting a snapshot image,

[0027] - Figure 7The receiver performing the snapshot is illustrated. DETAILED DESCRIPTION

[0028] Figure 1 The different elements involved in the application are illustrated. The receiver RD can receive the video transmission in various ways. As shown in Figure 1 The input NT1 is used for the case where the receiver is connected to a cable or an antenna. The receiver can receive the video transmission via a network router RT (for example, Over The Top (OTT) transmission) through the Internet (NT2). The content selected by the user is then decoded and delivered to the screen.

[0029] The video transmission can also be stored in the receiver RD or played from a local source such as a DVD player. The expression "receive the video transmission" can thus be understood as received from an external source (for example, the network NT1 or NT2) or an internal source (for example, a DVD, a hard drive, etc.).

[0030] The receiver RD is connected through a network router RT and can thus access other devices of the user and the Internet (NT2). One of these devices is a mobile device MD such as a tablet or a smartphone.

[0031] The receiver can be a set-top box (STB) or a module integrated into a television set or connected to a television set (such as a USB dongle or a PCMCIA card). In the last two examples, the receiving module receives the compressed video transmission selected by the host (television set) and returns the compressed video transmission to the host. The decompression module DEC as well as the audio / video module AVM are located in the host. In case the application is implemented in such a receiving module, the snapshot is created from the compressed video transmission. It is to be noted that said receiving module comprises a network interface LCM for communicating with the mobile device MD.

[0032] From the received video transmission, the receiver RD prepares a lower bandwidth video transmission and sends it to the mobile device MD. This lower bandwidth video transmission can be produced by converting the nominal bandwidth video transmission into a lower bandwidth by downsampling the nominal video transmission in order to reduce the bandwidth. The resolution of the lower bandwidth video transmission can be reduced and maintained in a format compatible with the screen of the mobile device MD. As an example, the nominal video transmission is of HD quality, i.e. has a resolution of 1920x1080 pixels. With a downsampling module DSM of the receiver RD, the resolution of the lower bandwidth video transmission is reduced to 1280x720 pixels or 1024x768 pixels. The downsampling algorithm can include, for example:

[0033] - "Fast Algorithms for DCT-Domain Image Down-Sampling and for Inverse Compensation", N. Merhav and V. Bhaskaran, Journal of Circuits and Systems for Video Technology, Volume 7, Number 3, June 1997;

[0034] - "Complexity Optimized Video Codecs", in particular chapter 8.2 of Michael Krause

[0035] - "A fast arbitrary-ratio downscaling algorithm for video transcoding", published in "Proceeding SIP'07 Proceedings of the Ninth IASTED International Conference on Signal and Image Processing", pages 254-258

[0036] The down-sampled video presentation can be a lighter version of the nominal video transmission in terms of bandwidth and represents a lower bandwidth video transmission. The term "lower" means that the bandwidth of the lower bandwidth video transmission is lower than the bandwidth used for the nominal video transmission, also called video transmission. The lower bandwidth video transmission is sent to the mobile device MD in parallel with the transmission of the nominal video transmission to the main screen connected to the receiver.

[0037] According to a particular embodiment, the receiver RD can select among different target resolutions as the lower bandwidth video transmission, the selection being made during an initialization phase on the receiver. The mobile device can then test whether the bandwidth available on the network is adapted to the lower bandwidth video transmission. In response to the available bandwidth being lower than a threshold, the mobile device can select another target resolution.

[0038] The lower bandwidth video transmission is sent from the receiver RD to a router RT connected to the receiver and from the router RT to the mobile device MD via a network LNT. The network LNT can be a local network through a Wifi router. The mobile device can display the lower bandwidth video transmission on its screen. It should be noted that the receiver RD can play the role of a router (router / receiver device) and thus the lower bandwidth video transmission is sent directly from the receiver RD to the mobile device MD.

[0039] When the user triggers a snapshot, the user inputs a command to the mobile device MD. The mobile device then sends a message to the receiver RD via the home network LNT. This message can comprise a command to perform a snapshot and optionally also the type of snapshot (image or video).

[0040] Upon reception of the message, the receiver proceeds to produce a snapshot.

[0041] Image snapshot

[0042] An image snapshot is understood to be a still image representing an image that is sent to the screen attached to the receiver (or to a part of the receiver).

[0043] According to a first embodiment, the current image from the video transmission processed by the audio video module AVM is extracted and sent to the snapshot module SCM. This operation is transparent to the viewer who is watching the main screen. For this purpose, the snapshot module SCM has access to the memory of the audio video module AVM.

[0044] This image represents the full resolution current frame sent to the screen when the receiver receives the snapshot message. This image can be compressed in a format (e.g. JPEG, GIF, TIFF, etc.) to produce a snapshot image.

[0045] When the receiver RD receives the message to perform a snapshot from the mobile device, the receiver extracts the image currently displayed and prepares a snapshot image. Once compressed in a suitable format, the snapshot image is sent to the mobile device MD.

[0046] Video buffer

[0047] According to an embodiment of the application, the receiver comprises a video buffer BF which stores a portion of the video transmission that has been sent (or is currently being sent) to the decompression module DEC of the receiver. The buffer BF is then constantly updated with a first-in-first-out function containing a predefined time of the video transmission. The video buffer BF contains the last n seconds of the video transmission corresponding to n seconds before the current display of the video transmission (e.g. n can vary between 1 and 20 seconds). The snapshot module SCM can either receive the current image from the audio video module AVM or from the video buffer BF. In the latter case, the content of the video buffer is in compressed form and the snapshot module decompresses the content extracted from the video buffer to create the snapshot image.

[0048] It is to be noted that, once the receiver has received the snapshot message, the video buffer BF is frozen and no new data is added to the buffer. The video buffer BF will contain the last n seconds before the reception of the snapshot instruction. When the snapshot operation is completed, the frozen state will be released.

[0049] Video snapshot

[0050] A video snapshot should be understood as a short extract of the video transmission currently sent to the screen attached to the receiver. When receiving an instruction to process a video snapshot, the snapshot module SCM accesses the video buffer BF to get a first length of video extract. The snapshot module prepares a down-sampled video extract by down-sampling the video extract in order to reduce the bandwidth required to send the extract to the mobile device.

[0051] The receiver then sends the down-sampled video extract to the mobile device MD. The mobile device can present an interface to the user to select the start and end points of the video extract. Once selected, the mobile device sends the points to the receiver. The snapshot module prepares a video snapshot of the length specified by the start and end points. This video snapshot is then sent to the mobile device.

[0052] Image snapshot selection

[0053] According to one embodiment, the snapshot module generates a plurality of image snapshots from the video extract stored in the buffer in response to receiving a message to perform a snapshot. Each image is formed from the video extract by decompressing the video from the buffer. The snapshot module forms a plurality of images representing slow motion of the video extract at different times, such that each image is spaced apart according to a predefined setting (e.g. each image is spaced apart by 500ms).

[0054] The plurality of images is down-sampled and sent to the mobile device. The mobile device suggests the plurality of down-sampled images to the user for selection. The mobile device can comprise an interface to select the images, for example, in the form of a contact sheet (as shown in Figure 5 ) or a flip interface (as shown in Figure 6 ).

[0055] The user selects one or a subset of the images and sends this selection to the receiver. By selecting at least one image, the receiver can prepare a corresponding image snapshot at the original resolution and send it back to the mobile device.

[0056] According to a particular embodiment, the snapshot module can exploit the GOP structure of the compressed video extract. A GOP is a group of pictures starting with an I-frame (intra-coded picture) which contains a complete image, followed by a number of P-frames (predicted pictures) and B-frames (bidirectional predicted pictures). These frames can represent the difference with the previous frame. The snapshot extracts the I-frames from the video extract and then prepares a down-sampled version of these I-frames.

[0057] Publishing a snapshot

[0058] When the mobile device receives the selected snapshot, the mobile device MD can publish the snapshot to a third party server TPS. The TPS can be a social network server (e.g. FacebookTM Instagram TM ) or a private server. When publishing the snapshot to the third-party server TPS, the mobile device receives from the server a link address representative of a location where the server has stored the snapshot.

[0059] The mobile device can add credentials (e.g. username, password, etc.) to the snapshot, for example to allow the TPS to identify and authorize the publication of the snapshot.

[0060] The mobile device can then share the message containing the link address to the third-party device TPD.

[0061] According to a preferred embodiment, before the mobile device shares the link with the third-party device, the user of the mobile device can add a comment (i.e. free text) in the message including the link. An editor is presented to the user to type some notes, i.e. the reason why this snapshot is interesting. The free text is added to the message, thus containing the link address and the free text.

[0062] The user can select one or more recipients from a list of contacts to share the message to the third-party device TPD.

[0063] Once the third-party device TPD has received the message from the mobile device, the mobile device can use the link address contained in the message to read the free text and retrieve the snapshot from the third-party server TPS.

[0064] According to an embodiment, the message can also contain metadata related to the video transmission. The receiver extracts from the video transmission metadata describing the content of the video transmission. The metadata can be for example the title of the movie currently transmitted, or a description of the content (e.g. "X factor Saison 2015"). The metadata can also contain a description of the channel from which the video presentation is obtained (e.g. "ITV2").

[0065] The receiver sends the metadata to the mobile device along with the snapshot. The mobile device adds the metadata to the message, which is shared to the third-party device. In an alternative embodiment, the metadata, along with the free text, are sent to the third-party server along with the snapshot. In response to receiving the message containing the link address, the third-party device can retrieve the snapshot along with the metadata and the free text.

[0066] Synchronization buffer

[0067] According to Figure 3In a particular embodiment of the application presented in Fig. 2, the receiver comprises a synchronization buffer SB located between the reception of the compressed signal and the transmission of the decompressed signal to the screen output. The synchronization buffer is used to synchronize the display of the nominal video transmission displayed on the main screen and the lower bandwidth video transmission received by the mobile device. The preparation of the down-sampled video transmission, the transmission through the network LNT and the processing by the mobile device take time. Without the synchronization buffer, the image displayed on the mobile device can be delayed by several hundreds of milliseconds. Thus, the length of the synchronization buffer is adjusted so that the two screens (mobile device and main screen) are synchronized. The mobile device can adjust the length according to specific conditions, such as taking into account the available bandwidth of the network LNT and / or the time for the mobile device to process the lower bandwidth video transmission.

[0068] In a particular embodiment of the application presented in Fig. 2, the receiver comprises a synchronization buffer SB located between the reception of the compressed signal and the transmission of the decompressed signal to the screen output. The synchronization buffer is used to synchronize the display of the nominal video transmission displayed on the main screen and the lower bandwidth video transmission received by the mobile device. The preparation of the down-sampled video transmission, the transmission through the network LNT and the processing by the mobile device take time. Without the synchronization buffer, the image displayed on the mobile device can be delayed by several hundreds of milliseconds. Thus, the length of the synchronization buffer is adjusted so that the two screens (mobile device and main screen) are synchronized. The mobile device can adjust the length according to specific conditions, such as taking into account the available bandwidth of the network LNT and / or the time for the mobile device to process the lower bandwidth video transmission. Figure 3

[0069] According to an embodiment, during the initialization phase, the mobile device can display the lower bandwidth video transmission and send to the receiver a command to adjust the length of the synchronization buffer. In an embodiment, the mobile device can present an interface with two arrows displayed on top of the lower bandwidth video transmission to allow the user to adjust the delay created by the synchronization buffer. Each time the user presses one of the arrows, a command is sent to the receiver and the length of the synchronization buffer is adjusted, for example, by 50 ms forward or backward in steps.

[0070] Setting

[0071] The mobile device MD preferably comprises a dedicated application for the snapshot operation, thus being able to display the lower bandwidth video transmission and send commands to the receiver. The dedicated application can also be presented to the user to set the default operation mode. The user can then configure whether he / she prefers to have images or video snapshots, configure the length of the video extraction or the number of down-sampled images, etc. The resolution of the lower bandwidth video transmission can also be chosen according to the resolution of the mobile device screen. Once the user has chosen the default mode, the mobile device sends these settings to the receiver.

[0072] Logging

[0073] ​According to one embodiment, when a snapshot is generated, a log record is created and sent to a remote server. The log record can contain the identification of the video transmission, preferably extracted from the metadata, and information about the specific segment of the video transmission used to create the snapshot. This information can be in the form of a time index or a frame index. In the case of a video snapshot, the information is a start time and an end time or a start frame index and an end frame index. Additional information can be added, such as the identification of the current channel containing the video transmission (for example, in the form of a DVB triplet) or the receiver.

[0074] According to a first embodiment, the log record is created by the receiver and sent to the remote server by the receiver. For this purpose, the receiver is preferably connected to the Internet and can access the remote server.

[0075] According to a second embodiment, the log record is created in a dedicated application loaded in the mobile device at the time of publishing the snapshot. The mobile device can add its identification (user identification) to the log record and send the log record to the remote server.

[0076] The remote server can then analyze the reactions of the users and which video transmissions have generated the most snapshots by the users. This feature opens the possibility of rewarding users to publish specific content such as advertisements. The remote server comprises a database and tracks the activities of the users. The remote server stores the activities of the users and accumulates the log records of said users. If the snapshots of a specific advertisement (for example, for a new car) have been published to a third party server n times, the user can receive an invitation to hitch a ride with the new car via the mobile device.

[0077] Adding a banner

[0078] The metadata of a video transmission can contain not only a description of the content but also banner information. The banner information can be in the form of text or image. Such banner information will be added visually on the snapshot when the snapshot is generated by the receiver. The banner information is extracted from the video transmission and converted into an image added to the snapshot. In the case of text information, the receiver generates the corresponding characters to be added to the snapshot. In the case of an image, the image will be added to the snapshot. The banner information can also comprise a position indication, i.e. the position in which the text or image should be added to the snapshot. The operation of adding a banner can be an operation of overlaying the banner on the snapshot or replacing a part of the snapshot with the banner.

[0079] Enabling / disabling snapshots

[0080] The metadata of the video transmission can contain not only a description of the content, but also instructions related to the snapshot operation. The metadata also includes a snapshot status (1 = enabled, 0 = disabled) that enables or disables the snapshot. Before the snapshot module SCM starts to produce a snapshot, it reads the snapshot status to check if it is authorized to generate a snapshot. In the case of a snapshot disabled, the receiver returns a message to the mobile device to inform it that this functionality is not yet available.

[0081] receiver

[0082] For the purposes of performing the present disclosure, The receiver RD is illustrated in Figure 7 and more generally the computing device 200.

[0083] Figure 7 is a block diagram illustrating an example of a computing device that can implement one or more techniques of the present disclosure. The computing device 200 is an example of a computing device that can be configured to transmit data to and receive data from a communication network, thereby allowing a user to access multimedia content, as well as execute one or more applications. The computing device 200 can include a stationary computing device (e.g., a desktop computer, a television, a set-top box, a game console, a dedicated multimedia streaming device, a digital video recorder, and the like) or be a part of a stationary computing device, a portable computing device 200 (e.g., a mobile phone, a laptop computer, a personal digital assistant (PDA), a tablet device, a portable game device, and the like) or another type of computing device. In Figure 2 In the example shown in

[0084] As shown in Figure 7 The computing device 200 includes a central processing unit(s) 202, a system memory 204, a system interface 210, a modem 212, a transport module 214, an audio-video demultiplexer (AV demux) 216, a network interface 218, a storage device(s) 220, a user interface(s) 222, an audio decoder 224, an audio processor 226, a video decoder 228, a graphics processing unit 230, and a display processor 232.

[0085] As shown in Figure 7As shown, system memory 204 includes operating system 206, application 208, and content selection application 209. One or more central processing units 202, system memory 204, system interface 210, modem 212, transport module 214, AV demultiplexer 216, network interface 218, one or more storage devices 220, one or more user interfaces 222, audio decoder 224, audio processor 226, video decoder 228, graphics processing unit 230, and display processor 232 can be interconnected (physically, communicatively, and / or operatively) for inter-component communication and can be implemented as any of a variety of suitable circuit systems, such as one or more microprocessors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), discrete logic, software, hardware, firmware, or any combination thereof. It should be noted that although the example computing device 200 is shown as having different functional blocks, this illustration is for descriptive purposes and does not limit the computing device 200 to a particular hardware architecture. The functionality of computing device 200 can be implemented using any combination of hardware, firmware, and / or software. In some examples, the functionality of computing device 200 can be implemented using one or more so-called System-on-a-Chip (SOC). For example, computing device 200 may include a set-top box that incorporates an SOC. An example of a commercially available SOC that can be included in a set-top box is... The BCM7252 UltraHD SoC. One or more central processing units 202 may be configured to implement functions and / or processing instructions for execution in computing device 200. One or more central processing units 202 may be able to retrieve and process instructions, code, and / or data structures for implementing one or more techniques described herein. Instructions may be stored on a computer-readable medium, such as system memory 204 or one or more storage devices 220. One or more central processing units 202 may include a multi-core central processing unit. As described in detail below, the techniques described herein can be used to optimize CPU usage. For example, one or more background processing techniques may be used to reduce latency (or lag) experienced by a user interacting with one of the graphical user interfaces described below.

[0086] System memory 204 can be described as non-transitory or tangible computer readable storage media. In some examples, system memory 204 can provide temporary and / or long-term storage. In some examples, system memory 204 or portions thereof can be described as non-volatile memory, and in other examples, portions of system memory 204 can be described as volatile memory. Examples of volatile memory include random access memory (RAM), dynamic random access memory (DRAM), and static random access memory (SRAM). Examples of non-volatile memory include magnetic hard discs, optical discs, floppy discs, flash memories, or forms of electrically programmable memory (EPROM) or electrically erasable and programmable memory (EEPROM).

[0087] System memory 204 can be configured to store information that can be used during operation by computing device 200. System memory 204 can be used for storing program instructions for execution by central processing unit(s) 202, and can be used by software or applications running on computing device 200 to temporarily store information during program execution. For example, system memory 204 can store instructions associated with operating system 206, applications 208, and content selection application 209. System memory 204 can include one or more different memory devices, each of which can include different types of memory interfaces. For example, system memory 204 can include an internal hard disk or solid state drive, a random access memory module, an embedded MultiMediaCard (eMMC) memory device, and / or one or more caches (e.g., CPU cache and / or GPU cache). As described in detail below, images associated with a graphical user interface can be loaded from one portion of system memory 204 to another portion of system memory 204 in order to reduce the time required to present the images on a display based on received user input. For example, a subset of images associated with a graphical user interface can be loaded into a cache based on user behavior. It should be noted that the techniques described herein can be generally applicable to any memory architecture.

[0088] Applications 208 and content selection application 209 can include applications implemented within computing device 200 or executed by computing device 200, and can be implemented within, contain, be operable by, executed by, and / or operatively / communicatively coupled to components of computing device 200.

[0089] The applications 208 and content selection application 209 can include instructions that can cause the central processing unit(s) 202 of the computing device 200 to perform particular functions. The applications 208 and content selection application 209 can include algorithms expressed in computer programming statements, such as for loops, while loops, if statements, do loops, and so on. The applications 208 and content selection application 209 can be distributed to the computing device 200 by an application distribution site (e.g., the application distribution site 122). In one example, the applications 208 and content selection application 209 can cause the computing device 200 to perform functions associated with the example techniques described herein to enable a user to access content items. The applications 208 and content selection application 209 can cause one or more graphical user interfaces to be presented that enable a user to provide data for use by the applications. In one example, the applications 208 can include one or more specialized applications that enable a user to access a digital media service. It should be noted that, as used herein, a specialized application that enables a user to access a digital media service can be highly integrated with an application or operating system of the computing device.

[0090] For example, a set-top box supported by a cable television provider can enable a user to access content items from a television service, on-demand media services maintained by the cable television service provider, and / or third party media streaming services. In some cases, each different graphical user interface that enables a user to select content items to access can be referred to as a specialized application, a source, and / or a portal. In one example, the content selection application 209 can be provided to a computing device and cause the computing device to enable a user to select content items according to one or more techniques described herein.

[0091] As described in detail below, the content selection application 209 can operate with an application running on a companion device, such as a mobile device.

[0092] As Figure 7As further shown, applications 208 and content selection application 209 can execute in conjunction with operating system 206. That is, operating system 206 can be configured to facilitate the interaction of applications 208 and content selection application 209 with central processing unit(s) 202 and other hardware components of computing device 200. It should be noted that, in some examples, components of operating system 206 and components that act in conjunction with operating system 206 can be referred to as middleware. Additionally, in some examples, content selection application 209 can include an application programming interface (API). The technology described herein can be configured for use by devices operating using any and all combinations of software architectures. Operating system 206 can be an operating system designed for installation on a laptop computer, a desktop computer, a smartphone, a tablet computer, a set-top box, a digital video recorder, a television, and / or a gaming device. In one example, operating system 206 can include operating system or middleware components developed by Apple®, Microsoft®, Google®,

[0093] System interface 210 can be configured to enable communication between components of computing device 200. In one example, system interface 210 includes structures that enable data to be communicated from one peer device to another peer device or to a storage medium. For example, system interface 210 can include a chipset that supports an accelerated graphics port (AGP)-based protocol, a peripheral component interconnect (PCI) bus-based protocol (such as, for example, the PCI Express (PCIe) bus specification, which is maintained by the Peripheral Component Interconnect Special Interest Group), or any other form of structure that can be used to interconnect peer devices.

[0094] Storage device(s) 220 represent storage for computing device 200 that can be configured to store relatively larger amounts of information for relatively longer periods of time than system memory 204. For example, in examples in which computing device 200 is included as part of a digital video recorder, storage device(s) 220 can include a hard drive that is configured to store large numbers of video files. Like system memory 204, storage device(s) 220 can also include one or more non-transitory or tangible computer-readable storage media. Storage device(s) 220 can include internal and / or external storage devices, and in some examples can include both volatile and non-volatile storage elements.

[0095] The user interface(s) 222 can include devices configured to receive input from a user during operation of the computing device 200. For example, the user interface(s) 222 can include buttons and switches, motion sensors (e.g., accelerometers), touch-sensitive sensors, trackpads, mice, keyboards, microphones, cameras, or any other type of device configured to receive user input. The user interface(s) 222 can be integrated into the computing device 200. For example, where the computing device 200 comprises a television, the user interface(s) 222 can comprise buttons located on the television. Additionally, the user interface(s) 222 can be integrated into devices external to the computing device 200. For example, the user interface(s) 222 can be integrated into companion devices, such as, for example, the companion devices 300 and 400 described in detail below. In some examples, external devices comprising the user interface(s) 222 can be operatively coupled to the computing device 200 using standardized communication protocols, such as, for example, the Universal Serial Bus protocol (USB), Bluetooth, ZigBee, or proprietary communication protocols, such as, for example, a proprietary infrared communication protocol. It should be noted that the techniques described herein can be universally applicable regardless of the type of device comprising the user interface and regardless of the manner in which the device communicates with the computing device 200. As described in detail below, the user interface(s) 222 can comprise a display configured to display the graphical user interfaces described herein. For example, where the computing device 200 comprises a television, a companion device (e.g., a smartphone or a dedicated remote control) in communication with the television can comprise a user interface comprising a touch-sensitive display that presents the graphical user interfaces described herein. Additionally, as described in detail below, a user can provide commands to the computing device 200 by activating portions of the touch-sensitive display.

[0096] Referring again to Figure 7 , the computing device 200 is configured to send and receive data via a local network, such as, for example, the television network 106 described above, and via a public network, such as, for example, the public network 108. This network is used to send and receive data from mobile devices. Communication networks can be described based on a model comprising layers that define communication characteristics, such as, for example, physical signaling, addressing, channel access control, packet characteristics, and data processing in a communication system. In the example shown, the modem 212, the transport module 214, and the AV demultiplexer 216 can be configured to perform lower layer processing associated with the television network 106, and the network interface 218 can be configured to perform lower layer processing associated with the public network 108. Figure 7

[0097] Other Embodiments

[0098] As​Figure 4 One aspect of the application, as illustrated in the figure, is to use the video buffer to select a snapshot at a time prior to the reception of the snapshot instruction by the receiver. In this alternative embodiment, there is no lower bandwidth resolution of the video transmission sent to the mobile device. The mobile device can display the video transmission not in real time. The mobile device can comprise an application that performs all the other operations, i.e. sending the snapshot instruction and selecting the appropriate snapshot (or still image or video) extracted from the video buffer.

[0099] In another embodiment, concurrent transmission to the mobile device is done with the same video transmission without reducing the bandwidth. In the case where the available bandwidth of the network accommodates the bandwidth required by the nominal video transmission, the nominal video transmission is sent by the receiver to the mobile device. Thus, the receiver of the present disclosure can be implemented without the conversion module DSM. In this case, the mobile device receives the nominal video transmission. The receiver sends the snapshot according to the initial resolution (image or video snapshot) and the snapshot selection is done on the mobile device at the initial resolution.

[0100] In this embodiment, the synchronized buffer SB is an option and is motivated if the transmission of the nominal video transmission is delayed during the transmission to the mobile device.

[0101] While embodiments of the present disclosure have been described with reference to particular examples, it is to be understood that the embodiments are not limited to the particular details described and various modifications and changes can be made to these embodiments without departing from the broader scope of the embodiments. Thus, the specification and drawings are to be regarded as illustrative rather than restrictive. The accompanying drawings shown by way of illustration, not limitation specific embodiments wherein the subject matter can be practiced. The embodiments shown are described in sufficient detail to enable those skilled in the art to practice the teachings disclosed herein. Other embodiments can be utilized and derived therefrom, such that structural and logical substitutions and changes can be made without departing from the scope of the present disclosure. Thus, the specific implementation described is not to be taken in a limiting sense and the scope of various embodiments is to be limited only by the appended claims, along with the full range of equivalents to which such claims are entitled. The embodiments will be described in sufficient detail to enable those skilled in the art to practice the teachings disclosed herein.

[0102] The embodiments of the inventive subject matter can be referred to herein, individually and / or collectively, by the term "application" merely for convenience and without intending to voluntarily limit the applicability of the application to any single application concept if indeed more than one application concept is, in fact, disclosed. Thus, although specific embodiments have been illustrated and described herein, it should be appreciated that any arrangement can be substituted for the specific embodiments shown and described herein without departing from the spirit and scope of the application. The application is intended to cover any and all adaptations or variations of various embodiments. Combinations of the above embodiments, and other embodiments not specifically described herein, will be apparent to those of skill in the art in view of the foregoing description.

Claims

1. A method of creating snapshots from a video received by a receiver, the method comprising the steps of: - receiving, by the receiver, a video of higher quality, - buffering, by the receiver, the video in a buffer, the buffer containing a portion of the video over a predefined time, - converting, by the receiver, the video into a video of lower quality, - sending, by the receiver, the video of lower quality to a second device, - receiving, by the receiver, a command to produce a snapshot from the second device when the video of lower quality is presented at the second device, - based on the command received by the receiver, producing a plurality of down-sampled snapshot images from the portion of the video stored in the buffer, each of the plurality of down-sampled snapshot images representing a different portion of the video stored in the buffer at a different time, such that each of the plurality of down-sampled snapshot images is spaced apart according to predefined settings, wherein the plurality of down-sampled snapshot images are non-continuous still images, - sending the plurality of down-sampled snapshot images to the second device for simultaneous display on the second device, - receiving a selection of at least one of the plurality of down-sampled snapshot images from the second device; and - producing, by the receiver, a snapshot of an original resolution prior to down-sampling from the video based on at least the selected at least one snapshot image, and - sending the snapshot to the second device, wherein the receiver is one of: a set-top box, a module integrated into a television set, or a module connected to a television set.

2. The method of claim 1, wherein the snapshot is published to a third party server at a location specified by a link address, - wherein the link address is included in a message shared and provided to the third party server.

3. The method of claim 2, wherein producing the snapshot comprises extracting metadata identifying the snapshot from the video, and wherein the method further comprises the steps of: - sending, by the receiver, the metadata to the second device along with the snapshot, and - wherein the metadata is included with the snapshot published to the third party server.

4. The method of claim 2 or 3, further comprising the step of including a comment with the snapshot published to the third party server.

5. The method of claim 4, wherein the video is in a compressed form having a plurality of GOPs (Groups of Pictures), each of the plurality of GOPs beginning with an I-frame (Intra-coded picture), wherein the buffer stores a plurality of I-frames of the compressed form of the video, and wherein the plurality of snapshot images are produced by extracting and down-sampling each of the plurality of I-frames from the buffer.

6. The method of any of claims 1 to 3, wherein the snapshot is a video snapshot, and wherein the method further comprises the steps of: - buffering, by the receiver, the video in a video buffer, the video buffer containing a portion of the video over a predefined time, - based on the command received by the receiver, producing a down-sampled video extract from the portion of the video stored in the buffer, - the start and end points extracted from the down-sampled video received from the second device by the receiver, the video snapshot is generated from the buffer.

7. The method of any one of claims 2 to 3, further comprising the steps of: - buffering the video sent to the screen in an adjustable length synchronization buffer, the adjustable length being adjusted to synchronize the display of the lower quality video on the second device with the display on the screen.

8. The method of any one of claims 1 to 3, further comprising the steps of: - extracting metadata related to the video presentation from the video presentation, - extracting banner information from the metadata, - visually adding the banner information to the snapshot.

9. The method of claim 1, wherein the snapshot is one of a video or an image.

10. A receiver device configured to create a snapshot from a video, comprising: - an input to receive a video having a higher quality, - an output to send a video, - a buffer containing a portion of the video for a predefined time, - a conversion module to convert the video into a lower quality video, - a communication module having a network to send the lower quality video to the network, - a snapshot module configured to: receive a snapshot instruction from the network while the lower quality video is being presented on another device in the network; based on the snapshot instruction, generate a plurality of down-sampled snapshot images from the portion of the video stored in the buffer, each of the plurality of down-sampled snapshot images representing a different portion of the video stored in the buffer at a different time, such that each of the plurality of down-sampled snapshot images is spaced apart according to a predefined setting, wherein the plurality of down-sampled snapshot images are non-continuous still images; send the plurality of down-sampled snapshot images to the network for simultaneous display on the another device; receive a selection of at least one snapshot image from the plurality of down-sampled snapshot images from the another device; and and generate a snapshot of an original resolution prior to down-sampling from the video based on at least the selected at least one snapshot image, the snapshot being sent to the network via the communication module, wherein the receiver is one of: a set-top box, a module integrated into a television, or a module connected to a television.

11. The receiver device of claim 10, wherein the video is in a compressed form having a plurality of GOPs (Groups of Pictures), each of the plurality of GOPs beginning with an I-frame, wherein the buffer stores a plurality of I-frames of the compressed form of the video, and wherein the snapshot module is configured to generate the plurality of snapshot images by extracting and down-sampling each of the plurality of I-frames from the buffer.

12. The receiver device of claim 10, wherein the snapshot is a video snapshot, and wherein the receiver device comprises: - a video buffer containing the video for a predefined time, the snapshot module is further configured to: - extract a down-sampled video from the video stored in the video buffer, - send the down-sampled video to the network, - receiving a start point and an end point of a video extraction of a down-sampling, - generating said video snapshot from the video buffer using the received start point and end point.

13. The receiver device of any of claims 10 to 12, wherein the receiver device further comprises a synchronisation buffer of adjustable length to delay said video sent to a screen output in order to synchronise the display of said lower quality video with the display of said video.

Citation Information

Patent Citations

  • Method and apparatus to encode image, and method and apparatus to decode image data

    CN101002471A

  • Sharing television clips

    CN101536502A

  • Camera

    CN102984508A

  • Seamless digital streaming over different device types

    US20120303834A1