IP Library Granted Patent US 10,165,329
Granted Patent B2
US 10,165,329 · App. 15/345,285 · Granted Dec 25, 2018

Methods and systems for playing media

Inventors: Vikram Makam Gupta (Bangalore, IN); Ashwini Dharwa (Ratlam, IN); Raghavendra Goddumarri (Anantapuramu, IN); Vishal Agarwal (Bangalore, IN)
Assignee: Rovi Guides, Inc.
H04N21/47217G11B27/031G11B27/36H04L65/4084H04N19/132H04N19/156H04N19/162H04N19/172H04N19/895H04N21/25833H04N21/25883H04N21/278H04N21/4122H04N21/4302H04N21/4334H04N21/4358H04N21/44004H04N21/44016H04N21/44029H04N21/44204H04N21/440218H04N21/4532H04N21/6336H04N21/6379H04N21/6587H04N21/84H04N21/8456H04N21/85406
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,165,329
App. No.
15/345,285
Granted
Dec 25, 2018
Kind
B2
Abstract

Methods and systems are described for a media guidance application that enables a user to patch corrupted media. In particular, the media guidance application place-shifts a frame of a second version of the media corresponding to a corrupted portion of the media from a remote location and displays the place-shifted data at the local device.

Claims (78)

1. A method for playing media, the method comprising:

receiving a user input requesting playback on a local device of a first version of a media asset, wherein the first version of the media asset is selected from a plurality of media assets stored in a memory of the local device;

retrieving, from the memory of the local device, a first frame of a first plurality of frames associated with the media asset;

in response to determining that the first frame is corrupt:

searching a database that comprises a listing of a plurality of remote devices that store remote versions of the media asset to identify a remote device that stores a second version of the media asset, wherein identifying the remote device comprises:

determining that the first frame matches a second frame of a second plurality of frames associated with the second version of the media asset; and

determining that an encoding capability of the remote device matches a decoding capability of the local device; and

in response to identifying the remote device:

receiving the second frame that was place-shifted from the remote device to the local device; and

generating for display at the local device the second frame.

2. The method of claim 1 , wherein the remote device is one of a plurality of remote devices storing the second version of the media, and wherein identifying the remote device storing the second version of the media asset is based on a determination that the remote device is accessing the second version of the media asset at the second frame.

3. The method of claim 1 , wherein determining that the first frame comprises is corrupt, further comprises:

computing a checksum for the first frame;

comparing the computed checksum to a checksum value associated with the frame; and

determining that the frame is corrupt when the computed checksum differs from the checksum value associated with the frame.

4. The method of claim 1 , wherein determining that the first frame matches a second frame of a plurality of frames associated with the second version of the media asset, further comprises:

identifying a first playback position corresponding to the first frame;

identifying a second playback position corresponding to the second frame; and

determining that the first playback position matches the second playback position.

5. The method of claim 4 , wherein content in the second version of the media asset differs from content in the media asset, and wherein determining that the first playback position matches the second playback position further comprises:

identifying content that differs between the media asset and the second version of the media asset; and

normalizing the first playback position and the second playback position by excluding the content from the normalized first playback position and the normalized second playback position.

6. The method of claim 1 , wherein the first version of the media asset is stored in a first format in the memory of the local device, and wherein the second version of the media asset is stored in a second format, different from the first format, in the memory of the remote device.

7. The method of claim 6 , further comprising:

retrieving, from the memory of the local device, a profile for a user of the local device;

identifying, based on the profile, media display preferences associated with the user;

determining an encoding parameter based on the media display preferences associated with the user;

transmitting, to the remote device, the encoding parameter; and

receiving, from the remote device, the second frame encoded in the first format based on the encoding parameter.

8. The method of claim 7 , further comprising:

identifying a performance capability of a communication channel utilized by the local device for communication with the remote device; and

modifying the encoding parameter based on the performance capability.

9. The method of claim 6 , wherein the second frame is received, by the local device, in a third format, different from the first and the second format.

10. The method of claim 1 , further comprising:

calculating a number of frames in the first plurality of frames that are corrupt;

generating for display at the local device the second frame in response to determining that the number of frames is greater than a threshold maximum number of frames being corrupt; and

generating for display at the local device the first frame in response to determining that the number of frames is less than the threshold maximum number of frames being corrupt.

11. A system for playing media, the system comprising:

storage circuitry of a local device configured to store a plurality of media assets; and

control circuitry configured to:

receive a user input requesting playback on the local device of a first version of a media asset on, wherein the first version of the media asset is selected from the plurality of media assets stored in the storage circuitry of the local device;

retrieve, from the storage circuitry of the local device, a first frame of a first plurality of frames associated with the media asset;

in response to determining that the first frame is corrupt:

search a database that comprises a listing of a plurality of remote devices that store remote versions of the media asset to identify a remote device that stores a second version of the media asset, wherein identifying the remote device comprises:

determine that the first frame matches a second frame of a second plurality of frames associated with the second version of the media asset; and

determine that an encoding capability of the remote device matches an decoding capability of the local device; and

in response to identifying the remote device:

receive the second frame that was place-shifted from the remote device to the local device; and

generate for display at the local device the second frame.

12. The system of claim 11 , wherein the remote device is one of a plurality of remote devices storing the second version of the media, and wherein the control circuitry, when identifying the remote device storing the second version of the media asset, is further configured to:

determine that the remote device is accessing the second version of the media asset at the second frame; and

select the remote device based on the determination that the remote device is accessing the second version of the media asset at the second frame.

13. The system of claim 11 , wherein the control circuitry, when determining that the first frame comprises is corrupt, is further configured to:

compute a checksum for the first frame;

compare the computed checksum to a checksum value associated with the frame; and

determine that the frame comprises is corrupt when the computed checksum differs from the checksum value associated with the frame.

14. The system of claim 11 , wherein the control circuitry, when determining that the first frame matches a second frame of a plurality of frames associated with the second version of the media asset, is further configured to:

identify a first playback position corresponding to the first frame;

identify a second playback position corresponding to the second frame; and

determine that the first playback position matches the second playback position.

15. The system of claim 14 , wherein content in the second version of the media asset differs from content in the media asset, and wherein the control circuitry, when determining that the first playback position matches the second playback position, is further configured to:

identify content that differs between the media asset and the second version of the media asset; and

normalize the first playback position and the second playback position by excluding the content from the normalized first playback position and the normalized second playback position.

16. The system of claim 11 , wherein the first version of the media asset is stored in a first format in the storage circuitry of the local device, and wherein the second version of the media asset is stored in a second format, different from the first format, in the storage circuitry of the remote device.

17. The system of claim 16 , wherein the control circuitry is further configured to:

retrieve, from the storage circuitry of the local device, a profile for a user of the local device;

identify, based on the profile, media display preferences associated with the user;

determine an encoding parameter based on the media display preferences associated with the user;

transmit, to the remote device, the encoding parameter; and

receive, from the remote device, the second frame encoded in the first format based on the encoding parameter.

18. The system of claim 17 , wherein the control circuitry is further configured to:

identify a performance capability of a communication channel utilized by the local device for communication with the remote device; and

modify the encoding parameter based on the performance capability.

19. The system of claim 16 , wherein the second frame is received, by the local device, in a third format, different from the first and the second format.

20. The system of claim 11 , wherein the control circuitry is further configured to:

calculate a number of frames in the first plurality of frames that are corrupt;

generate for display at the local device the second frame in response to determining that the number of frames is greater than a threshold maximum number of frames being corrupt; and

generate for display at the local device the first frame in response to determining that the number of frames is less than the threshold maximum number of frames being corrupt.

Assignments (7)
CHANGE OF NAME Recorded Oct 2, 2024
From: ROVI GUIDES, INC.
To: ADEIA GUIDES INC.
Reel/Frame 069085/0715 →
RELEASE OF SECURITY INTEREST Recorded Jun 5, 2020
From: HPS INVESTMENT PARTNERS, LLC
To: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
Reel/Frame 053458/0749 →
RELEASE OF SECURITY INTEREST Recorded Jun 5, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
Reel/Frame 053481/0790 →
SECURITY INTEREST Recorded Jun 1, 2020
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS INC.; VEVEO, INC.; INVENSAS CORPORATION; INVENSAS BONDING TECHNOLOGIES, INC.; TESSERA, INC.; TESSERA ADVANCED TECHNOLOGIES, INC.; DTS, INC.; PHORUS, INC.; IBIQUITY DIGITAL CORPORATION
To: BANK OF AMERICA, N.A.
Reel/Frame 053468/0001 →
PATENT SECURITY AGREEMENT Recorded Nov 25, 2019
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 051110/0006 →
SECURITY INTEREST Recorded Nov 22, 2019
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
To: HPS INVESTMENT PARTNERS, LLC, AS COLLATERAL AGENT
Reel/Frame 051143/0468 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 17, 2017
From: GUPTA, VIKRAM MAKAM; DHARWA, ASHWINI; GODDUMARRI, RAGHAVENDRA; AGARWAL, VISHAL
To: ROVI GUIDES, INC.
Reel/Frame 040985/0138 →
Continuity (2)
Continuation 14861332 · Sep 22, 2015
Related Publication 20170118523A1 · Apr 27, 2017