IP Library Granted Patent US 50,400
Granted Patent E1
US 50,400 · App. 17/175,344 · Granted Apr 22, 2025

Playback synchronization across playback devices

Inventor: William David Amidei (San Diego, CA)
Assignee: DIVX, LLC
H04N21/8547H04N21/2387H04N21/242H04N21/26208H04N21/43H04N21/4302H04N21/4305H04N21/6332
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 50,400
App. No.
17/175,344
Granted
Apr 22, 2025
Kind
E1
Abstract

Systems and methods for synchronizing the playback of streamed content on multiple playback devices is disclosed. The systems and methods include receiving time information based on a network time source in the playback devices connected to a defined network. The playback clock in each playback device is set based upon the time information. A first playback device then generates presentation time information including a start time for playback and broadcast the presentation time information to the other playback device over the defined network. The playback devices use the presentation time information to adjust the presentation time stamps of the frames of the media content in the stream.

Claims (130)

1. A method for playback of encoded media performed by a first playback device connected to a defined network including a plurality of playback devices comprising:

transmitting a request for time information from a first playback device to a network time provider;

receiving the time information from the network time provider in the first playback device;

setting a playback clock in the first playback device using the received time information;

receiving, by the first playback device, presentation time information for a stream of encoded media from another playback device of a plurality of playback devices over a defined network wherein the presentation time information includes a stream start time;

receiving, by the first playback device, a stream of the encoded media in the first playback device and presentation time information for at least some of the plurality of frames, wherein the stream includes a plurality of frames of the encoded content;

determining, using the first playback device, whether the presentation time information has been received from another one of the plurality of playback devices in response to beginning the reception of the stream of encoded media;

generating presentation time information in the first playback device in response to a determination that the presentation time information has not been received from the another one of the plurality of playback devices;

broadcasting the presentation time information from the first playback device to other ones of the plurality of playback devices connected to the defined network over the defined network;

adjusting the presentation time information of at least one of the plurality of frames of the stream in the first playback device based upon one of: the presentation time information generated by the playback device and the presentation time information received from the another one of the plurality of playback devices; and

commencing playback, by the first playback device, of the stream of encoded media based on the adjusted presentation time information of at least one of the plurality of frames.

2. The method of claim 1 further comprising, using the first playback device:

determining that a specified time period has expired;

generating updated presentation time information in response to the time period expiring; and

broadcasting the updated presentation time information to the other ones of the plurality of playback devices connected to the defined network over the defined network.

3. The method of claim 1 further comprising, using the first playback device:

receiving updated presentation time information from another playback device of the plurality of playback devices over the defined network; and

adjusting the presentation time information of each of the plurality of frames of the stream in the first playback device based upon the playback information.

4. The method of claim 1 wherein the time information is provided in Coordinated Universal Time.

5. The method of claim 1 wherein the start time is provided in Coordinated Universal Time.

6. The method of claim 1 wherein the network time provider is a Network Time Protocol Server and the transmitting of the request and receiving of the time information.

7. The method of claim 1 wherein the network time provider is a local time server for the defined network.

8. The method of claim 1 wherein the presentation time information includes presentation time information for a particular frame and a playback speed.

9. The method of claim 1 wherein the defined network is a local area network.

10. The method of claim 3 further comprising, using the first playback device;

determining whether the updated presentation time information is received within a specified time period;

generating updated presentation time information in response to a determination that the updated presentation time information was not received in the specified time period; and

broadcasting the updated presentation time information to the other ones of the plurality of playback devices connected to the defined network over the defined network.

11. The method of claim 7 further comprising:

transmitting a request for time information from the network time provider to a Network Time Protocol server, where the network time provider is a local time server;

receiving the time information from the Network Time Protocol server in the local time server;

receiving the request for time information from the first playback device in the local time server;

generating, by the local time server, the time information for the first playback device from the timing information received from the Network Time Protocol server; and

transmitting the time information from the local time server to the first playback device.

12. The method of claim 10 wherein the updated presentation time information includes presentation time information for a frame in the stream and a current playback speed.

13. A playback device for providing playback of encoded media based on a provided start time comprising: memory; and

a processor configured via a client application stored in the memory to:

transmit a request for time information to a network time provider;

receive the time information from the network time provider;

set a playback clock in the playback device using the received time information;

receive presentation time information for a stream of encoded media from another playback device of a plurality of playback devices over a defined network wherein the presentation time information includes a stream start time;

receive a stream of the encoded media in the playback device and presentation time information for at least some of the plurality of frames, wherein the stream includes a plurality of frames of the encoded content;

determine whether the presentation time information has been received from another one of the plurality of playback devices in response to beginning the reception of the stream of encoded media;

generate presentation time information in response to a determination that the presentation time information has not been received from the another one of the plurality of playback devices;

broadcast the presentation time information to other ones of the plurality of playback devices connected to the defined network over the defined network;

adjust the presentation time information of at least one of the plurality of frames of the stream in the playback device based upon one of: the presentation time information generated by the playback device and the presentation time information received from the another one of the plurality of playback devices; and

commence playback of the stream of encoded media based on the adjusted presentation time information of at least one of the plurality of frames.

14. The playback device of claim 13 wherein the client application further configures the processor to:

determine that a specified time period has expired;

generate updated presentation time information in response to the time period expiring; and

broadcast the updated presentation time information to the other ones of the plurality of playback devices connected to the defined network over the defined network.

15. The playback device of claim 13 wherein

the client application further configures the processor to:

receive updated presentation time information from another one of the plurality of playback devices over the defined network; and

adjust the presentation time information of each of the plurality of frames of the stream in the playback device based upon the presentation time information.

16. The playback device of claim 13 , wherein the presentation time information includes a playback speed.

17. The playback device of claim 13 wherein the defined network is a local area network.

18. The playback device of claim 13 wherein the time information is provided in Coordinated Universal Time.

19. The playback device of claim 13 wherein the start time is provided in Coordinated Universal Time.

20. The playback of claim 13 wherein the network time provider is a Network Time Protocol Server and the transmitting of the request and receiving of the time information are performed using Network Time Protocol.

21. The playback device of claim 15 herein the client application further configures the processor to:

