US20140237505A1 - Network-based digital video recorder playback adapter - Google Patents
Network-based digital video recorder playback adapter Download PDFInfo
- Publication number
- US20140237505A1 US20140237505A1 US14/182,114 US201414182114A US2014237505A1 US 20140237505 A1 US20140237505 A1 US 20140237505A1 US 201414182114 A US201414182114 A US 201414182114A US 2014237505 A1 US2014237505 A1 US 2014237505A1
- Authority
- US
- United States
- Prior art keywords
- content
- digital content
- computer
- processor
- executable instructions
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 238000000034 method Methods 0.000 claims abstract description 33
- 230000015654 memory Effects 0.000 claims description 41
- 230000008569 process Effects 0.000 claims description 15
- 230000003044 adaptive effect Effects 0.000 claims description 2
- 230000005540 biological transmission Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 27
- 238000013500 data storage Methods 0.000 description 24
- 230000006870 function Effects 0.000 description 11
- 230000004044 response Effects 0.000 description 10
- 238000000638 solvent extraction Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23113—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving housekeeping operations for stored content, e.g. prioritizing content for deletion because of storage space restrictions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23406—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2347—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/23805—Controlling the feeding rate to the network, e.g. by controlling the video pump
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/242—Synchronization processes, e.g. processing of PCR [Program Clock References]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/26613—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for generating or managing keys in general
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/27—Server based end-user applications
- H04N21/274—Storing end-user multimedia data in response to end-user request, e.g. network recorder
- H04N21/2747—Remote storage of video programs received via the downstream path, e.g. from the server
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/414—Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
- H04N21/4147—PVR [Personal Video Recorder]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4334—Recording operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/43622—Interfacing an external recording device
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47202—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
Definitions
- aspects of the disclosure related generally to digital video recorder functionality, and more particularly to a network-based digital video recording playback adapter.
- Broadband service providers such as cable service providers and satellite service providers, typically communicate broadband signals and/or other signals to customers in order to provide a wide variety of services, such as television service, telephone service, Internet service, etc.
- a signal is communicated from a service provider to a set-top box (“STB”) situated within a customer's household. The signal is then processed by the STB in order to format data for presentation to the customer.
- STB set-top box
- DVRs digital video recorders
- Conventional DVRs are typically situated within the customer's household.
- Conventional STBs and/or DVRs may not be compatible with digital content delivery network systems.
- FIG. 1 is a block diagram including various hardware and software components of for a system for a network-based digital video recorder playback adapter in accordance with one or more embodiments of the disclosure.
- FIG. 2 is a block diagram of illustrative components of an nDVR playback adapter in accordance with one or more embodiments of the disclosure.
- FIG. 3 is a block diagram of illustrative components of a legacy adapter home gateway in accordance with one or more embodiments of the disclosure.
- FIG. 4 is a process flow diagram of an illustrative method for processing digital content in a system for a network-based digital video recorder playback adapter in accordance with one or more embodiments of the disclosure.
- FIG. 5 is a process flow diagram of an illustrative method for processing QAM content in a system for a network-based digital video recorder playback adapter in accordance with one or more embodiments of the disclosure.
- a content delivery network may provide network-based digital video recording, where content may be stored for a user in a cloud service and retrieved upon request by a user.
- Such a system may provide a user with access to increased storage without having to upgrade hardware in their homes.
- updated network-based digital content delivery networks may not be compatible with older customer premise devices.
- a network-based digital video recording playback adapter may allow a user continued user of their customer premise device by receiving a request for digital content, retrieving segments associated with the digital content, generating a content stream based on the segments associated with the digital content, and transmitting the content stream to the customer premise device.
- FIG. 1 is a block diagram including various hardware and software components of for a system for a network-based digital video recorder playback adapter in accordance with one or more embodiments of the disclosure.
- the system may include one or more nDVR storage array(s) 105 , one or more digital rights management (DRM) keystore(s) 110 , one or more video on demand (VOD) back office server(s) 115 , one or more content delivery network server(s) 120 , one or more nDVR playback adapter(s) 125 , one or more pump(s) 130 , one or more quadrature amplitude modulation (QAM) device(s), one or more nDVR API server(s) 140 , one or more out of band (OOB) device(s) 145 , one or more IP client(s) 150 , one or more remote set-top boxes 155 , one or more home gateway(s) 160 , and/or one or more set top boxes 165 .
- DRM digital rights management
- a legacy set top box (STB) 165 may be incompatible to receive digital content directly from a digital content delivery network service provided by a service provider via one or more CDN server(s) 120 .
- a STB 165 may be in communication with a home gateway device 160 .
- the home gateway device 160 may provide a local area network (LAN) within a pre-defined space, such as a residence.
- the home gateway 160 may request and receive digital content and distribute the content to one or more devices connected to the LAN (e.g., remote set top box 155 , IP client 150 , and/or STB 165 ).
- the home gateway 160 may server as a load balancing mechanism by receiving requests for content from the various devices connected to the LAN and determining where each device should obtain the requested digital content (e.g., directly a CDN 120 or via a QAM device 135 ).
- the nDVR API server 140 may generate and maintain information associated with content accessible by users associated with a user account. For example, the nDVR API server 140 may identify a user account associated with one or more customer premise devices (e.g., STB 165 , home gateway 160 , remote STB 155 , and/or IP client(s) 150 ). The nDVR API server 140 may determine that the user account has access to digital content based at least in part on a subscription or service type associated with the user account. For example, the user account may be associated with a basic cable package and have 100 gigabytes of storage available to store digital content.
- customer premise devices e.g., STB 165 , home gateway 160 , remote STB 155 , and/or IP client(s) 150 .
- the nDVR API server 140 may determine that the user account has access to digital content based at least in part on a subscription or service type associated with the user account. For example, the user account may be associated with a basic cable package and have 100
- the nDVR API server 140 may generate a listing of live content available to the customer premise devices based at least in part the user account and may manage and maintain storage of digital content on one or more remote servers in association with the user account. In some embodiments, the nDVR API server 140 may receive requests from one or more IP clients 150 associated with a user account. The nDVR API server 140 may transmit lists of available content, either via a subscription associated with the user account and/or digital content stored in association with the user account to an IP client 150 , a home gateway 160 , and/or a STB 165 .
- the legacy STB 165 may receive a listing of digital content available via the digital content delivery network from an nDVR API server 140 through the OOB device 145 .
- the STB 165 and/or home gateway 160 may generate requests to communicate with an nDVR API server 140 and/or an nDVR playback adapter 125 to request digital content.
- the requests are received by an OOB device 145 and processed prior to being transmitted to their intended destinations.
- the OOB device 145 processes the requests to ensure the message is compatible with the destination devices.
- the nDVR playback adapter 125 may receive a request for content.
- the request may originate from a home gateway 160 or a STB 165 .
- the request for digital content may be a network uniform resource locator (URL).
- URL network uniform resource locator
- the nDVR playback adapter 125 may communicate with one or more CDN server(s) 120 to retrieve the requested digital content.
- the CDN server(s) 120 may retrieve the plurality of segments associated with the digital content based at least in part on the network URL of the request.
- the CDN 120 may communicate with one or more nDVR storage arrays 105 to obtain a plurality of segments associated with the digital content.
- the CDN 120 may package the segments to transmit to the nDVR playback adapter 125 .
- the nDVR playback adapter 125 may receive and process the packaged segments from the CDN 120 .
- the nDVR playback adapter 125 may obtain one or more keys from a DRM keystore 110 .
- the nDVR playback adapter 125 may decrypt or unencrypt the processed segments based at least in part on the keys obtained from the DRM keystore 110 .
- the nDVR playback adapter 125 may communicate with one or more VOD back office server(s) 115 to identify one or more resources (e.g., pumps 130 and/or QAM devices 135 ) available to further process the requested digital content.
- the nDVR playback adapter 125 may receive information associated with available resources within the network for further processing the digital content.
- the nDVR playback adapter 125 may generate a digital content stream based at least in part on the plurality of segments.
- the nDVR playback adapter 125 may decrypt, trans-encapsulate, enrich, and/or concatenate the plurality of segments to generate the digital content stream and transmit the content stream to one or more pumps 130 .
- the pump may process the content stream received from the nDVR playback adapter 125 to facilitates encoding the content stream and equalize the stream.
- the pump may transmit the processed stream to the QAM device 135 .
- the QAM device may receive the processed content stream and modulate and encrypt.
- the content stream may then be transmitted to requesting device (e.g., STB 165 and/or home gateway 160 ).
- the STB may receive the content stream from the QAM 135 and display the content stream to a user.
- the STB may request 165 that one or more trick modes be applied to the content stream.
- the STB 165 may generate a request to the nDVR playback adapter 125 with regards to the trick modes.
- the nDVR playback adapter 125 may have generated data associated with trick modes during the generation of the content stream.
- the nDVR playback adapter 125 may receive the request associated with the trick modes and may make modifications to the content stream prior to transmitting the content stream to the pump 130 .
- the IP client 150 may be in communication with the home gateway 160 and may request digital content via the home gateway 160 . In some embodiments, the IP client 150 may access the content delivery network from a different network based at least in part on its association with a user account and may access content directly from one or more CDN server(s) 120 or via the nDVR API server 140 .
- FIG. 1 is provided by way of example only. Numerous other operating environments, system architectures, and device configurations are within the scope of this disclosure. Other embodiments of the disclosure may include fewer or greater numbers of components and/or devices and may incorporate some or all of the functionality described with respect to the illustrative architecture 100 depicted in FIG. 1 , or additional functionality.
- FIG. 2 is a block diagram of illustrative components of an nDVR playback adapter 125 in accordance with one or more embodiments of the disclosure.
- the illustrative system architecture 200 may include one or more processors (processor(s)) 202 and one or more memories 210 (referred to herein generically as memory 210 ).
- the processor(s) 202 may include any suitable processing unit capable of accepting digital data as input, processing the input data based on stored computer-executable instructions, and generating output data.
- the computer-executable instructions may be stored, for example, in the data storage 204 and may include, among other things, operating system software and application software.
- the computer-executable instructions may be retrieved from the data storage 204 and loaded into the memory 210 as needed for execution.
- the processor(s) 202 may be configured to execute the computer-executable instructions to cause various operations to be performed.
- the processor(s) 202 may include any type of processing unit including, but not limited to, a central processing unit, a microprocessor, a microcontroller, a Reduced Instruction Set Computer (RISC) microprocessor, a Complex Instruction Set Computer (CISC) microprocessor, an Application Specific Integrated Circuit (ASIC), a System-on-a-Chip (SoC), a field-programmable gate array (FPGA), and so forth.
- RISC Reduced Instruction Set Computer
- CISC Complex Instruction Set Computer
- ASIC Application Specific Integrated Circuit
- SoC System-on-a-Chip
- FPGA field-programmable gate array
- the data storage 204 may store program instructions that are loadable and executable by the processor(s) 202 , as well as data manipulated and generated by the processor(s) 202 during execution of the program instructions.
- the program instructions may be loaded into the memory 210 as needed for execution.
- the memory 210 may be volatile memory (memory that is not configured to retain stored information when not supplied with power) such as random access memory (RAM) and/or non-volatile memory (memory that is configured to retain stored information even when not supplied with power) such as read-only memory (ROM), flash memory, and so forth.
- the memory 210 may include multiple different types of memory, such as various forms of static random access memory (SRAM), various forms of dynamic random access memory (DRAM), unalterable ROM, and/or writeable variants of ROM such as electrically erasable programmable read-only memory (EEPROM), flash memory, and so forth.
- SRAM static random access memory
- DRAM dynamic random access memory
- EEPROM electrically erasable programmable read-only memory
- flash memory and so forth.
- the nDVR playback adapter(s) 125 may further include additional data storage 204 such as removable storage and/or non-removable storage including, but not limited to, magnetic storage, optical disk storage, and/or tape storage.
- Data storage 204 may provide non-volatile storage of computer-executable instructions and other data.
- the memory 210 and/or the data storage 204 , removable and/or non-removable, are examples of computer-readable storage media (CRSM).
- CRSM computer-readable storage media
- the nDVR playback adapter(s) 125 may further include network interface(s) 208 that facilitate communication between the nDVR playback adapter(s) 125 and other devices of the illustrative system architecture 100 or application software via the network(s).
- the nDVR playback adapter(s) 125 may additionally include one or more input/output (I/O) interfaces 206 (and optionally associated software components such as device drivers) that may support interaction between a user and a variety of I/O devices, such as a keyboard, a mouse, a pen, a pointing device, a voice input device, a touch input device, a display, speakers, a camera, a microphone, a printer, and so forth.
- I/O input/output
- various program modules, applications, or the like may be stored therein that may comprise computer-executable instructions that when executed by the processor(s) 202 cause various operations to be performed.
- the memory 210 may have loaded from the data storage 204 one or more operating systems (O/S) 212 that may provide an interface between other application software (e.g., dedicated applications, a browser application, a web-based application, a distributed client-server application, etc.) executing on the nDVR playback adapter(s) 125 and the hardware resources of the nDVR playback adapter(s) 125 .
- application software e.g., dedicated applications, a browser application, a web-based application, a distributed client-server application, etc.
- the O/S 212 may include a set of computer-executable instructions for managing the hardware resources of the nDVR playback adapter(s) 125 and for providing common services to other application programs (e.g., managing memory allocation among various application programs).
- the O/S 212 may include any operating system now known or which may be developed in the future including, but not limited to, any mobile operating system, desktop or laptop operating system, mainframe operating system, or any other proprietary or open-source operating system.
- the data storage 204 may further include one or more database management systems (DBMS) 214 for accessing, retrieving, storing, and/or manipulating data stored in one or more datastores.
- DBMS database management systems
- the DBMS 214 may use any of a variety of database models (e.g., relational model, object model, etc.) and may support any of a variety of query languages.
- the data storage 204 may additionally include various other program modules that may include computer-executable instructions for supporting a variety of associated functionality.
- the data storage 204 may include one or more playback client(s) 216 , one or more de-packager(s) 218 , one or more transcoders(s) 220 , one or more DRM agent(s) 222 , and/or one or more trick mode file generator(s) 224 .
- the playback client(s) 216 may include computer-executable instructions that in response to execution by the processor(s) 202 cause operations to be performed including receiving a request for digital content from a legacy device, such as a set top box 165 , and/or retrieving or otherwise obtaining files containing or associated with the requested digital content from one or more CDN server(s) 120 and/or nDVR API server(s) 140 .
- the de-packager(s) 218 may include computer-executable instructions that in response to execution by the processor(s) 202 cause operations to be performed including receiving the digital content from the playback client 216 and de-packaging or unzipping the digital content from the retrieved files.
- the transcoder (s) 220 may include computer-executable instructions that in response to execution by the processor(s) 202 cause operations to be performed including receiving the unpackaged digital content from the de-packager 218 and transcoding the digital content.
- the DRM agent(s) 222 may include computer-executable instructions that in response to execution by the processor(s) 202 cause operations to be performed including retrieving one or more keys from a DRM keystore 110 and decrypting the digital content received from the transcoder based at least in part on the one or more keys retrieved from the DRM keystore 110 .
- the trick mode file generator(s) 224 may include computer-executable instructions that in response to execution by the processor(s) 202 cause operations to be performed including generating data associated with one or more trick modes based at least in part on the digital content.
- the trick mode file generator 224 may generate frames to be used for trick modes, such as fast forward or rewind, of the digital content.
- modules may be stored.
- the term module may refer to a functional collection of instructions that may be executed by the one or more processor(s) 202 .
- the various functions provided by the modules may be merged, separated, and so forth.
- the modules may intercommunicate or otherwise interact with one another, such that the conditions of one affect the operation of another.
- program modules e.g., software modules
- functionality described as being supported by the program modules may be enabled by any combination of hardware, software, and/or firmware.
- each of the above-mentioned modules may, in various embodiments, represent a logical partitioning of supported functionality. This logical partitioning is depicted for ease of explanation of the functionality and may not be representative of the structure of hardware, software, or firmware for implementing the functionality. Accordingly, it should be appreciated that the functionality described as being provided by a particular module may, in various embodiments, be provided at least in part by one or more other modules. Further, one or more depicted modules may not be present in certain embodiments, while in other embodiments, additional modules not depicted may be present and may support at least a portion of the described functionality and/or additional functionality. Further, while certain modules may be depicted and described as sub-modules of another module, in certain embodiments, such modules may be provided as independent modules.
- program modules e.g., software modules
- functionality described as being supported by the program modules may be enabled by any combination of hardware, software, and/or firmware.
- each of the above-mentioned modules may, in various embodiments, represent a logical partitioning of supported functionality. This logical partitioning is depicted for ease of explanation of the functionality and may not be representative of the structure of hardware, software, or firmware for implementing the functionality. Accordingly, it should be appreciated that the functionality described as being provided by a particular module may, in various embodiments, be provided at least in part by one or more other modules. Further, one or more depicted modules may not be present in certain embodiments, while in other embodiments, additional modules not depicted may be present and may support at least a portion of the described functionality and/or additional functionality. Further, while certain modules may be depicted and described as sub-modules of another module, in certain embodiments, such modules may be provided as independent modules.
- FIG. 3 is a block diagram of illustrative components of a legacy adapter home gateway 160 in accordance with one or more embodiments of the disclosure.
- the illustrative system architecture 300 may include one or more processors (processor(s)) 302 and one or more memories 310 (referred to herein generically as memory 310 ).
- the processor(s) 302 may include any suitable processing unit capable of accepting digital data as input, processing the input data based on stored computer-executable instructions, and generating output data.
- the computer-executable instructions may be stored, for example, in the data storage 304 and may include, among other things, operating system software and application software.
- the computer-executable instructions may be retrieved from the data storage 304 and loaded into the memory 310 as needed for execution.
- the processor(s) 302 may be configured to execute the computer-executable instructions to cause various operations to be performed.
- the processor(s) 302 may include any type of processing unit including, but not limited to, a central processing unit, a microprocessor, a microcontroller, a Reduced Instruction Set Computer (RISC) microprocessor, a Complex Instruction Set Computer (CISC) microprocessor, an Application Specific Integrated Circuit (ASIC), a System-on-a-Chip (SoC), a field-programmable gate array (FPGA), and so forth.
- RISC Reduced Instruction Set Computer
- CISC Complex Instruction Set Computer
- ASIC Application Specific Integrated Circuit
- SoC System-on-a-Chip
- FPGA field-programmable gate array
- the data storage 304 may store program instructions that are loadable and executable by the processor(s) 302 , as well as data manipulated and generated by the processor(s) 302 during execution of the program instructions.
- the program instructions may be loaded into the memory 310 as needed for execution.
- the memory 310 may be volatile memory (memory that is not configured to retain stored information when not supplied with power) such as random access memory (RAM) and/or non-volatile memory (memory that is configured to retain stored information even when not supplied with power) such as read-only memory (ROM), flash memory, and so forth.
- the memory 310 may include multiple different types of memory, such as various forms of static random access memory (SRAM), various forms of dynamic random access memory (DRAM), unalterable ROM, and/or writeable variants of ROM such as electrically erasable programmable read-only memory (EEPROM), flash memory, and so forth.
- SRAM static random access memory
- DRAM dynamic random access memory
- EEPROM electrically erasable programmable read-only memory
- flash memory and so forth.
- the legacy adapter home gateway 160 may further include additional data storage 304 such as removable storage and/or non-removable storage including, but not limited to, magnetic storage, optical disk storage, and/or tape storage.
- Data storage 304 may provide non-volatile storage of computer-executable instructions and other data.
- the memory 310 and/or the data storage 304 , removable and/or non-removable, are examples of computer-readable storage media (CRSM).
- CRSM computer-readable storage media
- the legacy adapter home gateway 160 may further include network interface(s) 308 that facilitate communication between the legacy adapter home gateway 160 and other devices of the illustrative system architecture 100 or application software via the network(s).
- the legacy adapter home gateway 160 may additionally include one or more input/output (I/O) interfaces 306 (and optionally associated software components such as device drivers) that may support interaction between a user and a variety of I/O devices, such as a keyboard, a mouse, a pen, a pointing device, a voice input device, a touch input device, a display, speakers, a camera, a microphone, a printer, and so forth.
- I/O input/output
- various program modules, applications, or the like may be stored therein that may comprise computer-executable instructions that when executed by the processor(s) 302 cause various operations to be performed.
- the memory 310 may have loaded from the data storage 304 one or more operating systems (O/S) 312 that may provide an interface between other application software (e.g., dedicated applications, a browser application, a web-based application, a distributed client-server application, etc.) executing on the legacy adapter home gateway 160 and the hardware resources of the legacy adapter home gateway 160 .
- application software e.g., dedicated applications, a browser application, a web-based application, a distributed client-server application, etc.
- the O/S 312 may include a set of computer-executable instructions for managing the hardware resources of the legacy adapter home gateway 160 and for providing common services to other application programs (e.g., managing memory allocation among various application programs).
- the O/S 312 may include any operating system now known or which may be developed in the future including, but not limited to, any mobile operating system, desktop or laptop operating system, mainframe operating system, or any other proprietary or open-source operating system.
- the data storage 304 may further include one or more database management systems (DBMS) 314 for accessing, retrieving, storing, and/or manipulating data stored in one or more datastores.
- DBMS database management systems
- the DBMS 314 may use any of a variety of database models (e.g., relational model, object model, etc.) and may support any of a variety of query languages.
- the data storage 304 may additionally include various other program modules that may include computer-executable instructions for supporting a variety of associated functionality.
- the data storage 304 may include one or more QAM demodulators 316 , one or more segmenter(s) 318 , one or more load balancer(s) 320 , one or more encryptor(s) 322 , and/or one or more DRM agent(s) 324 .
- the QAM demodulator(s) 316 may include computer-executable instructions that in response to execution by the processor(s) 302 cause operations to be performed including receiving one or more content streams from QAM 135 and demodulating the one or content streams.
- the segmenter(s) 318 may include computer-executable instructions that in response to execution by the processor(s) 302 cause operations to be performed including receiving one or more content streams from QAM demodulator 316 and segmenting the content stream into a plurality of segments.
- the one or more load balancer(s) 320 may include computer-executable instructions that in response to execution by the processor(s) 302 cause operations to be performed including analyzing the one or more active connections from one or more IP clients 150 , remote set-top boxes 155 , and/or set top boxes 165 and their respective content requests. Based at least in part on the type of content requested and current bandwidth status, the load balancer 320 may direct each of the devices to retrieve the digital content from the CDN 120 and/or from the nDVR playback adapter 125 .
- the one or more encryptor(s) 322 may include computer-executable instructions that in response to execution by the processor(s) 302 cause operations to be performed including receive the plurality of segments from the segmenter 318 and encrypt the digital content (e.g., plurality of segments) prior to transmitting the requested digital content to an IP client 150 and/or a remote set-top box 155 .
- the DRM agent(s) 324 may include computer-executable instructions that in response to execution by the processor(s) 302 cause operations to be performed including decrypting content received from the CDN 120 via an IP client 150 using one or more keys retrieved from the DRM keystore 110 or locally stored on the home gateway 160 .
- modules may be stored.
- the term module may refer to a functional collection of instructions that may be executed by the one or more processor(s) 302 .
- the various functions provided by the modules may be merged, separated, and so forth.
- the modules may intercommunicate or otherwise interact with one another, such that the conditions of one affect the operation of another.
- program modules e.g., software modules
- functionality described as being supported by the program modules may be enabled by any combination of hardware, software, and/or firmware.
- each of the above-mentioned modules may, in various embodiments, represent a logical partitioning of supported functionality. This logical partitioning is depicted for ease of explanation of the functionality and may not be representative of the structure of hardware, software, or firmware for implementing the functionality. Accordingly, it should be appreciated that the functionality described as being provided by a particular module may, in various embodiments, be provided at least in part by one or more other modules. Further, one or more depicted modules may not be present in certain embodiments, while in other embodiments, additional modules not depicted may be present and may support at least a portion of the described functionality and/or additional functionality. Further, while certain modules may be depicted and described as sub-modules of another module, in certain embodiments, such modules may be provided as independent modules.
- program modules e.g., software modules
- functionality described as being supported by the program modules may be enabled by any combination of hardware, software, and/or firmware.
- each of the above-mentioned modules may, in various embodiments, represent a logical partitioning of supported functionality. This logical partitioning is depicted for ease of explanation of the functionality and may not be representative of the structure of hardware, software, or firmware for implementing the functionality. Accordingly, it should be appreciated that the functionality described as being provided by a particular module may, in various embodiments, be provided at least in part by one or more other modules. Further, one or more depicted modules may not be present in certain embodiments, while in other embodiments, additional modules not depicted may be present and may support at least a portion of the described functionality and/or additional functionality. Further, while certain modules may be depicted and described as sub-modules of another module, in certain embodiments, such modules may be provided as independent modules.
- FIG. 4 is a process flow diagram of an illustrative method 400 for processing digital content in a system for a network-based digital video recorder playback adapter in accordance with one or more embodiments of the disclosure.
- the nDVR playback adapter 125 may receive a request for digital content.
- the request may originate from a legacy set top box 165 .
- the request may travel, via the OOB 145 module to the nDVR playback adapter 125 .
- the request for digital content may original from a home gateway device 160 on behalf of one or more additional devices, such as the remote set-top box 155 and/or one or more IP clients 150 .
- the nDVR playback adapter 125 may receive a request for digital content from an nDVR API server 140 on behalf of one or more devices, such as an IP client 150 , a home gateway device 160 , and/or a legacy set top box 165 .
- the nDVR playback adapter 125 may request a plurality of segments associated with the digital content.
- the playback client 216 may request a plurality of segments associated with the requested digital content from one or more CDN servers 120 .
- the CDN servers 120 may retrieve the requested segments associated with the digital content from one or more nDVR storage array devices 105 and transmit the segments to the nDVR playback adapter 125 .
- the de-packager(s) 218 may de-package and/or unzip the digital content from the data (e.g., received segments) from the nDVR playback adapter.
- the nDVR playback adapter 125 may obtain an encryption key from a DRM keystore and decrypt the plurality of segments based at least in part on the encryption key.
- the DRM agent 222 of the nDVR playback adapter may determine whether it possesses the required encryption key in local storage of the nDVR playback adapter 125 . If the DRM agent 222 determines the encryption key is not located in the nDVR playback adapter, the DRM agent 222 may identify and establish a communication with an appropriate DRM keystore 110 . The DRM agent 222 may request an encryption key based at least in part on information associated with the requested digital content.
- the DRM agent 222 may receive or otherwise obtain one or more encryption key or similar authentication tool associated with the requested digital content. The DRM agent 22 may then decrypt and/or unencrypt the plurality of segments received from the CDN server 120 . In some embodiments, the plurality of segments received from the CDN server 120 may require multiple levels of decryption and/or unencryption using multiple encryption keys and/or different authentication tools.
- the nDVR playback adapter 125 may generate a digital content stream based at least in part on the decrypted plurality of segments.
- the transcoder (s) 220 may transcoding the digital content stream prior to transmitting the stream to the pump 130 .
- the nDVR playback adapter 125 may transmit the digital content stream. In some embodiments, the nDVR playback adapter 125 may transmit the digital content stream to the pump 130 . In some embodiments, the nDVR playback adapter 125 may transmit the digital content stream to an nDVR API server 140 .
- the trick mode file generator(s) 224 may generate data associated with one or more trick modes based at least in part on the digital content.
- the generated data may be transmitted with the digital content stream.
- the generated data associated with the digital content may be generated and maintained by the nDVR playback adapter 125 and used when requests are received from one or more legacy devices (e.g., STB 165 ) to effectuate one or more trick modes in association with the digital content.
- FIG. 5 is a process flow diagram of an illustrative method 500 for processing QAM content in a system for a network-based digital video recorder playback adapter in accordance with one or more embodiments of the disclosure.
- the legacy adapter home gateway 160 may receive content as QAM payload.
- the QAM payload may be received from the QAM 135 module.
- the home gateway 160 may receive the digital content stream via the pump 130 as described in relation to FIG. 4 .
- the legacy adapter home gateway 160 may process the QAM payload.
- the QAM demodulator 316 may process the QAM payload to extract or otherwise obtain the requested digital content from the QAM payload.
- the segmenter 318 may receive the demodulated digital content from the QAM demodulator 316 and segment or otherwise divide the digital content stream into a plurality of smaller files.
- the legacy adapter home gateway 160 may generate adaptive bit rate (ABR) transport of content based at least in part on the processed QAM payload.
- ABR adaptive bit rate
- the home gateway 160 may generate an ABR transport of content based at least in part on the encrypted plurality of segments derived from the digital content stream.
- the legacy adapter home gateway 160 may encrypt the content.
- the encryptor 322 may encrypt the one or more plurality of segments from the segmenter 318 using an authentication tool, such as an encryption key obtained by the DRM agent 324 from a DRM keystore 110 .
- the legacy adapter home gateway 160 may transmit the content to one or more user devices.
- the home gateway 160 may transmit the content to one or more IP clients 150 , remote set top boxes 155 , and/or a set top box 165 .
- These computer-executable program instructions may be loaded onto a special-purpose computer or other particular machine, a processor, or other programmable data processing apparatus to produce a particular machine, such that the instructions that execute on the computer, processor, or other programmable data processing apparatus create means for implementing one or more functions specified in the flow diagram block or blocks.
- These computer program instructions may also be stored in a computer-readable storage media or memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable storage media produce an article of manufacture including instruction means that implement one or more functions specified in the flow diagram block or blocks.
- certain implementations may provide for a computer program product, comprising a computer-readable storage medium having a computer-readable program code or program instructions implemented therein, said computer-readable program code adapted to be executed to implement one or more functions specified in the flow diagram block or blocks.
- the computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational elements or steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions that execute on the computer or other programmable apparatus provide elements or steps for implementing the functions specified in the flow diagram block or blocks.
- blocks of the block diagrams and flow diagrams support combinations of means for performing the specified functions, combinations of elements or steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that each block of the block diagrams and flow diagrams, and combinations of blocks in the block diagrams and flow diagrams, can be implemented by special-purpose, hardware-based computer systems that perform the specified functions, elements or steps, or combinations of special-purpose hardware and computer instructions.
- conditional language such as, among others, “can,” “could,” “might,” or “may,” unless specifically stated otherwise, or otherwise understood within the context as used, is generally intended to convey that certain implementations could include, while other implementations do not include, certain features, elements, and/or operations. Thus, such conditional language is not generally intended to imply that features, elements, and/or operations are in any way required for one or more implementations or that one or more implementations necessarily include logic for deciding, with or without user input or prompting, whether these features, elements, and/or operations are included or are to be performed in any particular implementation.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Human Computer Interaction (AREA)
- Television Signal Processing For Recording (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
- This application claims priority to U.S. Provisional Patent Application No. 61/765,344, entitled “Cloud-Enabled Network-Based Digital Video Recorder,” filed on Feb. 15, 2013, the contents of which are incorporated by reference herein in their entirety.
- Aspects of the disclosure related generally to digital video recorder functionality, and more particularly to a network-based digital video recording playback adapter.
- Broadband service providers, such as cable service providers and satellite service providers, typically communicate broadband signals and/or other signals to customers in order to provide a wide variety of services, such as television service, telephone service, Internet service, etc. In conventional systems, a signal is communicated from a service provider to a set-top box (“STB”) situated within a customer's household. The signal is then processed by the STB in order to format data for presentation to the customer. Additionally, many conventional systems utilize digital video recorders (“DVRs”) to facilitate the recording of broadband content at the customer's direction. Conventional DVRs are typically situated within the customer's household. Conventional STBs and/or DVRs may not be compatible with digital content delivery network systems.
- The detailed description is set forth with reference to the accompanying drawings. The use of the same reference numerals indicates similar or identical components or elements; however, different reference numerals may be used as well to indicate components or elements which may be similar or identical. Various embodiments of the disclosure may utilize elements and/or components other than those illustrated in the drawings, and some elements and/or components may not be present in various embodiments. Depending on the context, singular terminology used to describe an element or a component may encompass a plural number of such elements or components and vice versa.
-
FIG. 1 is a block diagram including various hardware and software components of for a system for a network-based digital video recorder playback adapter in accordance with one or more embodiments of the disclosure. -
FIG. 2 is a block diagram of illustrative components of an nDVR playback adapter in accordance with one or more embodiments of the disclosure. -
FIG. 3 is a block diagram of illustrative components of a legacy adapter home gateway in accordance with one or more embodiments of the disclosure. -
FIG. 4 is a process flow diagram of an illustrative method for processing digital content in a system for a network-based digital video recorder playback adapter in accordance with one or more embodiments of the disclosure. -
FIG. 5 is a process flow diagram of an illustrative method for processing QAM content in a system for a network-based digital video recorder playback adapter in accordance with one or more embodiments of the disclosure. - This disclosure relates to, among other things, systems, methods, computer-readable media, techniques, and methodology for a network-based digital video recording playback adapter. In some embodiments, a content delivery network may provide network-based digital video recording, where content may be stored for a user in a cloud service and retrieved upon request by a user. Such a system may provide a user with access to increased storage without having to upgrade hardware in their homes. However, in many cases, such updated network-based digital content delivery networks may not be compatible with older customer premise devices. A network-based digital video recording playback adapter may allow a user continued user of their customer premise device by receiving a request for digital content, retrieving segments associated with the digital content, generating a content stream based on the segments associated with the digital content, and transmitting the content stream to the customer premise device.
- Various illustrative embodiments have been discussed above. These and other example embodiments of the disclosure will be described in more detail hereinafter through reference to the accompanying drawings. The drawings and the corresponding description are provided merely for illustration and are not intended to limit the disclosure in any way. It should be appreciated that numerous other embodiments, variations, and so forth are within the scope of this disclosure.
- Illustrative use Cases and System Architecture
-
FIG. 1 is a block diagram including various hardware and software components of for a system for a network-based digital video recorder playback adapter in accordance with one or more embodiments of the disclosure. In some embodiments, the system may include one or more nDVR storage array(s) 105, one or more digital rights management (DRM) keystore(s) 110, one or more video on demand (VOD) back office server(s) 115, one or more content delivery network server(s) 120, one or more nDVR playback adapter(s) 125, one or more pump(s) 130, one or more quadrature amplitude modulation (QAM) device(s), one or more nDVR API server(s) 140, one or more out of band (OOB) device(s) 145, one or more IP client(s) 150, one or more remote set-top boxes 155, one or more home gateway(s) 160, and/or one or more settop boxes 165. - In an illustrative example, a legacy set top box (STB) 165 may be incompatible to receive digital content directly from a digital content delivery network service provided by a service provider via one or more CDN server(s) 120. In some embodiments, a STB 165 may be in communication with a
home gateway device 160. Thehome gateway device 160 may provide a local area network (LAN) within a pre-defined space, such as a residence. Thehome gateway 160 may request and receive digital content and distribute the content to one or more devices connected to the LAN (e.g., remote settop box 155,IP client 150, and/or STB 165). In some embodiments, thehome gateway 160 may server as a load balancing mechanism by receiving requests for content from the various devices connected to the LAN and determining where each device should obtain the requested digital content (e.g., directly aCDN 120 or via a QAM device 135). - The nDVR
API server 140 may generate and maintain information associated with content accessible by users associated with a user account. For example, the nDVRAPI server 140 may identify a user account associated with one or more customer premise devices (e.g., STB 165,home gateway 160, remote STB 155, and/or IP client(s) 150). The nDVRAPI server 140 may determine that the user account has access to digital content based at least in part on a subscription or service type associated with the user account. For example, the user account may be associated with a basic cable package and have 100 gigabytes of storage available to store digital content. In some embodiments, the nDVRAPI server 140 may generate a listing of live content available to the customer premise devices based at least in part the user account and may manage and maintain storage of digital content on one or more remote servers in association with the user account. In some embodiments, the nDVRAPI server 140 may receive requests from one ormore IP clients 150 associated with a user account. The nDVRAPI server 140 may transmit lists of available content, either via a subscription associated with the user account and/or digital content stored in association with the user account to anIP client 150, ahome gateway 160, and/or aSTB 165. - In some embodiments, the legacy STB 165 may receive a listing of digital content available via the digital content delivery network from an nDVR
API server 140 through theOOB device 145. In some embodiments, theSTB 165 and/orhome gateway 160 may generate requests to communicate with annDVR API server 140 and/or annDVR playback adapter 125 to request digital content. In some embodiments, the requests are received by anOOB device 145 and processed prior to being transmitted to their intended destinations. In some embodiments, theOOB device 145 processes the requests to ensure the message is compatible with the destination devices. - In some embodiments, the nDVR
playback adapter 125 may receive a request for content. The request may originate from ahome gateway 160 or a STB 165. In some embodiments, the request for digital content may be a network uniform resource locator (URL). - The nDVR
playback adapter 125, based at least in part on the request, may communicate with one or more CDN server(s) 120 to retrieve the requested digital content. In some embodiments, the CDN server(s) 120 may retrieve the plurality of segments associated with the digital content based at least in part on the network URL of the request. TheCDN 120 may communicate with one or morenDVR storage arrays 105 to obtain a plurality of segments associated with the digital content. TheCDN 120 may package the segments to transmit to thenDVR playback adapter 125. - In some embodiments, the nDVR
playback adapter 125 may receive and process the packaged segments from theCDN 120. The nDVRplayback adapter 125 may obtain one or more keys from aDRM keystore 110. ThenDVR playback adapter 125 may decrypt or unencrypt the processed segments based at least in part on the keys obtained from theDRM keystore 110. - The nDVR
playback adapter 125 may communicate with one or more VOD back office server(s) 115 to identify one or more resources (e.g.,pumps 130 and/or QAM devices 135) available to further process the requested digital content. The nDVRplayback adapter 125 may receive information associated with available resources within the network for further processing the digital content. - The nDVR
playback adapter 125 may generate a digital content stream based at least in part on the plurality of segments. ThenDVR playback adapter 125 may decrypt, trans-encapsulate, enrich, and/or concatenate the plurality of segments to generate the digital content stream and transmit the content stream to one ormore pumps 130. The pump may process the content stream received from the nDVRplayback adapter 125 to facilitates encoding the content stream and equalize the stream. The pump may transmit the processed stream to theQAM device 135. The QAM device may receive the processed content stream and modulate and encrypt. The content stream may then be transmitted to requesting device (e.g.,STB 165 and/or home gateway 160). - The STB may receive the content stream from the
QAM 135 and display the content stream to a user. In some embodiments, the STB may request 165 that one or more trick modes be applied to the content stream. TheSTB 165 may generate a request to thenDVR playback adapter 125 with regards to the trick modes. In some embodiments, thenDVR playback adapter 125 may have generated data associated with trick modes during the generation of the content stream. ThenDVR playback adapter 125 may receive the request associated with the trick modes and may make modifications to the content stream prior to transmitting the content stream to thepump 130. - In some embodiments, the
IP client 150 may be in communication with thehome gateway 160 and may request digital content via thehome gateway 160. In some embodiments, theIP client 150 may access the content delivery network from a different network based at least in part on its association with a user account and may access content directly from one or more CDN server(s) 120 or via thenDVR API server 140. - Those of ordinary skill in the art will appreciate that the
illustrative architecture 100 depicted inFIG. 1 is provided by way of example only. Numerous other operating environments, system architectures, and device configurations are within the scope of this disclosure. Other embodiments of the disclosure may include fewer or greater numbers of components and/or devices and may incorporate some or all of the functionality described with respect to theillustrative architecture 100 depicted inFIG. 1 , or additional functionality. -
FIG. 2 is a block diagram of illustrative components of annDVR playback adapter 125 in accordance with one or more embodiments of the disclosure. Theillustrative system architecture 200 may include one or more processors (processor(s)) 202 and one or more memories 210 (referred to herein generically as memory 210). The processor(s) 202 may include any suitable processing unit capable of accepting digital data as input, processing the input data based on stored computer-executable instructions, and generating output data. The computer-executable instructions may be stored, for example, in thedata storage 204 and may include, among other things, operating system software and application software. The computer-executable instructions may be retrieved from thedata storage 204 and loaded into thememory 210 as needed for execution. The processor(s) 202 may be configured to execute the computer-executable instructions to cause various operations to be performed. The processor(s) 202 may include any type of processing unit including, but not limited to, a central processing unit, a microprocessor, a microcontroller, a Reduced Instruction Set Computer (RISC) microprocessor, a Complex Instruction Set Computer (CISC) microprocessor, an Application Specific Integrated Circuit (ASIC), a System-on-a-Chip (SoC), a field-programmable gate array (FPGA), and so forth. - The
data storage 204 may store program instructions that are loadable and executable by the processor(s) 202, as well as data manipulated and generated by the processor(s) 202 during execution of the program instructions. The program instructions may be loaded into thememory 210 as needed for execution. Depending on the configuration and implementation of the nDVR playback adapter(s) 125, thememory 210 may be volatile memory (memory that is not configured to retain stored information when not supplied with power) such as random access memory (RAM) and/or non-volatile memory (memory that is configured to retain stored information even when not supplied with power) such as read-only memory (ROM), flash memory, and so forth. In various implementations, thememory 210 may include multiple different types of memory, such as various forms of static random access memory (SRAM), various forms of dynamic random access memory (DRAM), unalterable ROM, and/or writeable variants of ROM such as electrically erasable programmable read-only memory (EEPROM), flash memory, and so forth. - The nDVR playback adapter(s) 125 may further include
additional data storage 204 such as removable storage and/or non-removable storage including, but not limited to, magnetic storage, optical disk storage, and/or tape storage.Data storage 204 may provide non-volatile storage of computer-executable instructions and other data. Thememory 210 and/or thedata storage 204, removable and/or non-removable, are examples of computer-readable storage media (CRSM). - The nDVR playback adapter(s) 125 may further include network interface(s) 208 that facilitate communication between the nDVR playback adapter(s) 125 and other devices of the
illustrative system architecture 100 or application software via the network(s). The nDVR playback adapter(s) 125 may additionally include one or more input/output (I/O) interfaces 206 (and optionally associated software components such as device drivers) that may support interaction between a user and a variety of I/O devices, such as a keyboard, a mouse, a pen, a pointing device, a voice input device, a touch input device, a display, speakers, a camera, a microphone, a printer, and so forth. - Referring again to the
data storage 204, various program modules, applications, or the like may be stored therein that may comprise computer-executable instructions that when executed by the processor(s) 202 cause various operations to be performed. Thememory 210 may have loaded from thedata storage 204 one or more operating systems (O/S) 212 that may provide an interface between other application software (e.g., dedicated applications, a browser application, a web-based application, a distributed client-server application, etc.) executing on the nDVR playback adapter(s) 125 and the hardware resources of the nDVR playback adapter(s) 125. More specifically, the O/S 212 may include a set of computer-executable instructions for managing the hardware resources of the nDVR playback adapter(s) 125 and for providing common services to other application programs (e.g., managing memory allocation among various application programs). The O/S 212 may include any operating system now known or which may be developed in the future including, but not limited to, any mobile operating system, desktop or laptop operating system, mainframe operating system, or any other proprietary or open-source operating system. - The
data storage 204 may further include one or more database management systems (DBMS) 214 for accessing, retrieving, storing, and/or manipulating data stored in one or more datastores. TheDBMS 214 may use any of a variety of database models (e.g., relational model, object model, etc.) and may support any of a variety of query languages. - The
data storage 204 may additionally include various other program modules that may include computer-executable instructions for supporting a variety of associated functionality. For example, thedata storage 204 may include one or more playback client(s) 216, one or more de-packager(s) 218, one or more transcoders(s) 220, one or more DRM agent(s) 222, and/or one or more trick mode file generator(s) 224. - The playback client(s) 216 may include computer-executable instructions that in response to execution by the processor(s) 202 cause operations to be performed including receiving a request for digital content from a legacy device, such as a
set top box 165, and/or retrieving or otherwise obtaining files containing or associated with the requested digital content from one or more CDN server(s) 120 and/or nDVR API server(s) 140. The de-packager(s) 218 may include computer-executable instructions that in response to execution by the processor(s) 202 cause operations to be performed including receiving the digital content from theplayback client 216 and de-packaging or unzipping the digital content from the retrieved files. - The transcoder (s) 220 may include computer-executable instructions that in response to execution by the processor(s) 202 cause operations to be performed including receiving the unpackaged digital content from the de-packager 218 and transcoding the digital content.
- The DRM agent(s) 222 may include computer-executable instructions that in response to execution by the processor(s) 202 cause operations to be performed including retrieving one or more keys from a
DRM keystore 110 and decrypting the digital content received from the transcoder based at least in part on the one or more keys retrieved from the DRM keystore 110. - The trick mode file generator(s) 224 may include computer-executable instructions that in response to execution by the processor(s) 202 cause operations to be performed including generating data associated with one or more trick modes based at least in part on the digital content. For example, the trick
mode file generator 224 may generate frames to be used for trick modes, such as fast forward or rewind, of the digital content. - Within the
data storage 204, one or more modules may be stored. As used herein, the term module may refer to a functional collection of instructions that may be executed by the one or more processor(s) 202. For ease of description, and not by way of limitation, separate modules are described. However, it is understood that in some implementations the various functions provided by the modules may be merged, separated, and so forth. Furthermore, the modules may intercommunicate or otherwise interact with one another, such that the conditions of one affect the operation of another. - While various program modules (e.g., software modules) have been depicted and described with respect to various illustrative components of the
architecture 200, it should be appreciated that the functionality described as being supported by the program modules may be enabled by any combination of hardware, software, and/or firmware. - It should further be appreciated that each of the above-mentioned modules may, in various embodiments, represent a logical partitioning of supported functionality. This logical partitioning is depicted for ease of explanation of the functionality and may not be representative of the structure of hardware, software, or firmware for implementing the functionality. Accordingly, it should be appreciated that the functionality described as being provided by a particular module may, in various embodiments, be provided at least in part by one or more other modules. Further, one or more depicted modules may not be present in certain embodiments, while in other embodiments, additional modules not depicted may be present and may support at least a portion of the described functionality and/or additional functionality. Further, while certain modules may be depicted and described as sub-modules of another module, in certain embodiments, such modules may be provided as independent modules.
- While various program modules (e.g., software modules) have been depicted and described with respect to various illustrative components of the
architecture 200, it should be appreciated that the functionality described as being supported by the program modules may be enabled by any combination of hardware, software, and/or firmware. - It should further be appreciated that each of the above-mentioned modules may, in various embodiments, represent a logical partitioning of supported functionality. This logical partitioning is depicted for ease of explanation of the functionality and may not be representative of the structure of hardware, software, or firmware for implementing the functionality. Accordingly, it should be appreciated that the functionality described as being provided by a particular module may, in various embodiments, be provided at least in part by one or more other modules. Further, one or more depicted modules may not be present in certain embodiments, while in other embodiments, additional modules not depicted may be present and may support at least a portion of the described functionality and/or additional functionality. Further, while certain modules may be depicted and described as sub-modules of another module, in certain embodiments, such modules may be provided as independent modules.
-
FIG. 3 is a block diagram of illustrative components of a legacyadapter home gateway 160 in accordance with one or more embodiments of the disclosure. Theillustrative system architecture 300 may include one or more processors (processor(s)) 302 and one or more memories 310 (referred to herein generically as memory 310). The processor(s) 302 may include any suitable processing unit capable of accepting digital data as input, processing the input data based on stored computer-executable instructions, and generating output data. The computer-executable instructions may be stored, for example, in thedata storage 304 and may include, among other things, operating system software and application software. The computer-executable instructions may be retrieved from thedata storage 304 and loaded into thememory 310 as needed for execution. The processor(s) 302 may be configured to execute the computer-executable instructions to cause various operations to be performed. The processor(s) 302 may include any type of processing unit including, but not limited to, a central processing unit, a microprocessor, a microcontroller, a Reduced Instruction Set Computer (RISC) microprocessor, a Complex Instruction Set Computer (CISC) microprocessor, an Application Specific Integrated Circuit (ASIC), a System-on-a-Chip (SoC), a field-programmable gate array (FPGA), and so forth. - The
data storage 304 may store program instructions that are loadable and executable by the processor(s) 302, as well as data manipulated and generated by the processor(s) 302 during execution of the program instructions. The program instructions may be loaded into thememory 310 as needed for execution. Depending on the configuration and implementation of the legacyadapter home gateway 160, thememory 310 may be volatile memory (memory that is not configured to retain stored information when not supplied with power) such as random access memory (RAM) and/or non-volatile memory (memory that is configured to retain stored information even when not supplied with power) such as read-only memory (ROM), flash memory, and so forth. In various implementations, thememory 310 may include multiple different types of memory, such as various forms of static random access memory (SRAM), various forms of dynamic random access memory (DRAM), unalterable ROM, and/or writeable variants of ROM such as electrically erasable programmable read-only memory (EEPROM), flash memory, and so forth. - The legacy
adapter home gateway 160 may further includeadditional data storage 304 such as removable storage and/or non-removable storage including, but not limited to, magnetic storage, optical disk storage, and/or tape storage.Data storage 304 may provide non-volatile storage of computer-executable instructions and other data. Thememory 310 and/or thedata storage 304, removable and/or non-removable, are examples of computer-readable storage media (CRSM). - The legacy
adapter home gateway 160 may further include network interface(s) 308 that facilitate communication between the legacyadapter home gateway 160 and other devices of theillustrative system architecture 100 or application software via the network(s). The legacyadapter home gateway 160 may additionally include one or more input/output (I/O) interfaces 306 (and optionally associated software components such as device drivers) that may support interaction between a user and a variety of I/O devices, such as a keyboard, a mouse, a pen, a pointing device, a voice input device, a touch input device, a display, speakers, a camera, a microphone, a printer, and so forth. - Referring again to the
data storage 304, various program modules, applications, or the like may be stored therein that may comprise computer-executable instructions that when executed by the processor(s) 302 cause various operations to be performed. Thememory 310 may have loaded from thedata storage 304 one or more operating systems (O/S) 312 that may provide an interface between other application software (e.g., dedicated applications, a browser application, a web-based application, a distributed client-server application, etc.) executing on the legacyadapter home gateway 160 and the hardware resources of the legacyadapter home gateway 160. More specifically, the O/S 312 may include a set of computer-executable instructions for managing the hardware resources of the legacyadapter home gateway 160 and for providing common services to other application programs (e.g., managing memory allocation among various application programs). The O/S 312 may include any operating system now known or which may be developed in the future including, but not limited to, any mobile operating system, desktop or laptop operating system, mainframe operating system, or any other proprietary or open-source operating system. - The
data storage 304 may further include one or more database management systems (DBMS) 314 for accessing, retrieving, storing, and/or manipulating data stored in one or more datastores. TheDBMS 314 may use any of a variety of database models (e.g., relational model, object model, etc.) and may support any of a variety of query languages. - The
data storage 304 may additionally include various other program modules that may include computer-executable instructions for supporting a variety of associated functionality. For example, thedata storage 304 may include one ormore QAM demodulators 316, one or more segmenter(s) 318, one or more load balancer(s) 320, one or more encryptor(s) 322, and/or one or more DRM agent(s) 324. - The QAM demodulator(s) 316 may include computer-executable instructions that in response to execution by the processor(s) 302 cause operations to be performed including receiving one or more content streams from
QAM 135 and demodulating the one or content streams. - The segmenter(s) 318 may include computer-executable instructions that in response to execution by the processor(s) 302 cause operations to be performed including receiving one or more content streams from
QAM demodulator 316 and segmenting the content stream into a plurality of segments. - The one or more load balancer(s) 320 may include computer-executable instructions that in response to execution by the processor(s) 302 cause operations to be performed including analyzing the one or more active connections from one or
more IP clients 150, remote set-top boxes 155, and/or settop boxes 165 and their respective content requests. Based at least in part on the type of content requested and current bandwidth status, theload balancer 320 may direct each of the devices to retrieve the digital content from theCDN 120 and/or from thenDVR playback adapter 125. - The one or more encryptor(s) 322 may include computer-executable instructions that in response to execution by the processor(s) 302 cause operations to be performed including receive the plurality of segments from the
segmenter 318 and encrypt the digital content (e.g., plurality of segments) prior to transmitting the requested digital content to anIP client 150 and/or a remote set-top box 155. - The DRM agent(s) 324 may include computer-executable instructions that in response to execution by the processor(s) 302 cause operations to be performed including decrypting content received from the
CDN 120 via anIP client 150 using one or more keys retrieved from the DRM keystore 110 or locally stored on thehome gateway 160. - Within the
data storage 304, one or more modules may be stored. As used herein, the term module may refer to a functional collection of instructions that may be executed by the one or more processor(s) 302. For ease of description, and not by way of limitation, separate modules are described. However, it is understood that in some implementations the various functions provided by the modules may be merged, separated, and so forth. Furthermore, the modules may intercommunicate or otherwise interact with one another, such that the conditions of one affect the operation of another. - While various program modules (e.g., software modules) have been depicted and described with respect to various illustrative components of the
architecture 300, it should be appreciated that the functionality described as being supported by the program modules may be enabled by any combination of hardware, software, and/or firmware. - It should further be appreciated that each of the above-mentioned modules may, in various embodiments, represent a logical partitioning of supported functionality. This logical partitioning is depicted for ease of explanation of the functionality and may not be representative of the structure of hardware, software, or firmware for implementing the functionality. Accordingly, it should be appreciated that the functionality described as being provided by a particular module may, in various embodiments, be provided at least in part by one or more other modules. Further, one or more depicted modules may not be present in certain embodiments, while in other embodiments, additional modules not depicted may be present and may support at least a portion of the described functionality and/or additional functionality. Further, while certain modules may be depicted and described as sub-modules of another module, in certain embodiments, such modules may be provided as independent modules.
- While various program modules (e.g., software modules) have been depicted and described with respect to various illustrative components of the
architecture 300, it should be appreciated that the functionality described as being supported by the program modules may be enabled by any combination of hardware, software, and/or firmware. - It should further be appreciated that each of the above-mentioned modules may, in various embodiments, represent a logical partitioning of supported functionality. This logical partitioning is depicted for ease of explanation of the functionality and may not be representative of the structure of hardware, software, or firmware for implementing the functionality. Accordingly, it should be appreciated that the functionality described as being provided by a particular module may, in various embodiments, be provided at least in part by one or more other modules. Further, one or more depicted modules may not be present in certain embodiments, while in other embodiments, additional modules not depicted may be present and may support at least a portion of the described functionality and/or additional functionality. Further, while certain modules may be depicted and described as sub-modules of another module, in certain embodiments, such modules may be provided as independent modules.
-
FIG. 4 is a process flow diagram of anillustrative method 400 for processing digital content in a system for a network-based digital video recorder playback adapter in accordance with one or more embodiments of the disclosure. Atblock 405, thenDVR playback adapter 125 may receive a request for digital content. In some embodiments, the request may originate from a legacy settop box 165. The request may travel, via theOOB 145 module to thenDVR playback adapter 125. In some embodiment, the request for digital content may original from ahome gateway device 160 on behalf of one or more additional devices, such as the remote set-top box 155 and/or one ormore IP clients 150. ThenDVR playback adapter 125 may receive a request for digital content from annDVR API server 140 on behalf of one or more devices, such as anIP client 150, ahome gateway device 160, and/or a legacy settop box 165. - At
block 410, thenDVR playback adapter 125 may request a plurality of segments associated with the digital content. In some embodiments, theplayback client 216 may request a plurality of segments associated with the requested digital content from one ormore CDN servers 120. TheCDN servers 120 may retrieve the requested segments associated with the digital content from one or more nDVRstorage array devices 105 and transmit the segments to thenDVR playback adapter 125. In some embodiments, the de-packager(s) 218 may de-package and/or unzip the digital content from the data (e.g., received segments) from the nDVR playback adapter. - At
block 415, thenDVR playback adapter 125 may obtain an encryption key from a DRM keystore and decrypt the plurality of segments based at least in part on the encryption key. In some embodiments, theDRM agent 222 of the nDVR playback adapter may determine whether it possesses the required encryption key in local storage of thenDVR playback adapter 125. If theDRM agent 222 determines the encryption key is not located in the nDVR playback adapter, theDRM agent 222 may identify and establish a communication with anappropriate DRM keystore 110. TheDRM agent 222 may request an encryption key based at least in part on information associated with the requested digital content. TheDRM agent 222 may receive or otherwise obtain one or more encryption key or similar authentication tool associated with the requested digital content. The DRM agent 22 may then decrypt and/or unencrypt the plurality of segments received from theCDN server 120. In some embodiments, the plurality of segments received from theCDN server 120 may require multiple levels of decryption and/or unencryption using multiple encryption keys and/or different authentication tools. - At
block 420, thenDVR playback adapter 125 may generate a digital content stream based at least in part on the decrypted plurality of segments. In some embodiments, the transcoder (s) 220 may transcoding the digital content stream prior to transmitting the stream to thepump 130. - At
block 425, thenDVR playback adapter 125 may transmit the digital content stream. In some embodiments, thenDVR playback adapter 125 may transmit the digital content stream to thepump 130. In some embodiments, thenDVR playback adapter 125 may transmit the digital content stream to annDVR API server 140. - In some embodiments, the trick mode file generator(s) 224 may generate data associated with one or more trick modes based at least in part on the digital content. The generated data may be transmitted with the digital content stream. In some embodiments, the generated data associated with the digital content may be generated and maintained by the
nDVR playback adapter 125 and used when requests are received from one or more legacy devices (e.g., STB 165) to effectuate one or more trick modes in association with the digital content. -
FIG. 5 is a process flow diagram of anillustrative method 500 for processing QAM content in a system for a network-based digital video recorder playback adapter in accordance with one or more embodiments of the disclosure. Atblock 505, the legacyadapter home gateway 160 may receive content as QAM payload. In some embodiments, the QAM payload may be received from theQAM 135 module. For example, thehome gateway 160 may receive the digital content stream via thepump 130 as described in relation toFIG. 4 . - At
block 510, the legacyadapter home gateway 160 may process the QAM payload. In some embodiments, theQAM demodulator 316 may process the QAM payload to extract or otherwise obtain the requested digital content from the QAM payload. Thesegmenter 318 may receive the demodulated digital content from theQAM demodulator 316 and segment or otherwise divide the digital content stream into a plurality of smaller files. - At
block 515, the legacyadapter home gateway 160 may generate adaptive bit rate (ABR) transport of content based at least in part on the processed QAM payload. In some embodiments, thehome gateway 160 may generate an ABR transport of content based at least in part on the encrypted plurality of segments derived from the digital content stream. - At
block 520, the legacyadapter home gateway 160 may encrypt the content. In some embodiments, theencryptor 322 may encrypt the one or more plurality of segments from thesegmenter 318 using an authentication tool, such as an encryption key obtained by theDRM agent 324 from aDRM keystore 110. - At
block 525, the legacyadapter home gateway 160 may transmit the content to one or more user devices. In some embodiments, thehome gateway 160 may transmit the content to one ormore IP clients 150, remote settop boxes 155, and/or a settop box 165. - The operations and processes described and shown above may be carried out or performed in any suitable order as desired in various implementations. Additionally, in certain implementations, at least a portion of the operations may be carried out in parallel. Furthermore, in certain implementations, less than or more than the operations described may be performed.
- Certain aspects of the disclosure are described above with reference to block and flow diagrams of systems, methods, apparatuses, and/or computer program products according to various implementations. It will be understood that one or more blocks of the block diagrams and flow diagrams, and combinations of blocks in the block diagrams and the flow diagrams, respectively, can be implemented by computer-executable program instructions Likewise, some blocks of the block diagrams and flow diagrams may not necessarily need to be performed in the order presented, or may not necessarily need to be performed at all, according to some implementations.
- These computer-executable program instructions may be loaded onto a special-purpose computer or other particular machine, a processor, or other programmable data processing apparatus to produce a particular machine, such that the instructions that execute on the computer, processor, or other programmable data processing apparatus create means for implementing one or more functions specified in the flow diagram block or blocks. These computer program instructions may also be stored in a computer-readable storage media or memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable storage media produce an article of manufacture including instruction means that implement one or more functions specified in the flow diagram block or blocks. As an example, certain implementations may provide for a computer program product, comprising a computer-readable storage medium having a computer-readable program code or program instructions implemented therein, said computer-readable program code adapted to be executed to implement one or more functions specified in the flow diagram block or blocks. The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational elements or steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions that execute on the computer or other programmable apparatus provide elements or steps for implementing the functions specified in the flow diagram block or blocks.
- Accordingly, blocks of the block diagrams and flow diagrams support combinations of means for performing the specified functions, combinations of elements or steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that each block of the block diagrams and flow diagrams, and combinations of blocks in the block diagrams and flow diagrams, can be implemented by special-purpose, hardware-based computer systems that perform the specified functions, elements or steps, or combinations of special-purpose hardware and computer instructions.
- Conditional language, such as, among others, “can,” “could,” “might,” or “may,” unless specifically stated otherwise, or otherwise understood within the context as used, is generally intended to convey that certain implementations could include, while other implementations do not include, certain features, elements, and/or operations. Thus, such conditional language is not generally intended to imply that features, elements, and/or operations are in any way required for one or more implementations or that one or more implementations necessarily include logic for deciding, with or without user input or prompting, whether these features, elements, and/or operations are included or are to be performed in any particular implementation.
- Many modifications and other implementations of the disclosure set forth herein will be apparent having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the disclosure is not to be limited to the specific implementations disclosed and that modifications and other implementations are intended to be included within the scope of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.
Claims (22)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/182,114 US20140237505A1 (en) | 2013-02-15 | 2014-02-17 | Network-based digital video recorder playback adapter |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361765344P | 2013-02-15 | 2013-02-15 | |
US14/182,114 US20140237505A1 (en) | 2013-02-15 | 2014-02-17 | Network-based digital video recorder playback adapter |
Publications (1)
Publication Number | Publication Date |
---|---|
US20140237505A1 true US20140237505A1 (en) | 2014-08-21 |
Family
ID=51352289
Family Applications (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/801,004 Expired - Fee Related US9479805B2 (en) | 2013-02-15 | 2013-03-13 | Entitlement validation and quality control of content in a cloud-enabled network-based digital video recorder |
US13/801,093 Active 2033-03-18 US9226007B2 (en) | 2013-02-15 | 2013-03-13 | Cloud-enabled network-based digital video recorder |
US13/800,904 Active US9009763B2 (en) | 2013-02-15 | 2013-03-13 | Content management in a cloud-enabled network-based digital video recorder |
US13/800,617 Active US9124911B2 (en) | 2013-02-15 | 2013-03-13 | Storage optimization in a cloud-enabled network-based digital video recorder |
US14/182,114 Abandoned US20140237505A1 (en) | 2013-02-15 | 2014-02-17 | Network-based digital video recorder playback adapter |
US14/938,336 Active US10652596B2 (en) | 2013-02-15 | 2015-11-11 | Cloud-enabled network-based digital video recorder |
Family Applications Before (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/801,004 Expired - Fee Related US9479805B2 (en) | 2013-02-15 | 2013-03-13 | Entitlement validation and quality control of content in a cloud-enabled network-based digital video recorder |
US13/801,093 Active 2033-03-18 US9226007B2 (en) | 2013-02-15 | 2013-03-13 | Cloud-enabled network-based digital video recorder |
US13/800,904 Active US9009763B2 (en) | 2013-02-15 | 2013-03-13 | Content management in a cloud-enabled network-based digital video recorder |
US13/800,617 Active US9124911B2 (en) | 2013-02-15 | 2013-03-13 | Storage optimization in a cloud-enabled network-based digital video recorder |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/938,336 Active US10652596B2 (en) | 2013-02-15 | 2015-11-11 | Cloud-enabled network-based digital video recorder |
Country Status (1)
Country | Link |
---|---|
US (6) | US9479805B2 (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9009763B2 (en) | 2013-02-15 | 2015-04-14 | Cox Communications, Inc. | Content management in a cloud-enabled network-based digital video recorder |
CN105430437A (en) * | 2015-11-18 | 2016-03-23 | 深圳市九洲电器有限公司 | Internet company digital content validation method and device |
WO2016126385A1 (en) * | 2015-02-06 | 2016-08-11 | Qualcomm Incorporated | Apparatus and method having broadcast key rotation |
US9450934B2 (en) | 2013-03-15 | 2016-09-20 | Cox Communications, Inc. | Managed access to content and services |
US10477260B2 (en) | 2014-10-17 | 2019-11-12 | Cox Communications, Inc. | Network based digital video recorder playback adapter |
US20220329890A1 (en) * | 2021-04-12 | 2022-10-13 | Arris Enterprises Llc | Digital rights management while streaming to display array |
US11528128B2 (en) * | 2015-10-01 | 2022-12-13 | Time Warner Cable Enterprises Llc | Encryption management, content recording management, and playback management in a network environment |
Families Citing this family (97)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8472792B2 (en) | 2003-12-08 | 2013-06-25 | Divx, Llc | Multimedia distribution system |
US7519274B2 (en) | 2003-12-08 | 2009-04-14 | Divx, Inc. | File format for multiple track digital data |
JP5200204B2 (en) | 2006-03-14 | 2013-06-05 | ディブエックス リミテッド ライアビリティー カンパニー | A federated digital rights management mechanism including a trusted system |
KR20100106327A (en) | 2007-11-16 | 2010-10-01 | 디브이엑스, 인크. | Hierarchical and reduced index structures for multimedia files |
CN102549557B (en) | 2009-01-07 | 2015-09-09 | 索尼克Ip股份有限公司 | For specialization, centralized, the robotization establishment of the media guidance of online content |
US9076239B2 (en) * | 2009-04-30 | 2015-07-07 | Stmicroelectronics S.R.L. | Method and systems for thumbnail generation, and corresponding computer program product |
US9190110B2 (en) | 2009-05-12 | 2015-11-17 | JBF Interlude 2009 LTD | System and method for assembling a recorded composition |
JP5723888B2 (en) | 2009-12-04 | 2015-05-27 | ソニック アイピー, インコーポレイテッド | Basic bitstream cryptographic material transmission system and method |
US11232458B2 (en) | 2010-02-17 | 2022-01-25 | JBF Interlude 2009 LTD | System and method for data mining within interactive multimedia |
US9247312B2 (en) | 2011-01-05 | 2016-01-26 | Sonic Ip, Inc. | Systems and methods for encoding source media in matroska container files for adaptive bitrate streaming using hypertext transfer protocol |
US9467708B2 (en) | 2011-08-30 | 2016-10-11 | Sonic Ip, Inc. | Selection of resolutions for seamless resolution switching of multimedia content |
US8964977B2 (en) | 2011-09-01 | 2015-02-24 | Sonic Ip, Inc. | Systems and methods for saving encoded media streamed using adaptive bitrate streaming |
US8909922B2 (en) | 2011-09-01 | 2014-12-09 | Sonic Ip, Inc. | Systems and methods for playing back alternative streams of protected content protected using common cryptographic information |
US9009619B2 (en) | 2012-09-19 | 2015-04-14 | JBF Interlude 2009 Ltd—Israel | Progress bar for branched videos |
US9191457B2 (en) | 2012-12-31 | 2015-11-17 | Sonic Ip, Inc. | Systems, methods, and media for controlling delivery of content |
US9313510B2 (en) | 2012-12-31 | 2016-04-12 | Sonic Ip, Inc. | Use of objective quality measures of streamed content to reduce streaming bandwidth |
US9197909B2 (en) * | 2013-03-14 | 2015-11-24 | Comcast Cable Communications, Llc | Allocation of clamping functionality |
US11564002B2 (en) * | 2013-03-15 | 2023-01-24 | Sling TV L.L.C. | Automated replacement of video program content |
US9906785B2 (en) | 2013-03-15 | 2018-02-27 | Sonic Ip, Inc. | Systems, methods, and media for transcoding video data according to encoding parameters indicated by received metadata |
US9257148B2 (en) | 2013-03-15 | 2016-02-09 | JBF Interlude 2009 LTD | System and method for synchronization of selectably presentable media streams |
US11778257B2 (en) | 2013-03-15 | 2023-10-03 | Sling TV L.L.C. | Digital advertisement frequency correction |
US20160073149A1 (en) * | 2013-04-25 | 2016-03-10 | Telefonaktiebolaget L M Ericsson (Publ) | Method and apparatus for improved network recording |
US9477814B2 (en) * | 2013-05-22 | 2016-10-25 | Broadcom Corporation | Distribution of an IP-based multimedia channel to non-IP enabled devices |
US9094737B2 (en) | 2013-05-30 | 2015-07-28 | Sonic Ip, Inc. | Network video streaming with trick play based on separate trick play files |
US9467359B1 (en) * | 2013-06-07 | 2016-10-11 | Google Inc. | Methods, systems, and media for resuming playback of media content across multiple devices |
US10448119B2 (en) | 2013-08-30 | 2019-10-15 | JBF Interlude 2009 LTD | Methods and systems for unfolding video pre-roll |
US9955203B2 (en) | 2013-09-24 | 2018-04-24 | Ericsson Ab | Recording device and method for efficient network personal video recorder manipulation through adaptive bit rate streaming |
EP2892225B1 (en) | 2014-01-06 | 2022-08-31 | InterDigital CE Patent Holdings, SAS | Recording method, device and system |
US20150271541A1 (en) * | 2014-03-19 | 2015-09-24 | Time Warner Cable Enterprises Llc | Apparatus and methods for recording a media stream |
US9866878B2 (en) | 2014-04-05 | 2018-01-09 | Sonic Ip, Inc. | Systems and methods for encoding and playing back video at different frame rates using enhancement layers |
KR101560727B1 (en) * | 2014-04-07 | 2015-10-15 | 네이버 주식회사 | Service method and system for providing multi-track video contents |
US9792026B2 (en) | 2014-04-10 | 2017-10-17 | JBF Interlude 2009 LTD | Dynamic timeline for branched video |
US9653115B2 (en) | 2014-04-10 | 2017-05-16 | JBF Interlude 2009 LTD | Systems and methods for creating linear video from branched video |
US9525893B2 (en) * | 2014-05-28 | 2016-12-20 | Verizon Patent And Licensing Inc. | Methods and systems for managing storage of media program copies within a network digital video recording system |
US9628850B2 (en) * | 2014-05-30 | 2017-04-18 | Lg Electronics Inc. | Server, home device access server, terminal, and home device remote control system including the same |
MX369424B (en) * | 2014-08-01 | 2019-11-08 | Sony Corp | Reception device, reception method, transmission device, and transmission method. |
US9923942B2 (en) * | 2014-08-29 | 2018-03-20 | The Nielsen Company (Us), Llc | Using messaging associated with adaptive bitrate streaming to perform media monitoring for mobile platforms |
US9930391B1 (en) * | 2014-09-11 | 2018-03-27 | Harmonic, Inc. | Network personal video recorder utilizing personal digital storage |
US10405044B1 (en) * | 2014-09-30 | 2019-09-03 | Apple Inc. | Content notification system and method |
US9792957B2 (en) * | 2014-10-08 | 2017-10-17 | JBF Interlude 2009 LTD | Systems and methods for dynamic video bookmarking |
US11412276B2 (en) | 2014-10-10 | 2022-08-09 | JBF Interlude 2009 LTD | Systems and methods for parallel track transitions |
US10194177B1 (en) * | 2014-10-16 | 2019-01-29 | Sorenson Media, Inc. | Interweaving media content |
US9729611B2 (en) * | 2014-10-26 | 2017-08-08 | Cisco Technology, Inc. | Method and system for ABR recording |
US9883221B1 (en) | 2015-03-25 | 2018-01-30 | Concurrent Computer Corporation | System and method for optimizing real-time video-on-demand recording in a content delivery network |
US10375452B2 (en) * | 2015-04-14 | 2019-08-06 | Time Warner Cable Enterprises Llc | Apparatus and methods for thumbnail generation |
US10582265B2 (en) | 2015-04-30 | 2020-03-03 | JBF Interlude 2009 LTD | Systems and methods for nonlinear video playback using linear real-time video players |
US20160345184A1 (en) | 2015-05-20 | 2016-11-24 | International Business Machines Corporation | Signal strength bookmarking for media content |
US10070174B2 (en) * | 2015-06-05 | 2018-09-04 | Apple Inc. | Movie package file format to persist HLS onto disk |
US10638179B2 (en) * | 2015-08-06 | 2020-04-28 | At&T Intellectual Property I, L.P. | Content insertion in streaming media content |
US11172273B2 (en) | 2015-08-10 | 2021-11-09 | Delta Energy & Communications, Inc. | Transformer monitor, communications and data collection device |
WO2017027682A1 (en) | 2015-08-11 | 2017-02-16 | Delta Energy & Communications, Inc. | Enhanced reality system for visualizing, evaluating, diagnosing, optimizing and servicing smart grids and incorporated components |
US10460765B2 (en) | 2015-08-26 | 2019-10-29 | JBF Interlude 2009 LTD | Systems and methods for adaptive and responsive video |
US10055966B2 (en) | 2015-09-03 | 2018-08-21 | Delta Energy & Communications, Inc. | System and method for determination and remediation of energy diversion in a smart grid network |
EP3345385A1 (en) * | 2015-09-04 | 2018-07-11 | Telefonaktiebolaget LM Ericsson (PUBL) | Improved cloud dvr storage |
CA3000206C (en) | 2015-10-02 | 2023-10-17 | Delta Energy & Communications, Inc. | Supplemental and alternative digital data delivery and receipt mesh network realized through the placement of enhanced transformer mounted monitoring devices |
US10334302B2 (en) | 2015-10-08 | 2019-06-25 | Synamedia Limited | Method and system for segment based recording |
WO2017070646A1 (en) | 2015-10-22 | 2017-04-27 | Delta Energy & Communications, Inc. | Data transfer facilitation across a distributed mesh network using light and optical based technology |
WO2017070648A1 (en) | 2015-10-22 | 2017-04-27 | Delta Energy & Communications, Inc. | Augmentation, expansion and self-healing of a geographically distributed mesh network using unmanned aerial vehicle technology |
US9930399B2 (en) | 2015-12-21 | 2018-03-27 | At&T Intellectual Property I, L.P. | Digital video recorder as a content delivery server |
US11164548B2 (en) | 2015-12-22 | 2021-11-02 | JBF Interlude 2009 LTD | Intelligent buffering of large-scale video |
US11128853B2 (en) | 2015-12-22 | 2021-09-21 | JBF Interlude 2009 LTD | Seamless transitions in large-scale video |
MX2018010238A (en) * | 2016-02-24 | 2019-06-06 | Delta Energy & Communications Inc | Distributed 802.11s mesh network using transformer module hardware for the capture and transmission of data. |
KR20170105951A (en) * | 2016-03-11 | 2017-09-20 | 에스프린팅솔루션 주식회사 | Management server and method for managing file |
US10149002B1 (en) * | 2016-03-21 | 2018-12-04 | Tribune Broadcasting Company, Llc | Systems and methods for retrieving content files |
US10462202B2 (en) | 2016-03-30 | 2019-10-29 | JBF Interlude 2009 LTD | Media stream rate synchronization |
US10165316B2 (en) * | 2016-03-31 | 2018-12-25 | Viacom International Inc. | Device, system, and method for hybrid media content distribution |
FR3050090B1 (en) * | 2016-04-08 | 2018-03-23 | Squadeo | EXTRACTION OF VIDEO STREAM |
US11856271B2 (en) | 2016-04-12 | 2023-12-26 | JBF Interlude 2009 LTD | Symbiotic interactive video |
US10218760B2 (en) | 2016-06-22 | 2019-02-26 | JBF Interlude 2009 LTD | Dynamic summary generation for real-time switchable videos |
US10652594B2 (en) | 2016-07-07 | 2020-05-12 | Time Warner Cable Enterprises Llc | Apparatus and methods for presentation of key frames in encrypted content |
WO2018035143A1 (en) | 2016-08-15 | 2018-02-22 | Delta Energy & Communications, Inc. | Integrated solution of internet of things and smart grid network |
US10642917B2 (en) | 2016-11-14 | 2020-05-05 | Triton Us Vp Acquisition Co. | Method and device for sharing segmented video content across multiple manifests |
US20180146021A1 (en) * | 2016-11-21 | 2018-05-24 | Arris Enterprises Llc | Media Stream Bookmarking |
US10123061B2 (en) * | 2016-11-29 | 2018-11-06 | The Directv Group, Inc. | Creating a manifest file at a time of creating recorded content |
US11050809B2 (en) | 2016-12-30 | 2021-06-29 | JBF Interlude 2009 LTD | Systems and methods for dynamic weighting of branched video paths |
WO2018152222A1 (en) * | 2017-02-14 | 2018-08-23 | Level 3 Communications, Llc | Systems and methods for resolving manifest file discontinuities |
US10200745B2 (en) * | 2017-03-06 | 2019-02-05 | Cisco Technology, Inc. | System and method for cloud digital video recorders |
GB2561822B (en) * | 2017-04-13 | 2020-02-19 | Arm Ip Ltd | Reduced bandwidth handshake communication |
US20180352287A1 (en) * | 2017-06-02 | 2018-12-06 | Apple Inc. | Persistent ID for Offline Access to Streamed Media |
US11617004B2 (en) * | 2017-07-11 | 2023-03-28 | Arris Enterprises Llc | Resolving tuner conflicts at digital video recorder |
US10838924B2 (en) * | 2017-10-02 | 2020-11-17 | Comcast Cable Communications Management, Llc | Multi-component content asset transfer |
US10405027B2 (en) | 2017-12-03 | 2019-09-03 | Cisco Technology, Inc. | Cloud DVR system with retroactive recording |
US10257578B1 (en) | 2018-01-05 | 2019-04-09 | JBF Interlude 2009 LTD | Dynamic library display for interactive videos |
US11044518B2 (en) * | 2018-03-20 | 2021-06-22 | At&T Mobility Ii Llc | Video access master platform |
US11601721B2 (en) | 2018-06-04 | 2023-03-07 | JBF Interlude 2009 LTD | Interactive video dynamic adaptation and user profiling |
US11166052B2 (en) | 2018-07-26 | 2021-11-02 | Comcast Cable Communications, Llc | Remote pause buffer |
US11151609B2 (en) | 2019-01-07 | 2021-10-19 | Alphonso Inc. | Closed loop attribution |
US10873785B2 (en) * | 2019-01-07 | 2020-12-22 | Alphonso Inc. | Content recommendation system and method-based implicit ratings |
US11037205B2 (en) | 2019-01-07 | 2021-06-15 | Alphonso Inc. | Bidding agent using ad opportunity source to limit ad reach |
US10803480B2 (en) | 2019-01-07 | 2020-10-13 | Alphonso Inc. | Bidding agent with optimized reach limitation |
US11490047B2 (en) | 2019-10-02 | 2022-11-01 | JBF Interlude 2009 LTD | Systems and methods for dynamically adjusting video aspect ratios |
US11245961B2 (en) | 2020-02-18 | 2022-02-08 | JBF Interlude 2009 LTD | System and methods for detecting anomalous activities for interactive videos |
US11451872B1 (en) * | 2021-05-27 | 2022-09-20 | Sling TV L.L.C. | System, device, and processes for intelligent start playback of program content |
US11882337B2 (en) | 2021-05-28 | 2024-01-23 | JBF Interlude 2009 LTD | Automated platform for generating interactive videos |
US11818435B2 (en) * | 2021-07-28 | 2023-11-14 | Charter Communications Operating, Llc | Generating video on demand (VOD) using network digital video recording (NDVR) |
US11934477B2 (en) | 2021-09-24 | 2024-03-19 | JBF Interlude 2009 LTD | Video player integration within websites |
US20240112703A1 (en) * | 2022-09-30 | 2024-04-04 | Amazon Technologies, Inc. | Seamless insertion of modified media content |
Citations (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6119154A (en) * | 1995-07-14 | 2000-09-12 | Oracle Corporation | Method and apparatus for non-sequential access to an in-progress video feed |
US20010036271A1 (en) * | 1999-09-13 | 2001-11-01 | Javed Shoeb M. | System and method for securely distributing digital content for short term use |
US20020015576A1 (en) * | 1998-11-30 | 2002-02-07 | Donald F. Gordon | Method and apparatus for simultaneously producing compressed play and trick play bitstreams from a video frame sequence |
US20020184637A1 (en) * | 2001-05-30 | 2002-12-05 | Perlman Stephen G. | System and method for improved multi-stream multimedia transmission and processing |
US20030182429A1 (en) * | 2002-03-20 | 2003-09-25 | Jagels Dean P. | Media on demand session re-use |
US20030208763A1 (en) * | 2002-05-03 | 2003-11-06 | Mcelhatten David | Program guide and reservation system for network based digital information and entertainment storage and delivery system |
US20060085821A9 (en) * | 1998-08-23 | 2006-04-20 | Simmons Selwyn D | Transaction system for transporting media files from content provider sources to home entertainment devices |
US20060203001A1 (en) * | 2002-12-18 | 2006-09-14 | Van Der Stok Petrus D V | Clipping of media data transmitted in a network |
US20070058924A1 (en) * | 2005-09-13 | 2007-03-15 | Cyberlink Corp. | Systems and methods for networking digital video recorders |
US20070091359A1 (en) * | 2005-10-04 | 2007-04-26 | Sony Corporation | Content transmission device, content transmission method, and computer program used therewith |
US20070199039A1 (en) * | 2006-02-23 | 2007-08-23 | Sbc Knowledge Ventures, Lp | System and method of receiving video content |
US20070292108A1 (en) * | 2006-06-15 | 2007-12-20 | Thales Avionics, Inc. | Method and system for processing digital video |
US20080250101A1 (en) * | 2007-04-05 | 2008-10-09 | Matsushita Electric Industrial Co., Ltd. | Multimedia data transmitting apparatus and multimedia data receiving apparatus |
US20090010437A1 (en) * | 2005-02-25 | 2009-01-08 | Sony Corporation | Information processing device, information recording medium, information processing method, and computer program |
US20090222853A1 (en) * | 2008-02-29 | 2009-09-03 | At&T Knowledge Ventures, L.P. | Advertisement Replacement System |
US20090249421A1 (en) * | 2008-03-26 | 2009-10-01 | Xiaomei Liu | Distributing digital video content to multiple end-user devices |
US20100049824A1 (en) * | 2008-08-22 | 2010-02-25 | At&T Mobility Ii Llc | Providing Remote Access to Multimedia Content |
US20100088734A1 (en) * | 2008-10-08 | 2010-04-08 | Yoshiharu Dewa | Reception apparatus, reception method, and server apparatus |
US20110083149A1 (en) * | 2009-10-06 | 2011-04-07 | At&T Intellectual Property I, L.P. | Apparatus and method for providing media content |
US20120084804A1 (en) * | 2010-10-05 | 2012-04-05 | Microsoft Corporation | Authenticated content discovery |
US20120151077A1 (en) * | 2010-12-08 | 2012-06-14 | Paul Finster | Systems And Methods For Distributed Authentication Of Video Services |
US20120180082A1 (en) * | 2011-01-06 | 2012-07-12 | Cox Communications, Inc. | System and method for providing session based encryption from a video pump |
US8230468B2 (en) * | 2008-07-01 | 2012-07-24 | Cisco Technology, Inc. | Dynamically creating trick files to hide latency in streaming networks |
US20120284802A1 (en) * | 2011-05-02 | 2012-11-08 | Authentec, Inc. | Method for playing digital contents protected with a drm (digital right management) scheme and corresponding system |
US20130058482A1 (en) * | 2011-09-06 | 2013-03-07 | Kabushiki Kaisha Toshiba | Information processing apparatus and information processing method |
US20130060911A1 (en) * | 2011-09-07 | 2013-03-07 | Thadi M. Nagaraj | Streaming of multimedia data from multiple sources |
US20130084053A1 (en) * | 2011-10-04 | 2013-04-04 | Utc Fire & Security Corporation | System to merge multiple recorded video timelines |
US20130145409A1 (en) * | 2011-12-01 | 2013-06-06 | General Instrument Corporation | System and method for media content deliver |
US20130227283A1 (en) * | 2012-02-23 | 2013-08-29 | Louis Williamson | Apparatus and methods for providing content to an ip-enabled device in a content distribution network |
US8552975B2 (en) * | 2009-08-31 | 2013-10-08 | Lg Electronics Inc. | Image display apparatus and method for operating the same |
US20140020037A1 (en) * | 2012-07-16 | 2014-01-16 | Eric D. Hybertson | Multi-stream shared communication channels |
US20140089995A1 (en) * | 2009-11-30 | 2014-03-27 | Time Warner Cable Enterprises Llc | Methods and apparatus for supporting vod requests in a system with hierarchical content stores |
US20140196099A1 (en) * | 2013-01-07 | 2014-07-10 | Eric D. Hybertson | Methods and apparatus for supporting trick play functions in devices without local storage |
US20150067744A1 (en) * | 2013-08-27 | 2015-03-05 | Home Box Office, Inc. | Providing responsive video previews during rewind and fast forward |
US9398339B2 (en) * | 2010-09-01 | 2016-07-19 | Lg Electronics Inc. | Image display apparatus and method for operating the same |
Family Cites Families (102)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5581479A (en) | 1993-10-15 | 1996-12-03 | Image Telecommunications Corp. | Information service control point, which uses different types of storage devices, which retrieves information as blocks of data, and which uses a trunk processor for transmitting information |
US6816904B1 (en) | 1997-11-04 | 2004-11-09 | Collaboration Properties, Inc. | Networked video multimedia storage server environment |
US7363361B2 (en) | 2000-08-18 | 2008-04-22 | Akamai Technologies, Inc. | Secure content delivery system |
WO2001069912A2 (en) | 2000-03-13 | 2001-09-20 | Media Arts & Images Corporation | Video data management, transmission, and control system and method employing distributed video segments microcasting |
EP2285104A1 (en) * | 2000-03-31 | 2011-02-16 | United Video Properties, Inc. | System and method for reducing cut-offs in program recording |
WO2002065705A2 (en) | 2001-02-09 | 2002-08-22 | Quadriga Technology Limited | Method and apparatus for distributing data |
CN100350798C (en) * | 2001-02-21 | 2007-11-21 | 联合视频制品公司 | Systems and methods for interactive program quides with personal video recording features |
TW558901B (en) * | 2001-03-22 | 2003-10-21 | United Video Properties Inc | Personal video recorder systems and methods |
WO2002093299A2 (en) | 2001-05-11 | 2002-11-21 | Scientific-Atlanta, Inc. | Channel buffering and display management system for multi-tuner set-top box |
US7356838B2 (en) | 2001-06-06 | 2008-04-08 | Yahoo! Inc. | System and method for controlling access to digital content, including streaming media |
US7493646B2 (en) | 2003-01-30 | 2009-02-17 | United Video Properties, Inc. | Interactive television systems with digital video recording and adjustable reminders |
US20050005114A1 (en) | 2003-07-05 | 2005-01-06 | General Instrument Corporation | Ticket-based secure time delivery in digital networks |
US7457520B2 (en) * | 2003-07-24 | 2008-11-25 | Time Warner Cable, Inc. | Technique for providing a virtual digital video recorder service through a communications network |
US20050183120A1 (en) * | 2004-01-13 | 2005-08-18 | Saurabh Jain | Multi-user personalized digital multimedia distribution methods and systems |
US20060080703A1 (en) * | 2004-03-22 | 2006-04-13 | Compton Charles L | Content storage method and system |
US8566461B1 (en) | 2004-06-09 | 2013-10-22 | Digital River, Inc. | Managed access to media services |
US7526792B2 (en) | 2004-06-09 | 2009-04-28 | Intel Corporation | Integration of policy compliance enforcement and device authentication |
MX2008001160A (en) * | 2005-07-28 | 2008-03-13 | Thomson Licensing | User adjustable buffer for content recording. |
US8504597B2 (en) | 2005-09-09 | 2013-08-06 | William M. Pitts | Distributed file system consistency mechanism extension for enabling internet video broadcasting |
US8582946B2 (en) | 2005-11-04 | 2013-11-12 | Rovi Guides, Inc. | Systems and methods for recording programs using a network recording device as supplemental storage |
US20070124781A1 (en) * | 2005-11-30 | 2007-05-31 | Qwest Communications International Inc. | Networked content storage |
US8099508B2 (en) | 2005-12-16 | 2012-01-17 | Comcast Cable Holdings, Llc | Method of using tokens and policy descriptors for dynamic on demand session management |
US7916755B2 (en) | 2006-02-27 | 2011-03-29 | Time Warner Cable Inc. | Methods and apparatus for selecting digital coding/decoding technology for programming and data delivery |
US7552467B2 (en) | 2006-04-24 | 2009-06-23 | Jeffrey Dean Lindsay | Security systems for protecting an asset |
US8280982B2 (en) * | 2006-05-24 | 2012-10-02 | Time Warner Cable Inc. | Personal content server apparatus and methods |
US20080022331A1 (en) * | 2006-06-30 | 2008-01-24 | Microsoft Corporation | Multi-DVR Media Stream Transition |
US20080077942A1 (en) | 2006-07-21 | 2008-03-27 | Macmillan David | System, method, and api for automatic digital library creation |
WO2008012488A2 (en) * | 2006-07-24 | 2008-01-31 | Nds Limited | Peer-to-peer set-top box system |
US8379661B2 (en) | 2006-08-07 | 2013-02-19 | Cisco Technology, Inc. | Methods and systems for a customer premise equipment to reverse the upstream speed and downstream speed of a network connection |
US20080046930A1 (en) * | 2006-08-17 | 2008-02-21 | Bellsouth Intellectual Property Corporation | Apparatus, Methods and Computer Program Products for Audience-Adaptive Control of Content Presentation |
US7812854B1 (en) | 2006-09-05 | 2010-10-12 | Sprint Spectrum L.P. | Digital rights management for mobile devices |
US8775656B2 (en) | 2006-10-10 | 2014-07-08 | Microsoft Corporation | Strategies for integrating plural modes of content delivery |
CN100525437C (en) | 2006-12-20 | 2009-08-05 | 华为技术有限公司 | A method and system for improvement of the VOD service reliability |
US8181206B2 (en) | 2007-02-28 | 2012-05-15 | Time Warner Cable Inc. | Personal content server apparatus and methods |
US8683060B2 (en) | 2007-03-13 | 2014-03-25 | Adobe Systems Incorporated | Accessing media |
US8418206B2 (en) | 2007-03-22 | 2013-04-09 | United Video Properties, Inc. | User defined rules for assigning destinations of content |
US20110276993A1 (en) | 2007-04-06 | 2011-11-10 | Ferguson Kenneth H | Media Content Programming Control Method and Apparatus |
US7853669B2 (en) * | 2007-05-04 | 2010-12-14 | Microsoft Corporation | Mesh-managing data across a distributed set of devices |
US20080282191A1 (en) * | 2007-05-07 | 2008-11-13 | Bellsouth Intellectual Property Corporation | Methods, systems, and computer program products for providing centralized management and delivery services for media content |
US8868463B2 (en) * | 2007-06-08 | 2014-10-21 | At&T Intellectual Property I, L.P. | System and method of managing digital rights |
EP2003838B1 (en) | 2007-06-13 | 2018-09-26 | Nokia Solutions and Networks Oy | Distributed access manager |
US8272015B2 (en) | 2007-11-01 | 2012-09-18 | Microsoft Corporation | Alternate source conflict resolution |
US8782679B2 (en) * | 2007-11-30 | 2014-07-15 | At&T Intellectual Property I, L.P. | Systems, methods, and computer products for periodic-fee limited access to videos |
US8813143B2 (en) | 2008-02-26 | 2014-08-19 | Time Warner Enterprises LLC | Methods and apparatus for business-based network resource allocation |
US8990911B2 (en) | 2008-03-30 | 2015-03-24 | Emc Corporation | System and method for single sign-on to resources across a network |
GB2458896B (en) * | 2008-03-31 | 2012-03-14 | Sony Corp | Recording apparatus |
US8806659B1 (en) | 2008-05-22 | 2014-08-12 | Rambus Inc. | Secure remote content activation and unlocking |
WO2009157172A1 (en) | 2008-06-27 | 2009-12-30 | パナソニック株式会社 | Communication system, communication processing device and authentication processing device |
US8667279B2 (en) | 2008-07-01 | 2014-03-04 | Sling Media, Inc. | Systems and methods for securely place shifting media content |
KR101009822B1 (en) | 2008-08-06 | 2011-01-19 | 삼성전자주식회사 | Method for transfering and receiving streaming data in communication system comprising server and mobile communication terminal and the communication system |
US20100040345A1 (en) | 2008-08-12 | 2010-02-18 | Brian Beach | Automatic detection of program subject matter and scheduling padding |
US20100086277A1 (en) | 2008-10-03 | 2010-04-08 | Guideworks, Llc | Systems and methods for deleting viewed portions of recorded programs |
US8196177B2 (en) | 2008-10-16 | 2012-06-05 | International Business Machines Corporation | Digital rights management (DRM)-enabled policy management for a service provider in a federated environment |
WO2010078489A2 (en) | 2008-12-31 | 2010-07-08 | Akamai Technologies, Inc. | Enforcing single stream per sign-on from a content delivery network (cdn) media server |
US8677406B2 (en) | 2009-03-27 | 2014-03-18 | Samsung Electronics Co., Ltd | Time-shift recording buffer as home network objects |
US9769504B2 (en) | 2009-03-31 | 2017-09-19 | Comcast Cable Communications, Llc | Dynamic distribution of media content assets for a content delivery network |
CN102461230B (en) | 2009-04-07 | 2015-06-17 | 托吉瓦控股股份公司 | Method and system for authenticating a network node in a uam-based wlan network |
WO2010147986A1 (en) | 2009-06-15 | 2010-12-23 | Viasat, Inc. | Link performance difference metrics and link adaptation for mesh satellite networks |
US20100319044A1 (en) | 2009-06-16 | 2010-12-16 | Seachange International, Inc. | Efficient Distribution of Remote Storage Data |
US8762707B2 (en) | 2009-07-14 | 2014-06-24 | At&T Intellectual Property I, L.P. | Authorization, authentication and accounting protocols in multicast content distribution networks |
US9779434B2 (en) | 2009-07-20 | 2017-10-03 | Wenxuan Tonnison | Online e-commerce and networking system with user-participated advertisements, joint online purchasing and dynamic user interactions |
US8385722B2 (en) * | 2009-08-31 | 2013-02-26 | Cox Communications, Inc. | Modular digital video recorder storage |
US9787501B2 (en) | 2009-12-23 | 2017-10-10 | Pismo Labs Technology Limited | Methods and systems for transmitting packets through aggregated end-to-end connection |
US8402555B2 (en) | 2010-03-21 | 2013-03-19 | William Grecia | Personalized digital media access system (PDMAS) |
US20110247084A1 (en) | 2010-04-06 | 2011-10-06 | Copyright Clearance Center, Inc. | Method and apparatus for authorizing delivery of streaming video to licensed viewers |
US8792419B2 (en) | 2010-04-08 | 2014-07-29 | At&T Intellectual Property I, L.P. | Presence-based communication routing service and regulation of same |
GB201007191D0 (en) | 2010-04-29 | 2010-06-09 | British Broadcasting Corp | Content provision system |
US8307396B2 (en) | 2010-06-28 | 2012-11-06 | At&T Intellectual Property I, L.P. | Systems and methods for producing processed media content |
US8542976B2 (en) * | 2010-06-30 | 2013-09-24 | Cable Television Laboratories, Inc. | Time-shift buffer |
US9264652B2 (en) * | 2010-07-30 | 2016-02-16 | Verizon Patent And Licensing Inc. | Home and network video caching |
US9003452B2 (en) * | 2010-11-23 | 2015-04-07 | Cox Communications, Inc. | Systems, methods, and apparatus for recording broadband content |
US20120159146A1 (en) | 2010-12-20 | 2012-06-21 | General Instrument Corporation | System and Method for Transcoding Content |
EP2659423A4 (en) | 2010-12-31 | 2014-09-17 | Akamai Tech Inc | Extending data confidentiality into a player application |
US9003462B2 (en) | 2011-02-10 | 2015-04-07 | Comcast Cable Communications, Llc | Content archive model |
AU2012219371A1 (en) | 2011-02-18 | 2013-08-29 | Aereo, Inc. | Cloud based location shifting service |
WO2012129762A1 (en) | 2011-03-25 | 2012-10-04 | Telefonaktiebolaget L M Ericsson (Publ) | Hybrid media receiver, middleware server and corresponding methods, computer programs and computer program products |
US8489760B2 (en) | 2011-03-31 | 2013-07-16 | Juniper Networks, Inc. | Media file storage format and adaptive delivery system |
US9032497B2 (en) | 2011-06-15 | 2015-05-12 | Cbs Interactive Inc. | System and method for securing embedded media |
US20130007240A1 (en) | 2011-06-30 | 2013-01-03 | At&T Intellectual Property I, L.P. | Systems and methods to provide availability notifications for denied content requests |
US9264508B2 (en) | 2011-08-19 | 2016-02-16 | Time Warner Cable Enterprises Llc | Apparatus and methods for reduced switching delays in a content distribution network |
US9679606B2 (en) | 2011-09-14 | 2017-06-13 | Cable Television Laboratories, Inc. | Method of modifying play of an original content form |
US9077947B2 (en) * | 2011-11-09 | 2015-07-07 | Microsoft Technology Licensing, Llc | Presenting linear and nonlinear content via DVR |
EP2792123B1 (en) | 2011-12-06 | 2017-09-27 | Echostar Technologies L.L.C. | Remote storage digital video recorder and related operating methods |
US9584359B2 (en) | 2011-12-12 | 2017-02-28 | International Business Machines Corporation | Distributed storage and computing of interim data |
US9384339B2 (en) | 2012-01-13 | 2016-07-05 | Telecommunication Systems, Inc. | Authenticating cloud computing enabling secure services |
KR20170046191A (en) | 2012-01-20 | 2017-04-28 | 인터디지탈 패튼 홀딩스, 인크 | Identity management with local functionality |
US9036980B2 (en) * | 2012-05-22 | 2015-05-19 | Cisco Technology, Inc. | Methods for efficiently combining partial ABR recordings |
US9258177B2 (en) | 2012-08-02 | 2016-02-09 | International Business Machines Corporation | Storing a data stream in a set of storage devices |
US9848213B2 (en) | 2012-09-20 | 2017-12-19 | The Hong Kong University Of Science And Technology | Linear programming based distributed multimedia storage and retrieval |
US10225597B2 (en) | 2012-10-09 | 2019-03-05 | Comcast Cable Communications, Llc | Transmission and consumption of time-shifted content in a one-way communication environment |
US9607132B2 (en) | 2012-10-22 | 2017-03-28 | Koninklijke Kpn N.V. | Token-based validation method for segmented content delivery |
US20140165209A1 (en) | 2012-12-11 | 2014-06-12 | Verizon Patent And Licensing Inc. | Digital content delivery platform for multiple retailers |
US8904457B2 (en) * | 2012-12-28 | 2014-12-02 | Microsoft Corporation | Archiving a live media presentation |
US9100709B1 (en) | 2013-01-07 | 2015-08-04 | Time Warner Cable Enterprises Llc | Content selection and playback in a network environment |
US9420019B2 (en) | 2013-01-28 | 2016-08-16 | The Directv Group, Inc. | Method and system for securing content communication in chunks from a content delivery network to a user receiving device |
US9055268B2 (en) * | 2013-02-04 | 2015-06-09 | Cisco Technology, Inc. | Multi-tier recorder to enable seek-back unique copy recording |
US9479805B2 (en) | 2013-02-15 | 2016-10-25 | Cox Communications, Inc. | Entitlement validation and quality control of content in a cloud-enabled network-based digital video recorder |
US10455276B2 (en) | 2013-03-04 | 2019-10-22 | Time Warner Cable Enterprises Llc | Methods and apparatus for controlling unauthorized streaming of content |
US10929551B2 (en) | 2013-03-13 | 2021-02-23 | Comcast Cable Communications, Llc | Methods and systems for managing data assets |
US9450934B2 (en) | 2013-03-15 | 2016-09-20 | Cox Communications, Inc. | Managed access to content and services |
JP5662507B2 (en) | 2013-03-28 | 2015-01-28 | 株式会社 ディー・エヌ・エー | Authentication method, authentication system, and service providing server |
US9787665B2 (en) | 2013-07-02 | 2017-10-10 | Verizon Patent And Licensing Inc. | System and method for providing single sign on interface for applications on mobile devices |
-
2013
- 2013-03-13 US US13/801,004 patent/US9479805B2/en not_active Expired - Fee Related
- 2013-03-13 US US13/801,093 patent/US9226007B2/en active Active
- 2013-03-13 US US13/800,904 patent/US9009763B2/en active Active
- 2013-03-13 US US13/800,617 patent/US9124911B2/en active Active
-
2014
- 2014-02-17 US US14/182,114 patent/US20140237505A1/en not_active Abandoned
-
2015
- 2015-11-11 US US14/938,336 patent/US10652596B2/en active Active
Patent Citations (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6119154A (en) * | 1995-07-14 | 2000-09-12 | Oracle Corporation | Method and apparatus for non-sequential access to an in-progress video feed |
US20060085821A9 (en) * | 1998-08-23 | 2006-04-20 | Simmons Selwyn D | Transaction system for transporting media files from content provider sources to home entertainment devices |
US20020015576A1 (en) * | 1998-11-30 | 2002-02-07 | Donald F. Gordon | Method and apparatus for simultaneously producing compressed play and trick play bitstreams from a video frame sequence |
US20010036271A1 (en) * | 1999-09-13 | 2001-11-01 | Javed Shoeb M. | System and method for securely distributing digital content for short term use |
US20020184637A1 (en) * | 2001-05-30 | 2002-12-05 | Perlman Stephen G. | System and method for improved multi-stream multimedia transmission and processing |
US20030182429A1 (en) * | 2002-03-20 | 2003-09-25 | Jagels Dean P. | Media on demand session re-use |
US20030208763A1 (en) * | 2002-05-03 | 2003-11-06 | Mcelhatten David | Program guide and reservation system for network based digital information and entertainment storage and delivery system |
US20060203001A1 (en) * | 2002-12-18 | 2006-09-14 | Van Der Stok Petrus D V | Clipping of media data transmitted in a network |
US20090010437A1 (en) * | 2005-02-25 | 2009-01-08 | Sony Corporation | Information processing device, information recording medium, information processing method, and computer program |
US20070058924A1 (en) * | 2005-09-13 | 2007-03-15 | Cyberlink Corp. | Systems and methods for networking digital video recorders |
US20070091359A1 (en) * | 2005-10-04 | 2007-04-26 | Sony Corporation | Content transmission device, content transmission method, and computer program used therewith |
US20070199039A1 (en) * | 2006-02-23 | 2007-08-23 | Sbc Knowledge Ventures, Lp | System and method of receiving video content |
US20070292108A1 (en) * | 2006-06-15 | 2007-12-20 | Thales Avionics, Inc. | Method and system for processing digital video |
US20080250101A1 (en) * | 2007-04-05 | 2008-10-09 | Matsushita Electric Industrial Co., Ltd. | Multimedia data transmitting apparatus and multimedia data receiving apparatus |
US20090222853A1 (en) * | 2008-02-29 | 2009-09-03 | At&T Knowledge Ventures, L.P. | Advertisement Replacement System |
US20090249421A1 (en) * | 2008-03-26 | 2009-10-01 | Xiaomei Liu | Distributing digital video content to multiple end-user devices |
US8230468B2 (en) * | 2008-07-01 | 2012-07-24 | Cisco Technology, Inc. | Dynamically creating trick files to hide latency in streaming networks |
US20100049824A1 (en) * | 2008-08-22 | 2010-02-25 | At&T Mobility Ii Llc | Providing Remote Access to Multimedia Content |
US20100088734A1 (en) * | 2008-10-08 | 2010-04-08 | Yoshiharu Dewa | Reception apparatus, reception method, and server apparatus |
US8552975B2 (en) * | 2009-08-31 | 2013-10-08 | Lg Electronics Inc. | Image display apparatus and method for operating the same |
US20110083149A1 (en) * | 2009-10-06 | 2011-04-07 | At&T Intellectual Property I, L.P. | Apparatus and method for providing media content |
US20140089995A1 (en) * | 2009-11-30 | 2014-03-27 | Time Warner Cable Enterprises Llc | Methods and apparatus for supporting vod requests in a system with hierarchical content stores |
US9398339B2 (en) * | 2010-09-01 | 2016-07-19 | Lg Electronics Inc. | Image display apparatus and method for operating the same |
US20120084804A1 (en) * | 2010-10-05 | 2012-04-05 | Microsoft Corporation | Authenticated content discovery |
US20120151077A1 (en) * | 2010-12-08 | 2012-06-14 | Paul Finster | Systems And Methods For Distributed Authentication Of Video Services |
US20120180082A1 (en) * | 2011-01-06 | 2012-07-12 | Cox Communications, Inc. | System and method for providing session based encryption from a video pump |
US20120284802A1 (en) * | 2011-05-02 | 2012-11-08 | Authentec, Inc. | Method for playing digital contents protected with a drm (digital right management) scheme and corresponding system |
US20130058482A1 (en) * | 2011-09-06 | 2013-03-07 | Kabushiki Kaisha Toshiba | Information processing apparatus and information processing method |
US20130060911A1 (en) * | 2011-09-07 | 2013-03-07 | Thadi M. Nagaraj | Streaming of multimedia data from multiple sources |
US20130084053A1 (en) * | 2011-10-04 | 2013-04-04 | Utc Fire & Security Corporation | System to merge multiple recorded video timelines |
US20130145409A1 (en) * | 2011-12-01 | 2013-06-06 | General Instrument Corporation | System and method for media content deliver |
US20130227283A1 (en) * | 2012-02-23 | 2013-08-29 | Louis Williamson | Apparatus and methods for providing content to an ip-enabled device in a content distribution network |
US20140020037A1 (en) * | 2012-07-16 | 2014-01-16 | Eric D. Hybertson | Multi-stream shared communication channels |
US20140196099A1 (en) * | 2013-01-07 | 2014-07-10 | Eric D. Hybertson | Methods and apparatus for supporting trick play functions in devices without local storage |
US20150067744A1 (en) * | 2013-08-27 | 2015-03-05 | Home Box Office, Inc. | Providing responsive video previews during rewind and fast forward |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9479805B2 (en) | 2013-02-15 | 2016-10-25 | Cox Communications, Inc. | Entitlement validation and quality control of content in a cloud-enabled network-based digital video recorder |
US9124911B2 (en) | 2013-02-15 | 2015-09-01 | Cox Communications, Inc. | Storage optimization in a cloud-enabled network-based digital video recorder |
US9226007B2 (en) | 2013-02-15 | 2015-12-29 | Cox Communications, Inc. | Cloud-enabled network-based digital video recorder |
US10652596B2 (en) | 2013-02-15 | 2020-05-12 | Cox Communications, Inc. | Cloud-enabled network-based digital video recorder |
US9009763B2 (en) | 2013-02-15 | 2015-04-14 | Cox Communications, Inc. | Content management in a cloud-enabled network-based digital video recorder |
US10601798B2 (en) | 2013-03-15 | 2020-03-24 | Cox Communications, Inc. | Federated services managed access to services and content |
US9450934B2 (en) | 2013-03-15 | 2016-09-20 | Cox Communications, Inc. | Managed access to content and services |
US10778663B2 (en) | 2013-03-15 | 2020-09-15 | Cox Communications, Inc. | Network token authentication scheme |
US10477260B2 (en) | 2014-10-17 | 2019-11-12 | Cox Communications, Inc. | Network based digital video recorder playback adapter |
US10009761B2 (en) | 2015-02-06 | 2018-06-26 | Qualcomm Incorporated | Apparatus and method having broadcast key rotation |
WO2016126385A1 (en) * | 2015-02-06 | 2016-08-11 | Qualcomm Incorporated | Apparatus and method having broadcast key rotation |
US11528128B2 (en) * | 2015-10-01 | 2022-12-13 | Time Warner Cable Enterprises Llc | Encryption management, content recording management, and playback management in a network environment |
CN105430437A (en) * | 2015-11-18 | 2016-03-23 | 深圳市九洲电器有限公司 | Internet company digital content validation method and device |
US20220329890A1 (en) * | 2021-04-12 | 2022-10-13 | Arris Enterprises Llc | Digital rights management while streaming to display array |
US11575952B2 (en) * | 2021-04-12 | 2023-02-07 | Arris Enterprises Llc | Digital rights management while streaming to display array |
Also Published As
Publication number | Publication date |
---|---|
US9009763B2 (en) | 2015-04-14 |
US9479805B2 (en) | 2016-10-25 |
US20140237525A1 (en) | 2014-08-21 |
US20160066009A1 (en) | 2016-03-03 |
US20140237520A1 (en) | 2014-08-21 |
US9226007B2 (en) | 2015-12-29 |
US10652596B2 (en) | 2020-05-12 |
US20140237521A1 (en) | 2014-08-21 |
US9124911B2 (en) | 2015-09-01 |
US20140237522A1 (en) | 2014-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20140237505A1 (en) | Network-based digital video recorder playback adapter | |
US11902368B2 (en) | Method and system for federated over-the-top content delivery | |
US10334319B2 (en) | System and method of cloud-based manifest processing | |
US8887214B1 (en) | System and method for unified metadata brokering and policy-based content resolution in a video architecture | |
US8782228B2 (en) | Side loading | |
US11997365B2 (en) | System and method of content streaming and downloading | |
US9307042B2 (en) | Orchestration server for video distribution network | |
US11825138B2 (en) | Automated video content processing | |
US11936959B2 (en) | Emulated television tuner | |
US20150199498A1 (en) | Flexible and efficient signaling and carriage of authorization acquisition information for dynamic adaptive streaming | |
US10477260B2 (en) | Network based digital video recorder playback adapter | |
US20180152523A1 (en) | Method for real-time transmission of a data stream | |
US10440097B1 (en) | Profile based streaming | |
Díaz-Sánchez et al. | A distributed transcoding and content protection system: Enabling pay per quality using the cloud | |
Kumar et al. | Cloud‐based video streaming services: Trends, challenges, and opportunities | |
US10375030B2 (en) | Initialization encryption for streaming content | |
US10854241B2 (en) | Generation of media diff files | |
US20240187480A1 (en) | Method and System for Federated Over-the-Top Content Delivery | |
US10750216B1 (en) | Method and apparatus for providing peer-to-peer content delivery |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: COX COMMUNICATIONS, INC., GEORGIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ROTHSCHILD, KEITH ALAN;KARACH, SLAVISHA;REEL/FRAME:032230/0524 Effective date: 20140217 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE AFTER FINAL ACTION FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: ADVISORY ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: ADVISORY ACTION MAILED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |