The subject matter of this application relates to managing user uploaded content, in particular systems and methods for storing user uploaded content in a network Digital Video Recorder system and delivering the stored content to a set top box or user device.
Users create a lot of personal recordings on their cameras, smart phones, etc. The users are able to upload their personal recordings to servers of various over-the-top (OTT) providers. However, each OTT provider has their own user interface and requirements for uploading and playback through a non-MSO network. MSOs are thus unable to insert business media into the content (e.g., targeted advertisements, banners, notifications, etc.) or modify the content.
Network Digital Video Recorder (nDVR) systems provide a user, via a single user interface, the ability to record various content, such as multiple system operator (MSO) network content, for home consumption or across one or more devices away from home. What is desired, therefore, are systems and/or methods of managing user uploaded content through a single user interface and with the processing and delivering capabilities of a nDVR system to produce a consistent user experience across several devices and to allow MSOs to insert business media into the user uploaded content.
For a better understanding of the invention, and to show how the same may be carried into effect, reference will now be made, by way of example, to the accompanying drawings, in which:
Referring to
Content network 102 includes one or more content servers 108, one or more over-the-top servers 109, and one or more advertisement servers 110. The content, over-the-top, and advertisement servers store content that is provided to home network 104. Content server(s) 108 provide content via a multiple system operator (MSO) and/or an internet service provider. Over-the-top servers (OTT) 109 provide content only via over the top streaming for at least one client device of the home network. Advertising server(s) 110 provide advertising content, such as targeted advertising content.
Subscriber network 106 includes one or more Multiple System Operator (MSO) systems 112, which includes multiple cable TV systems and/or direct satellite TV systems. For example, MSO system 112 may include one or more headends, regional headends, a network architecture of fiber optic, twisted pair, and/or co-axial lines, and/or amplifiers. Subscriber network 112 also includes one or more Internet Service Providers (ISP) 114. Each ISP 114 includes a Point of Presence (POP) that connect to Network Access Points (NAP), such as via routers and a T3 backbone. In the example shown in
Home/user network 104 includes a gateway 118, a terrestrial, satellite, and/or cable (TSC) set top box 120, user devices 122, and an Internet Protocol (IP) set top box 124. In some embodiments, gateway 118 includes a user content component or apparatus 119, which includes software, hardware, and/or firmware capable of conditioning content uploaded by a user via user devices 122. TSC set top box 120 is operable to connect to a television to deliver television services through traditional terrestrial, satellite, and cable formats. TSC set top box 120 may include a digital video recorder and/or may have a graphic user interface (GUI) that may be assessed by the user via the television to which TSC set top box 120 is connected. User devices 122 may be any device that may receive content, such as smart phones, mobile phones, tablet computers, smart watches and other wearables, gaming systems, etc. The user devices may have a GUI that may be accessed by the user via the screen on the device. Additionally, user devices 122 includes a user content component or apparatus 123, which includes software, hardware, and/or firmware capable of uploading user content and receiving user input for conditioning of that content and for requesting playback. IP set top box 124 is operable to connect to a television over the Internet instead of being delivered through traditional terrestrial, satellite, and cable formats. The IP set top box may include a digital video recorder and/or may have a GUI that may be accessed by the user via the television to which the IP set top box is connected.
Referring to
Storage or archive 206 is a data storage device operable to save content (and copies of that content). Archive 206 may include physical storage and/or memory media, such as RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to carry or store desired program code in the form of computer-executable instructions or data structures and which can be accessed by a general purpose or special purpose computer. Archive 206 is shown as a separate entity in
Referring to
In some embodiments, the received uploaded content may be conditioned prior to or after the content is stored in the storage. For example, captions (e.g., WebVTT) and/or metadata (e.g., for bookmarks, captions, tags, etc.) may be added, deleted, or revised for the uploaded content. Additionally, the uploaded content may be edited, such as shortened, elongated (via slow motion), edited to remove audio or include only audio, one or more portions removed (e.g., show only or remove only close-up video data portion), resolution changed (e.g., from high to low resolution or vice-versa), etc. Moreover, the uploaded content may be transcoded to correspond with decoding capabilities of user devices and set top boxes. Furthermore, a digital rights management (DRM) scheme of the uploaded content (e.g., Playready DRM) may be modified or changed to correspond with access capabilities of user devices and set top boxes. In some embodiments, one or more copies of the stored content may be made and conditioning may be performed on those copies. In other embodiments, the conditioning may be performed on the uploaded content. In some embodiments, a user interface may be provided to the first user device, a set top box, or a second user device to receive user input via the user interface to condition the uploaded content based on the user input.
At 306, a request for playback of the stored content is received from one or more user devices and/or set top boxes. At 308, the stored content is delivered to one or more user devices and/or a set top box, such as the requesting user device and/or requesting set top box (and/or other user devices and/or set top boxes), such as in response to receiving the request for playback. At 310, one or more emergency notifications are delivered with (e.g., embedded or merged with) and/or separate from the stored content to the user device(s) and/or set top box(es). For example, an Emergency Alert System (EAS) message may be delivered with and/or separate from the stored content. In some embodiments, the emergency notification(s) may be delivered based on the geolocation of the receiving user devices and/or set top boxes. In some of those embodiments, only the user devices without a cell service provider or connection may receive the emergency notifications.
In some embodiments, method 300 may additionally, or alternatively, include delivering advertisement content, such as targeted advertisement content, with the stored content (or separate from the stored content). For example, advertisement banners or notification may be embedded or merged with the stored content. Although
Referring to
The memory 420 may store information within the hardware configuration 400. In one implementation, the memory 420 may be a computer-readable medium. In one implementation, the memory 420 may be a volatile memory unit. In another implementation, the memory 420 may be a non-volatile memory unit. In some implementations, the storage device 430 may be capable of providing mass storage for the hardware configuration 400. In one implementation, the storage device 430 may be a computer-readable medium. In various different implementations, the storage device 430 may, for example, include a hard disk device, an optical disk device, flash memory or some other large capacity storage device. In other implementations, the storage device 430 may be a device external to the hardware configuration 400.
The input/output device 440 provides input/output operations for the hardware configuration 400. In embodiments, the input/output device 440 may include one or more of a network interface device (e.g., an Ethernet card), a serial communication device (e.g., an RS-232 port), one or more universal serial bus (USB) interfaces (e.g., a USB 2.0 port), one or more wireless interface devices (e.g., an 802.11 card), and/or one or more interfaces for outputting video and/or data services to a CPE device, IP device, mobile device, or other device. In embodiments, the input/output device may include driver devices configured to send communications to, and receive communications from an advertisement decision system, an advertisement media source, and/or a CDN.
The methods, systems, and apparatuses described in this disclosure enable the identification and retrieval of one or more preferred or requested media renditions of multimedia content, such as uploaded content. A subscriber device may maintain a list of media attributes preferred by the subscriber device and/or one or more users with access to the subscriber device, wherein the list includes preferred media attributes in order from the most requested/received attribute to the least requested/received attribute. When the subscriber device receives a request for multimedia content, the subscriber device may identify one or more media attributes preferred by the subscriber, and media renditions of the multimedia content in each of the identified attributes may be downloaded to the subscriber device.
The subject matter of this disclosure, and components thereof, may be realized by instructions that upon execution cause one or more processing devices to carry out the processes and functions described above. Such instructions may, for example, comprise interpreted instructions, such as script instructions, e.g., JavaScript or ECMAScript instructions, or executable code, or other instructions stored in a computer readable medium.
Implementations of the subject matter and the functional operations described in this specification may be provided in digital electronic circuitry, or in computer software, firmware, or hardware, including the structures disclosed in this specification and their structural equivalents, or in combinations of one or more of them. Embodiments of the subject matter described in this specification may be implemented as one or more computer program products, i.e., one or more modules of computer program instructions encoded on a tangible program carrier for execution by, or to control the operation of, data processing apparatus.
A computer program (also known as a program, software, software application, script, or code) may be written in any form of programming language, including compiled or interpreted languages, or declarative or procedural languages, and it may be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program does not necessarily correspond to a file in a file system. A program may be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a mark-up language document), in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub programs, or portions of code). A computer program may be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network.
The processes and logic flows described in this specification are performed by one or more programmable processors executing one or more computer programs to perform functions by operating on input data and generating output thereby tying the process to a particular machine (e.g., a machine programmed to perform the processes described herein). The processes and logic flows may also be performed by, and apparatus may also be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit).
Computer readable media suitable for storing computer program instructions and data include all forms of non-volatile memory, media and memory devices, including by way of example semiconductor memory devices (e.g., EPROM, EEPROM, and flash memory devices); magnetic disks (e.g., internal hard disks or removable disks); magneto optical disks; and CD ROM and DVD ROM disks. The processor and the memory may be supplemented by, or incorporated in, special purpose logic circuitry.
While this specification contains many specific implementation details, these should not be construed as limitations on the scope of any invention or of what may be claimed, but rather as descriptions of features that may be specific to particular embodiments of particular inventions. Certain features that are described in this specification in the context of separate embodiments may also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment may also be implemented in multiple embodiments separately or in any suitable subcombination. Moreover, although features may be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination may in some cases be excised from the combination, and the claimed combination may be directed to a subcombination or variation of a subcombination.
Similarly, while operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of various system components in the embodiments described above should not be understood as requiring such separation in all embodiments, and it should be understood that the described program components and systems may generally be integrated together in a single software product or packaged into multiple software products.
Particular embodiments of the subject matter described in this specification have been described. Other embodiments are within the scope of the claims below. For example, the actions recited in the claims may be performed in a different order and still achieve desirable results, unless expressly noted otherwise. As one example, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some implementations, multitasking and parallel processing may be advantageous.
It will be appreciated that the invention is not restricted to the particular embodiment that has been described, and that variations may be made therein without departing from the scope of the invention as defined in the appended claims, as interpreted in accordance with principles of prevailing law, including the doctrine of equivalents or any other principle that enlarges the enforceable scope of a claim beyond its literal scope. Unless the context indicates otherwise, a reference in a claim to the number of instances of an element, be it a reference to one instance or more than one instance, requires at least the stated number of instances of the element but is not intended to exclude from the scope of the claim a structure or method having more instances of that element than stated. The word “comprise” or a derivative thereof, when used in a claim, is used in a nonexclusive sense that is not intended to exclude the presence of other elements or steps in a claimed structure or method.
This application claims the benefit of U.S. Provisional Patent Application No. 63/117,016 filed on Nov. 23, 2020.
Number | Date | Country | |
---|---|---|---|
63117016 | Nov 2020 | US |