determine whether the updated presentation time information is received within a specified time period;

generate updated presentation time information in response to a determination that the updated presentation time information was not received in the specified time period; and

broadcast the updated presentation time information to the other playback devices connected to the defined network over the defined network.

22. The playback device of claim 15 wherein the updated presentation time information includes presentation time information for a particular one of the plurality of playback frames in the stream of encoded media and a playback speed.

23. A method for playback of encoded media, the method comprising:

transmitting a request for time information from a first playback device to a network time provider;

receiving the time information from the network time provider in the first playback device;

setting a playback clock in the first playback device using the received time information;

receiving, by the first playback device, presentation time information for a stream of encoded media from another playback device of a plurality of playback devices over a defined network wherein the presentation time information includes a stream start time;

receiving, by the first playback device, a stream of the encoded media and presentation time information for at least some of a plurality of frames, wherein the stream includes the plurality of frames of the encoded media;

determining, using the first playback device, whether the presentation time information has been received from another one of the plurality of playback devices in response to beginning the reception of the stream of encoded media;

generating presentation time information in the first playback device in response to a determination that the presentation time information has not been received from the another one of the plurality of playback devices;

adjusting the presentation time information of at least one of the plurality of frames of the stream in the first playback device based on the presentation time information received from the another one of the plurality of playback devices;

commencing playback, by the first playback device, of the stream of encoded media based on the adjusted presentation time information of at least some of the plurality of frames; and

broadcasting the generated presentation time information from the first playback device to other ones of the plurality of playback devices connected to the defined network over the defined network, wherein at least one of the other ones of the plurality of playback devices adjusts the presentation time information of at least one of the plurality of frames of the stream in the at least one of the other ones of the plurality of playback devices based upon the generated presentation time information received from the first playback device and commences playback of the stream of encoded media based on the adjusted presentation time information of at least one of the plurality of frames.

24. The method of claim 23 further comprising, using the first playback device:

determining that a specified time period has expired;

generating updated presentation time information in response to the time period expiring; and

broadcasting the updated presentation time information to the other ones of the plurality of playback devices connected to the defined network over the defined network.

25. The method of claim 23 further comprising, using the first playback device:

receiving updated presentation time information from another playback device of the plurality of playback devices over the defined network; and

adjusting the presentation time information of each of the plurality of frames of the stream in the first playback device based upon the received updated presentation time information.

26. The method of claim 25 further comprising, using the first playback device:

determining whether the updated presentation time information is received within a specified time period;

generating updated presentation time information in response to a determination that the updated presentation time information was not received in the specified time period; and

broadcasting the updated presentation time information to the other ones of the plurality of playback devices connected to the defined network over the defined network.

27. The method of claim 26 wherein the generated updated presentation time information includes presentation time information for a frame in the stream and a current playback speed.

28. The method of claim 23 wherein the time information is provided in Coordinated Universal Time.

29. The method of claim 23 wherein the start time is provided in Coordinated Universal Time.

30. The method of claim 23 wherein the network time provider is a Network Time Protocol Server and the transmitting of the request and receiving of the time information are performed using Network Time Protocol.

31. The method of claim 23 wherein the network time provider is a local time server for the defined network.

32. The method of claim 31 further comprising:

transmitting a request for time information from the network time provider to a Network Time Protocol server;

receiving the time information from the Network Time Protocol server in the local time server;

receiving the request for time information from the first playback device in the local time server;

generating, by the local time server, the time information for the first playback device from the timing information received from the Network Time Protocol server; and

transmitting the time information from the local time server to the first playback device.

33. The method of claim 23 wherein the generated presentation time information includes presentation time information for a particular frame and a playback speed.

34. The method of claim 23 wherein the defined network is a local area network.

35. A playback device for providing playback of encoded media, the playback device comprising:

memory; and

a processor configured via a client application stored in the memory to:

transmit a request for time information to a network time provider;

receive the time information from the network time provider;

set a playback clock in the playback device using the received time information;

receive presentation time information for a stream of encoded media from another playback device of a plurality of playback devices over a defined network wherein the presentation time information includes a stream start time;

receive a stream of the encoded media and presentation time information for at least some of a plurality of frames, wherein the stream includes the plurality of frames of the encoded media;

determine whether the presentation time information has been received from another one of the plurality of playback devices in response to beginning the reception of the stream of encoded media;

generate presentation time information in response to a determination that the presentation time information has not been received from the another one of the plurality of playback devices;

adjust the presentation time information of at least one of the plurality of frames of the stream in the playback device based on the presentation time information received from the another one of the plurality of playback devices;

commence playback, by the playback device, of the stream of encoded media based on the adjusted presentation time information of at least some of the plurality of frames; and

broadcast the generated presentation time information to other ones of the plurality of playback devices connected to the defined network over the defined network, wherein the broadcasted presentation time information is received in at least one of the other ones of the plurality of playback devices and is used to adjust the presentation time information of at least one of the plurality of frames of the stream in the at least one of the other ones of the plurality of playback devices, wherein the adjusted presentation time information of at least one of the plurality of frames of the stream is used to commence playback of the stream of encoded media in the at least one of the other ones of the plurality of playback devices.

36. The playback device of claim 35 wherein the client application further configures the processor to:

determine that a specified time period has expired;

generate updated presentation time information in response to the time period expiring; and

broadcast the updated presentation time information to the other ones of the plurality of playback devices connected to the defined network over the defined network.

37. The playback device of claim 35 wherein the client application further configures the processor to:

receive updated presentation time information from another one of the plurality of playback devices over the defined network; and

adjust the presentation time information of each of the plurality of frames of the stream in the playback device based upon the received updated presentation time information.

38. The playback device of claim 37 wherein the client application further configures the processor to:

determine whether the updated presentation time information is received within a specified time period;

generate updated presentation time information in response to a determination that the updated presentation time information was not received in the specified time period; and

broadcast the updated presentation time information to the other playback devices connected to the defined network over the defined network.

39. The playback device of claim 37 wherein the received updated presentation time information includes presentation time information for a particular one of the plurality of playback frames in the stream of encoded media and a playback speed.

40. The playback device of claim 35 wherein the generated presentation time information includes a playback speed.

41. The playback device of claim 35 wherein the defined network is a local area network.

42. The playback device of claim 35 wherein the time information is provided in Coordinated Universal Time.

43. The playback device of claim 35 wherein the start time is provided in Coordinated Universal Time.

44. The playback of claim 35 wherein the network time provider is a Network Time Protocol Server and the transmitting of the request and receiving of the time information are performed using Network Time Protocol.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 12, 2026
From: DIVX, LLC
To: SONIC IP, INC.
Reel/Frame 075627/0075 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 12, 2026
From: AMIDEI, WILLIAM DAVID
To: DIVX, LLC
Reel/Frame 075627/0183 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 12, 2026
From: SONIC IP, INC.
To: DIVX CF HOLDINGS LLC
Reel/Frame 075627/0251 →
CHANGE OF NAME Recorded Aug 12, 2026
From: DIVX CF HOLDINGS LLC
To: DIVX, LLC
Reel/Frame 075627/0345 →
Continuity (3)
Continuation 14814247 · Jul 30, 2015
Continuation 13907791 · May 31, 2013
Reissue 15234768 · Aug 11, 2016
References Cited (345)
US 5400401A · Wasilewski et al. · 1995 [cited by applicant]
US 5574785A · Ueno et al. · 1996 [cited by applicant]
US 5600721A · Kitazato · 1997 [cited by applicant]
US 5621794A · Matsuda et al. · 1997 [cited by applicant]
US 5642338A · Fukushima et al. · 1997 [cited by applicant]
US 5805700A · Nardone et al. · 1998 [cited by applicant]
US 5813010A · Kurano et al. · 1998 [cited by applicant]
US 5854873A · Mori et al. · 1998 [cited by applicant]
US 5907658A · Murase et al. · 1999 [cited by applicant]
US 5923869A · Kashiwagi et al. · 1999 [cited by applicant]
US 6002834A · Hirabayashi et al. · 1999 [cited by applicant]
US 6009237A · Hirabayashi et al. · 1999 [cited by applicant]
US 6016381A · Taira et al. · 2000 [cited by applicant]
US 6057832A · Lev et al. · 2000 [cited by applicant]
US 6065050A · DeMoney · 2000 [cited by applicant]
US 6266483B1 · Okada et al. · 2001 [cited by applicant]
US 6282320B1 · Hasegawa et al. · 2001 [cited by applicant]
US 6320905B1 · Konstantinides · 2001 [cited by applicant]
US 6351538B1 · Uz · 2002 [cited by applicant]
US 6373803B2 · Ando et al. · 2002 [cited by applicant]
US 6415031B1 · Colligan et al. · 2002 [cited by applicant]
US 6445877B1 · Okada et al. · 2002 [cited by applicant]
US 6453115B1 · Boyle · 2002 [cited by applicant]
US 6453116B1 · Ando et al. · 2002 [cited by applicant]
US 6504873B1 · Vehvilaeinen · 2003 [cited by applicant]
US 6512883B2 · Shim et al. · 2003 [cited by applicant]
US 6594699B1 · Sahai et al. · 2003 [cited by applicant]
US 6654933B1 · Abbott et al. · 2003 [cited by applicant]
US 6671408B1 · Kaku · 2003 [cited by applicant]
US 6690838B2 · Zhou · 2004 [cited by applicant]
US 6724944B1 · Kalevo et al. · 2004 [cited by applicant]
US 6751623B1 · Basso et al. · 2004 [cited by applicant]
US 6813437B2 · Ando et al. · 2004 [cited by applicant]
US 6871006B1 · Oguz et al. · 2005 [cited by applicant]
US 6912513B1 · Candelore · 2005 [cited by applicant]
US 6931531B1 · Takahashi · 2005 [cited by applicant]
US 6957350B1 · Demos · 2005 [cited by applicant]
US 6970564B1 · Kubota et al. · 2005 [cited by applicant]
US 6983079B2 · Kim · 2006 [cited by applicant]
US 7006757B2 · Ando et al. · 2006 [cited by applicant]
US 7007170B2 · Morten · 2006 [cited by applicant]
US 7020287B2 · Unger · 2006 [cited by applicant]
US 7151832B1 · Fetkovich et al. · 2006 [cited by applicant]
US 7188183B1 · Paul et al. · 2007 [cited by applicant]
US 7212726B2 · Zetts · 2007 [cited by applicant]
US 7242772B1 · Tehranchi · 2007 [cited by applicant]
US 7246367B2 · Iivonen · 2007 [cited by examiner]
US 7274861B2 · Yahata et al. · 2007 [cited by applicant]
US 7295673B2 · Grab et al. · 2007 [cited by applicant]
US 7349886B2 · Morten et al. · 2008 [cited by applicant]
US 7352956B1 · Winter et al. · 2008 [cited by applicant]
US 7382879B1 · Miller · 2008 [cited by applicant]
US 7397853B2 · Kwon et al. · 2008 [cited by applicant]
US 7400679B2 · Kwon et al. · 2008 [cited by applicant]
US 7418132B2 · Hoshuyama · 2008 [cited by applicant]
US 7457415B2 · Reitmeier et al. · 2008 [cited by applicant]
US 7499930B2 · Naka et al. · 2009 [cited by applicant]
US 7546641B2 · Robert et al. · 2009 [cited by applicant]
US 7627808B2 · Blank et al. · 2009 [cited by applicant]
US 7639921B2 · Seo et al. · 2009 [cited by applicant]
US 7640435B2 · Morten · 2009 [cited by applicant]
US 7711052B2 · Hannuksela et al. · 2010 [cited by applicant]
US 7853980B2 · Pedlow, Jr. et al. · 2010 [cited by applicant]
US 7864186B2 · Robotham et al. · 2011 [cited by applicant]
US 7945143B2 · Yahata et al. · 2011 [cited by applicant]
US 7996700B2 · Celinski et al. · 2011 [cited by applicant]
US 8131875B1 · Chen · 2012 [cited by applicant]
US 8169916B1 · Pai et al. · 2012 [cited by applicant]
US 8243924B2 · Chen et al. · 2012 [cited by applicant]
US 8286213B2 · Seo · 2012 [cited by applicant]
US 8312079B2 · Newsome et al. · 2012 [cited by applicant]
US 8369421B2 · Kadono et al. · 2013 [cited by applicant]
US 8649669B2 · Braness et al. · 2014 [cited by applicant]
US 8683066B2 · Hurst et al. · 2014 [cited by applicant]
US 8782268B2 · Pyle et al. · 2014 [cited by applicant]
US 8819116B1 · Tomay et al. · 2014 [cited by applicant]
US 8849950B2 · Stockhammer et al. · 2014 [cited by applicant]
US 9038116B1 · Knox et al. · 2015 [cited by applicant]
US 9100687B2 · Amidei · 2015 [cited by applicant]
US 9380099B2 · Amidei et al. · 2016 [cited by applicant]
US 9432718B2 · Amidei · 2016 [cited by applicant]
US 9648362B2 · Amidei et al. · 2017 [cited by applicant]
US 10063896B2 · Amidei et al. · 2018 [cited by applicant]
US 10205981B2 · Amidei · 2019 [cited by applicant]
US 10523984B2 · Amidei et al. · 2019 [cited by applicant]
US 10880620B2 · Amidei · 2020 [cited by applicant]
US 20010021276A1 · Zhou · 2001 [cited by applicant]
US 20010052077A1 · Fung et al. · 2001 [cited by applicant]
US 20010052127A1 · Seo et al. · 2001 [cited by applicant]
US 20020048450A1 · Zetts · 2002 [cited by applicant]
US 20020067432A1 · Kondo et al. · 2002 [cited by applicant]
US 20020135607A1 · Kato et al. · 2002 [cited by applicant]
US 20020141503A1 · Kobayashi et al. · 2002 [cited by applicant]
US 20020154779A1 · Asano et al. · 2002 [cited by applicant]
US 20020164024A1 · Arakawa et al. · 2002 [cited by applicant]
US 20020169971A1 · Asano et al. · 2002 [cited by applicant]
US 20030002577A1 · Pinder · 2003 [cited by applicant]
US 20030044080A1 · Frishman et al. · 2003 [cited by applicant]
US 20030053541A1 · Sun et al. · 2003 [cited by applicant]
US 20030063675A1 · Kang et al. · 2003 [cited by applicant]
US 20030077071A1 · Lin et al. · 2003 [cited by applicant]
US 20030135742A1 · Evans · 2003 [cited by applicant]
US 20030142594A1 · Tsumagari et al. · 2003 [cited by applicant]
US 20030206717A1 · Yogeshwar et al. · 2003 [cited by applicant]
US 20040001594A1 · Krishnaswamy et al. · 2004 [cited by applicant]
US 20040022391A1 · Obrien · 2004 [cited by applicant]
US 20040028227A1 · Yu · 2004 [cited by applicant]
US 20040037421A1 · Truman · 2004 [cited by applicant]
US 20040047592A1 · Seo et al. · 2004 [cited by applicant]
US 20040047607A1 · Seo et al. · 2004 [cited by applicant]
US 20040076237A1 · Kadono et al. · 2004 [cited by applicant]
US 20040081333A1 · Grab et al. · 2004 [cited by applicant]
US 20040093494A1 · Nishimoto et al. · 2004 [cited by applicant]
US 20040101059A1 · Joch et al. · 2004 [cited by applicant]
US 20040107356A1 · Shamoon et al. · 2004 [cited by applicant]
US 20050013494A1 · Srinivasan et al. · 2005 [cited by applicant]
US 20050063541A1 · Candelore · 2005 [cited by applicant]
US 20050076232A1 · Kawaguchi · 2005 [cited by applicant]
US 20050144468A1 · Northcutt · 2005 [cited by applicant]
US 20050166135A1 · Burke et al. · 2005 [cited by applicant]
US 20050177741A1 · Chen et al. · 2005 [cited by applicant]
US 20050243912A1 · Kwon et al. · 2005 [cited by applicant]
US 20050265555A1 · Pippuri · 2005 [cited by applicant]
US 20060002681A1 · Spilo · 2006 [cited by applicant]
US 20060013568A1 · Rodriguez · 2006 [cited by applicant]
US 20060165163A1 · Burazerovic et al. · 2006 [cited by applicant]
US 20070047645A1 · Takashima · 2007 [cited by applicant]
US 20070067472A1 · Maertens et al. · 2007 [cited by applicant]
US 20070083467A1 · Lindahl et al. · 2007 [cited by applicant]
US 20070110074A1 · Bradley et al. · 2007 [cited by applicant]
US 20070180051A1 · Kelly et al. · 2007 [cited by applicant]
US 20070250761A1 · Bradley et al. · 2007 [cited by applicant]
US 20080086570A1 · Dey et al. · 2008 [cited by applicant]
US 20080101718A1 · Yang et al. · 2008 [cited by applicant]
US 20080137847A1 · Candelore et al. · 2008 [cited by applicant]
US 20080177822A1 · Yoneda · 2008 [cited by examiner]
US 20080270800A1 · Krober · 2008 [cited by applicant]
US 20090010622A1 · Yahata et al. · 2009 [cited by applicant]
US 20090013195A1 · Ochi et al. · 2009 [cited by applicant]
US 20090077143A1 · Macy, Jr. · 2009 [cited by applicant]
US 20090106082A1 · Senti et al. · 2009 [cited by applicant]
US 20090129752A1 · Yamada et al. · 2009 [cited by applicant]
US 20090132599A1 · Soroushian et al. · 2009 [cited by applicant]
US 20090178090A1 · Oztaskent · 2009 [cited by applicant]
US 20090249081A1 · Zayas · 2009 [cited by applicant]
US 20090249222A1 · Schmidt · 2009 [cited by examiner]
US 20090282162A1 · Mehrotra et al. · 2009 [cited by applicant]
US 20090310819A1 · Hatano · 2009 [cited by applicant]
US 20100100917A1 · Chiao · 2010 [cited by applicant]
US 20100111491A1 · Kamoto · 2010 [cited by applicant]
US 20100142915A1 · Mcdermott et al. · 2010 [cited by applicant]
US 20110010466A1 · Fan et al. · 2011 [cited by applicant]
US 20110047247A1 · Katz · 2011 [cited by applicant]
US 20110058675A1 · Brueck et al. · 2011 [cited by applicant]
US 20110096828A1 · Chen et al. · 2011 [cited by applicant]
US 20110103374A1 · Lajoie et al. · 2011 [cited by applicant]
US 20110110360A1 · Fenwick · 2011 [cited by examiner]
US 20110135090A1 · Chan et al. · 2011 [cited by applicant]
US 20110145858A1 · Philpott et al. · 2011 [cited by applicant]
US 20110173345A1 · Knox et al. · 2011 [cited by applicant]
US 20110179185A1 · Wang et al. · 2011 [cited by applicant]
US 20110197261A1 · Dong et al. · 2011 [cited by applicant]
US 20110218656A1 · Bishop · 2011 [cited by examiner]
US 20110246661A1 · Manzari et al. · 2011 [cited by applicant]
US 20110276648A1 · Soldan · 2011 [cited by applicant]
US 20110296048A1 · Knox et al. · 2011 [cited by applicant]
US 20110314130A1 · Strasman · 2011 [cited by applicant]
US 20120005312A1 · Mcgowan et al. · 2012 [cited by applicant]
US 20120042047A1 · Chen · 2012 [cited by examiner]
US 20120042090A1 · Chen et al. · 2012 [cited by applicant]
US 20120047542A1 · Lewis et al. · 2012 [cited by applicant]
US 20120082424A1 · Hubner · 2012 [cited by examiner]
US 20120110120A1 · Willig et al. · 2012 [cited by applicant]
US 20120144435A1 · Spilo et al. · 2012 [cited by applicant]
US 20120167132A1 · Mathews et al. · 2012 [cited by applicant]
US 20120311174A1 · Bichot et al. · 2012 [cited by applicant]
US 20120331167A1 · Hunt · 2012 [cited by applicant]
US 20130013803A1 · Bichot et al. · 2013 [cited by applicant]
US 20130067116A1 · Ostergren · 2013 [cited by examiner]
US 20130080267A1 · McGowan · 2013 [cited by applicant]
US 20130128116A1 · Knowles · 2013 [cited by applicant]
US 20140140253A1 · Lohmar et al. · 2014 [cited by applicant]
US 20140149557A1 · Lohmar et al. · 2014 [cited by applicant]
US 20140237086A1 · Legallais · 2014 [cited by applicant]
US 20140359075A1 · Amidei et al. · 2014 [cited by applicant]
US 20140359681A1 · Amidei · 2014 [cited by applicant]
US 20150179227A1 · Russell · 2015 [cited by applicant]
US 20150288530A1 · Oyman · 2015 [cited by applicant]
US 20150341683A1 · Amidei et al. · 2015 [cited by applicant]
US 20160302166A1 · Dang · 2016 [cited by examiner]
US 20160309206A1 · Amidei et al. · 2016 [cited by applicant]
US 20160353143A1 · Amidei · 2016 [cited by applicant]
US 20170034263A1 · Archambault · 2017 [cited by examiner]
US 20170238027A1 · Amidei et al. · 2017 [cited by applicant]
US 20180367824A1 · Amidei et al. · 2018 [cited by applicant]
US 20190238910A1 · Amidei · 2019 [cited by applicant]
US 20200137434A1 · Amidei et al. · 2020 [cited by applicant]
CA 2237293A1 · 1997 [cited by applicant]
CN 101647273A · 2010 [cited by applicant]
CN 102782669A · 2012 [cited by applicant]
CN 105247437B · 2018 [cited by applicant]
CN 108092973A · 2018 [cited by applicant]
EP 1453319A1 · 2004 [cited by applicant]
EP 1283640B1 · 2006 [cited by applicant]
EP 2180664A1 · 2010 [cited by applicant]
EP 2290899A2 · 2011 [cited by applicant]
EP 2360923A1 · 2011 [cited by applicant]
EP 3005013A1 · 2016 [cited by applicant]
EP 3005013A4 · 2017 [cited by applicant]
EP 3005013B1 · 2018 [cited by applicant]
EP 3462275A1 · 2019 [cited by applicant]
HK 1217049A1 · 2016 [cited by applicant]
HK 1250553A · 2018 [cited by applicant]
HK 1217049B · 2019 [cited by applicant]
HK 1262076A1 · 2020 [cited by applicant]
JP 2001091680A · 2001 [cited by applicant]
JP 2003085068A · 2003 [cited by applicant]
JP 2006101364A · 2006 [cited by applicant]
JP 2008252422A · 2008 [cited by applicant]
JP 2011223060A · 2011 [cited by applicant]
JP 2016526349A · 2016 [cited by applicant]
JP 2019050636A · 2019 [cited by applicant]
JP 6509826B2 · 2019 [cited by applicant]
JP 6783293B2 · 2020 [cited by applicant]
KR 20040039852A · 2004 [cited by applicant]
KR 20060106250A · 2006 [cited by applicant]
KR 20160021152A · 2016 [cited by applicant]
KR 101748198B1 · 2017 [cited by applicant]
RU 2328040C2 · 2008 [cited by applicant]
TW 201246873A · 2012 [cited by applicant]
WO 2000049762A2 · 2000 [cited by applicant]
WO 2000049763A1 · 2000 [cited by applicant]
WO 2003047262A2 · 2003 [cited by applicant]
WO 2004012378A2 · 2004 [cited by applicant]
WO 2004100158A1 · 2004 [cited by applicant]
WO 2005008385A2 · 2005 [cited by applicant]
WO 2005015935A1 · 2005 [cited by applicant]
WO 2009006302A1 · 2009 [cited by applicant]
WO 2009109976A2 · 2009 [cited by applicant]
WO 2011087449A1 · 2011 [cited by applicant]
WO 2011101371A1 · 2011 [cited by applicant]
WO 2011103364A1 · 2011 [cited by applicant]
WO 2012021747A1 · 2012 [cited by applicant]
WO 2013045456A1 · 2013 [cited by applicant]
WO 2014194232A1 · 2014 [cited by applicant]
WO 2014194236A2 · 2014 [cited by applicant]
WO 2014194236A3 · 2015 [cited by applicant]
Extended European Search Report for European Application No. 14805026.3, Search completed Dec. 20, 2016, Mailed Jan. 3, 2017, 9 Pgs. [cited by applicant]
International Preliminary Report on Patentability for International Application PCT/US2014/040299, Report issued Dec. 1, 2015, Mailed Dec. 10, 2015, 06 Pgs. [cited by applicant]
International Preliminary Report on Patentability for International Application PCT/US2014/040308, Report issued Dec. 1, 2015, Mailed Dec. 10, 2015, 08 Pgs. [cited by applicant]
International Search Report and Written Opinion for International Application PCT/US2014/040308, Report Completed Sep. 10, 2014, Mailed Mar. 27, 2015, 9 pgs. [cited by applicant]
International Search Report and Written Opinion for International Application PCT/US2014/040299, report completed Sep. 8, 2014, Mailed Oct. 6, 2014, 7 pgs. [cited by applicant]
“MPEG-2, Part 1, ISO/IEC 13818-1”, Information technology—Generic Coding of Moving Pictures and Associated Audio: Systems, 161 pgs., Nov. 13, 1994. [cited by applicant]
“MPEG-4, Part 14, ISO/IEC 14496-14”, Information technology—Coding of audio-visual objects, 18 pgs., Nov. 15, 2003. [cited by applicant]
Schulzrinne et al., “Real Time Streaming Protocol (RTSP)”, Internet Engineering Task Force, RFC 2326, Apr. 1998, 80 pgs. [cited by applicant]
Server-Side Stream Repackaging (Streaming Video Technologies Panorama, Part 2), Jul. 2011, 15 pgs. [cited by applicant]
Text of ISO/IEC 23001-6: Dynamic adaptive streaming over HTTP (DASH), Oct. 2010, 71 pgs. [cited by applicant]
Universal Mobile Telecommunications System (UMTS), ETSI TS 126 233 V9.1.0 (Jun. 2011) 3GPP TS 26.233 version 9.1.0 Release 9, 18 pgs. [cited by applicant]
Universal Mobile Telecommunications Systems (UMTS); ETSI TS 126 244 V9.4.0 (May 2011) 3GPP TS 26.244 version 9.4.0 Release 9, 58 pgs. [cited by applicant]
“Apple HTTP Live Streaming specification”, Aug. 2017, 60 pgs. [cited by applicant]
“Data Encryption Decryption using AES Algorithm, Key and Salt with Java Cryptography Extension”, Available at https://www.digizol.com/2009/10/java-encrypt-decrypt-jce-salt.html, Oct. 200, 6 pgs. [cited by applicant]
“Delivering Live and On-Demand Smooth Streaming”, Microsoft Silverlight, 2009, 28 pgs. [cited by applicant]
“HTTP Based Adaptive Streaming over HSPA”, Apr. 2011, 73 pgs. [cited by applicant]
“HTTP Live Streaming”, Mar. 2011, 24 pgs. [cited by applicant]
“HTTP Live Streaming”, Sep. 2011, 33 pgs. [cited by applicant]
“Information Technology-Coding of Audio Visual Objects—Part 2: Visual”, International Standard, ISO/IEC 14496-2, Third Edition, Jun. 1, 2004, pp. 1-724. (presented in three parts). [cited by applicant]
“Java Cryptography Architecture API Specification & Reference”, Available at https://docs.oracle.com/javase/1.5.0/docs/guide/security/CryptoSpec.html, Jul. 25, 2004, 68 pgs. [cited by applicant]
“Java Cryptography Extension, javax.crypto.Cipher class”, Available at https://docs.oracle.com/javase/1.5.0/docs/api/javax/crypto/Cipher.html, 2004, 24 pgs. [cited by applicant]
“JCE Encryption—Data Encryption Standard (DES) Tutorial”, Available at https://mkyong.com/java/jce-encryption-data-encryption-standard-des-tutorial/, Feb. 25, 2009, 2 pgs. [cited by applicant]
“Live and On-Demand Video with Silverlight and IIS Smooth Streaming”, Microsoft Silverlight, Windows Server Internet Information Services 7.0, Feb. 2010, 15 pgs. [cited by applicant]
“Microsoft Smooth Streaming specification”, Jul. 22, 2013, 56 pgs. [cited by applicant]
“OpenDML AVI File Format Extensions Version 1.02”, OpenDMLAVI MJPEG File Format Subcommittee. Last revision: Feb. 28, 1996. Reformatting: Sep. 1997, 42 pgs. [cited by applicant]
“Single-Encode Streaming for Multiple Screen Delivery”, Telestream Wowza Media Systems, 2009, 6 pgs. [cited by applicant]
“The MPEG-DASH Standard for Multimedia Streaming Over the Internet”, IEEE MultiMedia, vol. 18, No. 4, 2011, 7 pgs. [cited by applicant]
“Windows Media Player 9”, Microsoft, Mar. 23, 2017, 3 pgs. [cited by applicant]
Abomhara et al., “Enhancing Selective Encryption for H.264/AVC Using Advanced Encryption Standard”, International Journal of computer Theory and Engineering, Apr. 2010, vol. 2, No. 2, pp. 223-229. [cited by applicant]
Alattar et al., A.M. “Improved selective encryption techniques for secure transmission of MPEG video bit-streams”, In Proceedings 1999 International Conference on Image Processing (Cat. 99CH36348), vol. 4, IEEE, 1999, p… [cited by applicant]
Antoniou et al., “Adaptive Methods for the Transmission of Video Streams in Wireless Networks”, 2015, 50 pgs. [cited by applicant]
Apostolopoulos et al., “Secure Media Streaming and Secure Transcoding”, Multimedia Security Technologies for Digital Rights Management, 2006, 33 pgs. [cited by applicant]
Asai et al., “Essential Factors for Full-Interactive VOD Server: Video File System, Disk Scheduling, Network”, Proceedings of Globecom '95, Nov. 14-16, 1995, 6 pgs. [cited by applicant]
Beker et al., “Cipher Systems, The Protection of Communications”, 1982, 40 pgs. [cited by applicant]
Bocharov et al., “Portable Encoding of Audio-Video Objects, The Protected Interoperable File Format (PIFF)”, Microsoft Corporation, First Edition Sep. 8, 2009, 30 pgs. [cited by applicant]
Bulterman et al., “Synchronized Multimedia Integration Language (SMIL 3.0)”, W3C Recommendation, Dec. 1, 2008, https://www.w3.org/TR/2008/REC-SMIL3-20081201/, 321 pgs. (presented in five parts). [cited by applicant]
Cahill et al., “Locally Adaptive Deblocking Filter for Low Bit Rate Video”, Proceedings 2000 International Conference on Image Processing, Sep. 10-13, 2000, Vancouver, BC, Canada, 4 pgs. [cited by applicant]
Candelore, U.S. Appl. No. 60/372,901, filed Apr. 17, 2002, 5 pgs. [cited by applicant]
Chaddha et al., “A Frame-work for Live Multicast of Video Streams over the Internet”, Proceedings of 3rd IEEE International Conference on Image Processing, Sep. 19, 1996, Lausanne, Switzerland, 4 pgs. [cited by applicant]
Cheng, “Partial Encryption for Image and Video Communication”, Thesis, Fall 1998, 95 pgs. [cited by applicant]
Cheng et al., “Partial encryption of compressed images and videos”, IEEE Transactions on Signal Processing, vol. 48, No. 8, Aug. 2000, 33 pgs. [cited by applicant]
Cheung et al., “On the Use of Destination Set Grouping to Improve Fairness in Multicast Video Distribution”, Proceedings of IEEE INFOCOM'96, Conference on Computer Communications, vol. 2, IEEE, 1996, 23 pgs. [cited by applicant]
Collet, “Delivering Protected Content, An Approach for Next Generation Mobile Technologies”, Thesis, 2010, 84 pgs. [cited by applicant]
Diamantis et al., “Real Time Video Distribution using Publication through a Database”, Proceedings SIBGRAPI'98. International Symposium on Computer Graphics, Image Processing, and Vision (Cat. No. 98EX237), Oct. 1990, 8… [cited by applicant]
Dworkin, “Recommendation for Block Cipher Modes of Operation: Methods and Techniques”, NIST Special Publication 800-38A, 2001, 66 pgs. [cited by applicant]
Fang et al., “Real-time deblocking filter for MPEG-4 systems”, Asia-Pacific Conference on Circuits and Systems, Oct. 28-31, 2002, Bail, Indonesia, pp. 541-544. [cited by applicant]
Extended European Search Report for European Application No. 18191099.3, Search completed Dec. 11, 2018, Mailed Jan. 7, 2019, 9 Pgs. [cited by applicant]
Information Technology—MPEG Systems Technologies—Part 7: Common Encryption in ISO Base Media File Format Files (ISO/IEC 23001-7), Apr. 2015, 24 pgs. [cited by applicant]
ISO/IEC 14496-12 Information technology—Coding of audio-visual objects—Part 12: ISO base media file format, Feb. 2004 (“MPEG-4 Part 12 Standard”), 62 pgs. [cited by applicant]
ISO/IEC 14496-12:2008(E) Informational Technology—Coding of Audio-Visual Objects Part 12: ISO Base Media File Format, Oct. 2008, 120 pgs. [cited by applicant]
ISO/IEC FCD 23001-6 MPEG systems technologies Part 6: Dynamic adaptive streaming over HTTP (DASH), Jan. 28, 2011, 86 pgs. [cited by applicant]
Microsoft Corporation, Advanced Systems Format (ASF) Specification, Revision 01.20.03, Dec. 2004, 121 pgs. [cited by applicant]
MPEG-DASH presentation at Streaming Media West 2011, Nov. 2011, 14 pgs. [cited by applicant]
Pomelo, LLC Tech Memo, Analysis of Netflix's Security Framework for ‘Watch Instantly’ Service, Mar.-Apr. 2009, 18 pgs. [cited by applicant]
Fecheyr-Lippens, “A Review of HTTP Live Streaming”, Jan. 2010, 38 pgs. [cited by applicant]
Fukuda et al., “Reduction of Blocking Artifacts by Adaptive DCT Coefficient Estimation in Block-Based Video Coding”, Proceedings 2000 International Conference on Image Processing, Sep. 10-13, 2000, Vancouver, BC, Canada… [cited by applicant]
Huang, U.S. Pat. No. 7,729,426, U.S. Appl. No. 11/230,794, filed Sep. 20, 2005, 143 pgs. [cited by applicant]
Huang et al., “Adaptive MLP post-processing for block-based coded images”, IEEE Proceedings—Vision, Image and Signal Processing, vol. 147, No. 5, Oct. 2000, pp. 463-473. [cited by applicant]
Huang et al., “Architecture Design for Deblocking Filter in H.264/JVT/AVC”, 2003 International Conference on Multimedia and Expo., Jul. 6-9, 2003, Baltimore, MD, 4 pgs. [cited by applicant]
Jain et al., U.S. Appl. No. 61/522,623, filed Aug. 11, 2011, 44 pgs. [cited by applicant]
Jung et al., “Design and Implementation of an Enhanced Personal Video Recorder for DTV”, IEEE Transactions on Consumer Electronics, vol. 47, No. 4, Nov. 2001, 6 pgs. [cited by applicant]
Kalva, Hari “Delivering MPEG-4 Based Audio-Visual Services”, 2001, 113 pgs. [cited by applicant]
Kang et al., “Access Emulation and Buffering Techniques for Steaming of Non-Stream Format Video Files”, IEEE Transactions on Consumer Electronics, vol. 43, No. 3, Aug. 2001, 7 pgs. [cited by applicant]
Kim et al., “A Deblocking Filter with Two Separate Modes in Block-Based Video Coding”, IEEE transactions on circuits and systems for video technology, vol. 9, No. 1, 1999, pp. 156-160. [cited by applicant]
Kim et al., “Tree-Based Group Key Agreement”, Feb. 2004, 37 pgs. [cited by applicant]
Laukens, “Adaptive Streaming—A Brief Tutorial”, EBU Technical Review, 2011, 6 pgs. [cited by applicant]
Legault et al., “Professional Video Under 32-bit Windows Operating Systems”, SMPTE Journal, vol. 105, No. 12, Dec. 1996, 10 pgs. [cited by applicant]
Li et al., “Layered Video Multicast with Retransmission (LVMR): Evaluation of Hierarchical Rate Control”, Proceedings of IEEE INFOCOM'98, the Conference on Computer Communications. Seventeenth Annual Joint Conference of… [cited by applicant]
List et al., “Adaptive deblocking filter”, IEEE transactions on circuits and systems for video technology, vol. 13, No. 7, Jul. 2003, pp. 614-619. [cited by applicant]
Massoudi et al., “Overview on Selective Encryption of Image and Video: Challenges and Perspectives”, EURASIP Journal on Information Security, Nov. 2008, 18 pgs. [cited by applicant]
McCanne et al., “Receiver-driven Layered Multicast”, Conference proceedings on Applications, technologies, architectures, and protocols for computer communications, Aug. 1996, 14 pgs. [cited by applicant]
Meier, “Reduction of Blocking Artifacts in Image and Video Coding”, IEEE Transactions on Circuits and Systems for Video Technology, vol. 9, No. 3, Apr. 1999, pp. 490-500. [cited by applicant]
Nelson, “Smooth Streaming Deployment Guide”, Microsoft Expression Encoder, Aug. 2010, 66 pgs. [cited by applicant]
Newton et al., “Preserving Privacy by De-identifying Facial Images”, Carnegie Mellon University School of Computer Science, Technical Report, CMU-CS-03-119, Mar. 2003, 26 pgs. [cited by applicant]
O'Brien, U.S. Appl. No. 60/399,846, filed Jul. 30, 2002, 27 pgs. [cited by applicant]
O'Rourke, “Improved Image Decompression for Reduced Transform Coding Artifacts”, IEEE Transactions on Circuits and Systems for Video Technology, vol. 5, No. 6, Dec. 1995, pp. 490-499. [cited by applicant]
Park et al., “A postprocessing method for reducing quantization effects in low bit-rate moving picture coding”, IEEE Transactions on Circuits and Systems for Video Technology, vol. 9, No. 1, Feb. 1999, pp. 161-171. [cited by applicant]
Richardson, “H.264 and MPEG-4 Video Compression”, Wiley, 2003, 306 pgs. (presented in 2 parts). [cited by applicant]
Sima et al., “An Efficient Architecture for Adaptive Deblocking Filter of H.264 AVC Video Coding”, IEEE Transactions on Consumer Electronics, vol. 50, No. 1, Feb. 2004, pp. 292-296. [cited by applicant]
Spanos et al., “Performance Study of a Selective Encryption Scheme for the Security of Networked, Real-Time Video”, Proceedings of the Fourth International Conference on Computer Communications and Networks, IC3N'95, Se… [cited by applicant]
Srinivasan et al., “Windows Media Video 9: overview and applications”, Signal Processing: Image Communication, 2004, 25 pgs. [cited by applicant]
Stockhammer, “Dynamic Adaptive Streaming over HTTP—Standards and Design Principles”, Proceedings of the second annual ACM conference on Multimedia, Feb. 2011, pp. 133-145. [cited by applicant]
Timmerer et al., “HTTP Streaming of MPEG Media”, Proceedings of Streaming Day, 2010, 4 pgs. [cited by applicant]
Tiphaigne et al., “A Video Package for Torch”, Jun. 2004, 46 pgs. [cited by applicant]
Trappe et al., “Key Management and Distribution for Secure Multimedia Multicast”, IEEE Transaction on Multimedia, vol. 5, No. 4, Dec. 2003, pp. 544-557. [cited by applicant]
Van Deursen et al., “On Media Delivery Protocols in the Web”, 2010 IEEE International Conference on Multimedia and Expo, Jul. 19-23, 2010, 6 pgs. [cited by applicant]
Ventura, Guillermo Albaida “Streaming of Multimedia Learning Objects”, AG Integrated Communication System, Mar. 2003, 101 pgs. [cited by applicant]
Waggoner, “Compression for Great Digital Video”, 2002, 184 pgs. [cited by applicant]
Watanabem et al., “MPEG-2 decoder enables DTV trick plays”, esearcher System LSI Development Lab, Fujitsu Laboratories Ltd., Kawasaki, Japan, Jun. 2001, 2 pgs. [cited by applicant]
Wiegand, “Joint Video Team (JVT) of ISO/IEC MPEG and ITU-T VCEG”, Jan. 2002, 70 pgs. [cited by applicant]
Willig et al., U.S. Appl. No. 61/409,285, filed Nov. 2, 2010, 43 pgs. [cited by applicant]
Yang et al., “Projection-Based Spatially Adaptive Reconstruction of Block—Transform Compressed Images”, IEEE Transactions on Image Processing, vol. 4, No. 7, Jul. 1995, pp. 896-908. [cited by applicant]
Yang et al., “Regularized Reconstruction to Reduce Blocking Artifacts of Block Discrete Cosine Transform Compressed Images”, IEEE Transactions on Circuits and Systems for Video Technology, vol. 3, No. 6, Dec. 1993, pp. … [cited by applicant]
Yu et al., “Video deblocking with fine-grained scalable complexity for embedded mobile computing”, Proceedings 7th International Conference on Signal Processing, Aug. 31-Sep. 4, 2004, pp. 1173-1178. [cited by applicant]
Zakhor, “Iterative Procedures for Reduction of Blocking Effects in Transform Image Coding”, IEEE Transactions on Circuits and Systems for Video Technology, vol. 2, No. 1, Mar. 1992, pp. 91-95. [cited by applicant]
International Search Report and Written Opinion for International Application PCT/US2014/040308, Report Completed Sep. 10, 2014, dated Mar. 27, 2015, 9 pgs. [cited by applicant]
Fielding et al., “Hypertext Transfer Protocol—HTTP1.1”, Network Working Group, RFC 2616, Jun. 1999, 114 pgs. [cited by applicant]
Schulzrinne, H. et al. , “Real Time Streaming Protocol (RTSP)”, Internet Engineering Task Force, RFC 2326, Apr. 1998, 80 pgs. [cited by applicant]