`
`(12) United States Patent
`Strober
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 8,356,251 B2
`Jan. 15, 2013
`
`(54) PLAY CONTROL OF CONTENT ON A
`DISPLAY DEVICE
`
`(75) Inventor: David Strober, Rye, NY (US)
`(73) Assignee: Touchstream Technologies, Inc.,
`Valhalla, NY (US)
`-
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 4 days.
`(21) Appl. No.: 13/245,001
`
`c
`(*) Notice:
`
`(22) Filed:
`
`Sep. 26, 2011
`
`(65)
`
`Prior Publication Data
`US 2012/O272148A1
`Oct. 25, 2012
`Related U.S. Application Data
`(63) Continuation of application No. 13/157,821, filed on
`Jun. 10, 2011.
`(60) Provisional application No. 61/477,998, filed on Apr.
`21, 2011.
`
`(51)
`51) Int. Cl.
`(2006.01)
`G06F 3/00
`(52) U.S. Cl. ........ 715/740, 715/716. 715/734; 715/738:
`715/751; 715/764; 715/835
`(58) Field of Classification Search .................. 715,716
`7157738, 734, 740, 751, 764, 83 s
`See application file for complete search history.
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`7,058,356 B2
`6, 2006 Slotznick
`7.330,875 B1* 2/2008 Parasnis et al. ............... TO9.204
`7,424,718 B2 * 9/2008 Dutton .......................... T19,318
`7,433,922 B2 * 10/2008 Engstrom ..................... 709/205
`
`7.440,972 B2 * 10/2008 Oetzel ........................... 386.252
`7,453.454 B2 * 1 1/2008 Allen et al. ...
`... 345,418
`7,769,827 B2* 8/2010 Girouard et al.
`TO9,219
`7,774,708 B2* 8/2010 Bell et al. ...........
`715.738
`7.814,144 B2 * 10/2010 Koyama et al. ............... TO9,203
`7,835,505 B2 11/2010 Toyama et al.
`(Continued)
`
`CN
`
`FOREIGN PATENT DOCUMENTS
`1.01534449
`9, 2009
`Continued
`(Continued)
`OTHER PUBLICATIONS
`Ask Search Internet Search, session identifier random.
`(Continued)
`Primary Examiner — Boris Pesin
`Assistant Examiner — John Heffington
`(74) Attorney, Agent, or Firm — Fish & Richardson P.C.
`(57)
`ABSTRACT
`A system for presenting and controlling content on a display
`device includes a network, a server system coupled to the
`network and comprising one or more servers, a display device
`coupled to the network and having a display, and a personal
`puting device operabl
`it afi
`9.
`d
`COmputing deV1ce Operable to transmit a first meSSage acCOrd
`ing to a specified format over the network to the server sys
`tem. The server system stores an association between the
`personal computing device and the display device. The first
`message identifies user-selected content and a media playerto
`play the content. The server system is operable, in response to
`receiving the first message from the personal computing
`device, to provide to the display device a second message
`identifying the user-selected content and the media player to
`play the content. In response to receiving the second message,
`the display device is operable to obtain a first media player
`needed to play the content, to load the media player and to
`present the content on the display.
`
`26 Claims, 9 Drawing Sheets
`
`
`
`
`
`Server System
`
`Switchboard
`
`
`
`
`
`30
`
`Cortent Providers
`
`1
`
`Comcast, Ex. 1101
`
`
`
`US 8,356,251 B2
`Page 2
`
`8,171,507 B2 *
`
`5, 2012 Hironaka et al.
`
`725/12
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`ck
`
`CN
`CN
`CN
`
`1 O157765O
`101778198
`101815073
`
`11, 2009
`T 2010
`8, 2010
`
`2011/O156879 A1* 6, 2011 Matsushita et al. .......... 340/10.1
`U.S. PATENT DOCUMENTS
`ck
`SH-8A. A. 858: E.I."...O. "E.
`7,849,485 B2, 12/2010 Paik et al.
`2011/0228768 A1* 9, 2011 Gelter et all
`370,389
`8,086,679 B2 * 12/2011 Nobori et al. ................. TO9,206
`2011/0231265 A1
`9, 2011 Brown et al. .............. 705/14.73
`2002.0075332 A1* 6, 2002 Geilful
`al
`345,859
`5858. A
`$585 El O. SS 2011/0231565 A1* 9, 2011 Gelter et al. .
`TO9,231
`2002/0129.02 Ai: 9/2002 Landsman et al. .. 709,203
`2011/0231566 A1* 9, 2011 Gelter et al. .
`709,231
`2002/01335 is Ai: 9/2002 Landsman et al. .. 707/513
`2011/02894.19 A1 1 1/2011 Yu et al. ...
`715.738
`2002fO198778 A1* 12/2002 Landsman et al.
`TO5/14
`2011/0296454 A1* 12/2011 Xiong et al.
`.................. 725/30
`2003/0004804 Aik 1/2003 Landsman et al. .. 705/14
`2011/0296465 A1 12/2011 Krishnan et al.
`2003/0005000 A1
`1/2003 Landsman et al. .
`707/513
`2287286 A
`212 Curtis- 715.738
`2003/0018885 A1
`1/2003 Landsman et all
`713/2
`2012/01 10464 A1
`5, 2012 Chen et al. ...
`... 715.738
`2003/0023488 A1
`1/2003 Landsman et al. .
`TO5/14
`2012fO166560 A1
`6/2012 Nobori et al. ................. TO9,206
`2003/0028565 A1
`2/2003 Landsman et al. ............ 707/513
`FOREIGN PATENT DOCUMENTS
`2003/0.142127 A1* 7/2003 Markel ......................... 345.738
`2003/0182663 A1* 9, 2003 Gudorf et al.
`725/110.
`2003.0193520 A1* 10, 2003 Oetzel ......
`345/723
`2004/OOO8972 A1* 1 2004 Haken ......
`... 386/83
`2004/OO88728 A1* 5, 2004 Shimizu ......
`725/89
`2004/0268224 A1* 12/2004 Balkus et al.
`T15,500.1
`2004/02684.51 A1* 12/2004 Robbin et al. ......... 999,999.999
`2005.0034151 A1
`2/2005 Abramson
`2005/0144305 A1* 6/2005 Fegan et al. ................... 700,231
`2006, 0083194 A1
`4/2006 Dhrimajet al.
`2006/0098.624 A1* 5/2006 Morgan et al. ................ 370,352
`2006/0101098 A1* 5/2006 Morgan et al.
`707,204
`3988: A. ck 3.39. o T19,318
`
`OTHER PUBLICATIONS
`Webopedia computer diction
`session cookie.
`pea computer sletonary session cookie.
`Webopedia computer dictionary, web identifier
`Webopedia computer dictionary, user session.
`www.vbulletin.com, Best way to generate Random, Unique ID's.*
`www.vbulletin.com, Best way to generate Random, Unique ID's,
`Internet Archive Wayback Machine, Jan. 16, 2009.*
`
`2006/0263.038 A1 ck
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`.
`
`. 386,52
`
`
`
`ck
`inn-i
`ia-
`a
`webopedia com SSSIO identifier Nov. 19, 2011.
`11, 2006 Gilley .
`www-vbulletin.com best-way-to-generate-random-unique-ses
`2006/0265657 A1* 1 1/2006 Gilley ........................... 715,730
`Suri. 19, 20 h1. *
`d
`2007/005.0054 A1* 3/2007 Sambandam Guruparan
`www-vbulletin.com best-way-to-generate-random-unique-ses
`TOOf65
`et al. ........
`sion-ids-wayback-archive Nov. 19, 2011.*
`T25/34
`2007/0055986 A1* 3/2007 Gilley et al.
`ask—search—q mobile-device--server-display-device&qs.
`707/101
`2007, 0083540 A1* 4, 2007 Gundla et al. .
`Ask Search—q=session+identifier+random&csrc=0&o=0&I—
`709,231
`2007/0094408 A1* 4, 2007 Gundla et al. .
`Nov. 19, 2011.
`2007/01 12785 A1* 5/2007 Murphy et al. ................. 707/10
`.
`. . .
`2007/0202923 A1
`8/2007 Jung et al.
`webopedia-com—session cookie Nov. 19, 2011.*
`2007/0288715 A1 12, 2007 Boswell et all
`webopedia-com—user session Nov. 19, 2011.*
`2008, 0008439 A1
`1/2008 Liu et al. ......................... 386/46
`Ask Search Internet Search, Session identifier random, printed on
`2008/0028037 A1* 1/2008 Moyer et al.
`709/217
`Nov. 19, 2011.
`2008.0034394 A1
`2/2008 Jacobs et al. .................... 725/98
`Webopedia computer dictionary, Session cookie, printed on Nov. 19.
`2008.OO77526 A1
`3/2008 Arumugam
`2011.
`2008/O126943 A1* 5/2008 Parasnis et al. ............... 715/730
`2008/O140849 A1* 6/2008 Collazo ......................... 709,229
`wipedia computer dictionary, web identifier, printed on Nov. 19,
`2008. O155600 A1
`6/2008 Klappert et al.
`.
`2008/0187279 A1* 8/2008 Gilley et al. .................... 386,52
`Webopedia computer dictionuy, user Session, printed on Nov. 19.
`2008. O189617 A1* 8, 2008 Cowell et al. ...
`715.738
`2011.
`2008/0267369 A1* 10, 2008 Parlamas et al.
`379,93.01
`www.vbulletin.com, Best way to generate Random, Unique ID's,
`2008/0270881 A1* 10/2008 Meyer et al. .................. 71.5/2O2
`printed on Nov. 19, 2011.
`2008/0301737 A1* 12/2008 Hjelmeland Almas et al. 725/61
`2009.0049373 A1
`2/2009 Sharma et al. ................ T15,234
`2009,009.4331 A1* 4, 2009 Nobori et al. ..
`709/205 play st the USPTO in U.S. Appl. No.
`2009/0164641 A1* 6/2009 Rogers et al. ................. 709,227
`sy
`2009/0228919 A1
`9, 2009 Zott et al.
`U.S. Appl. No. 13.245,091 filed Sep 26, 2011,
`s
`2009/0254827 A1* 10, 2009 Gonze et al. .................. 715,716
`Hachman, M., "Snapstick's Media Streaming App/Box: Hands on,
`2009,0259944 A1* 10, 2009
`www.pcmag.com/article2/0,2817.2375455,00.asp, 2 pages, (Jan. 8,
`715.738
`2009/0282470 A1* 1 1/2009 Yang et al. ...................... T26/12
`2011).
`2010, OO27974 A1 ck
`2/2010 Ansari
`Dolcourt, J., CES: Snapstick takes on Apple TV. Google TV. http://
`2010/0094728 A1* 4/2010 Denning et al. ................ 70527
`news.cnet.com/8301-17938 105-20025100-1.html, 3 pages, (Dec.
`2010.0137028 A1
`6, 2010 Farris et al.
`9, 2010)
`ck
`. 7375
`.
`.
`.
`.
`.
`.
`.
`.
`.
`.
`38885 A. ck $3.8 FAgon etal .
`Shaivitz, M., “The Web to Your TV. With a Flick of a Wrist'? Slapstick
`2010, 019886.0 A1* 8, 2010 Burnett et al. ................ 707/769
`Says Yes, http://techcocktail.com/the-web-to-our-tv with-a-flick
`2010/0205628 A1
`8, 2010 Davis et al.
`of-a-wrist-slapstick-says-yes-2010-12, 2 pages, (Dec. 10, 2010).
`2010/0265939 A1 * 10, 2010 Parlamas et al. .............. 370,352
`Snapstick Home, "Snapstick.” http://w W W. SnapStick.com/, 2
`2010/0281042 A1* 11/2010 Windes et al. .
`707,756
`pages, printed on Mar. 2, 2011.
`2010/0283586 A1* 11/2010 Ikeda et al. ....
`340/1042
`Paul, I Hands on YouTube Leanback, PCWORLD. http://www.
`2010/03 13135 A1 ck
`12, 2010 Johnson et al
`715.738
`pcworld.com/article/200769/hands on youtube leanback.html, 3
`2010/0325552 A1* 12/2010 Slooet al. ..................... 715/738
`pages, (Jul 9, 2010).
`2011/0007901 A1
`1/2011 Ikeda et al. ................... 380,270
`Using AirPlay, Article HT4437, http://support.apple.com/kb/
`2011/00 14972 A1
`1/2011 Herrmann et al. .............. 463,25
`HT4437, 3 pages, (Apr. 18, 2011).
`2011/003.0020 A1
`2/2011 Halttunen
`Cheng, J., “Stream AirPlay video to regular TV'? Apple might make
`2011/0035692 A1
`2/2011 Sandone et al. .............. 715,769
`it happen.” http://arstechnica.com/apple/news/2011/03/stream-air
`2011 OO60998 A1* 3, 2011 Schwartz et al. ..
`715.738
`play-video-to-a-regular-tv-apple-migh. . . , 1 page, printed on Jun. 7.
`2011/0090898 A1* 4, 2011 Patel et al. .....
`370,352
`2011.
`2011/0107227 A1* 5/2011 Rempell et al.
`... 715.738
`“Using the Play To Feature to stream media.” http://windows.
`2011/O125594 A1* 5, 2011 Brown et al. ......
`705/14.73
`microsoft.com/en-US/windows7/using-the-play-to-feature-to
`2011/O138354 A1* 6, 2011 Hertenstein et al. .......... 717,115
`stream-media, 3 pages, printed on Jun. 7, 2011.
`
`2
`
`
`
`US 8,356,251 B2
`Page 3
`
`“YouTube—Leanback.” http://www.youtube.com/t/leanback,
`page, printed on Jun. 7, 2011.
`“Yahoo!7 TV Guide for iPhone, iPod touch and iPad on the iTunes
`App Store.”
`http://itunes.apple.com/au/app/yahoo-7-tv-guide/
`id4247 1992?mt=8, 2 pages, printed on Jun. 7, 2011.
`Hu, C., et al., “MobileMedia Content Sharing in UPnP-Based Home
`Network Environment.” Journal of Information Science and Engi
`neering 24, 1753-1769. (2008).
`
`1
`
`Fallahkhair, S., et al., “Dual Device User interface Design for Ubiq
`uitous Language Learning: Mobile Phone and Interactive Television
`(iTV).” Proceedings of the 2005 IEEE Int’l Workshop on Wireless an
`Mobile Technologies in Education, 8 pages, 2005.
`
`* cited by examiner
`
`3
`
`
`
`U.S. Patent
`
`Jan. 15, 2013
`
`Sheet 1 of 9
`
`US 8,356.251 B2
`
`
`
`
`
`Server System
`
`Switchboard
`
`23
`
`21
`
`22
`
`30
`
`Content Providers
`
`FIG. 1
`
`4
`
`
`
`U.S. Patent
`
`Jan, 15, 2013
`
`Sheet 2 of 9
`
`US 8,356,251 B2
`
`
`
`SIBAIBSPue-NOeG
`
`
`
`uoneoyuenyobueL
`
`plBoquoymgy
`
`
`
`0}peppyabessopy
`
`JOlldBIECWX
`
`
`
`peaieoeyabessayy
`
`
`
`SUOUdHRWSWO
`
`Jaydepy[dyIESIOAIU
`
`
`S99845adlAegAeldsiq
`
`
`
`
`
`sofessey|MONJO}eseqeieg
`
`
`
`
`
`seynoexgsa1nagAegidsiq
`
`abessayyMONOapiAJOLOHe|USselY
`
`
`
`
`
`eseqejeqauoyyLewis
`
`a0}paido>
`afessay
`
`pedjeceyabesseyyMON
`saiaeqAejdsiqAq
`
`vOl
`
`5
`
`
`
`U.S. Patent
`
`Jan. 15, 2013
`
`Sheet 3 of 9
`
`US 8,356.251 B2
`
`Transmission Code
`UserIDTargetIDMediaPlayerIDICommand Data
`
`
`
`
`
`
`
`Single Connection Look-up Table
`Display Device
`Smitone
`2
`2
`1
`1
`3
`4
`
`c
`
`
`
`
`
`26
`
`
`
`
`
`
`
`
`
`
`
`Ted.com
`
`Ted.com
`
`
`
`F.G. 5
`
`FG. 3
`
`
`
`
`
`6
`
`
`
`U.S. Patent
`
`Jan. 15, 2013
`
`Sheet 4 of 9
`
`US 8,356,251 B2
`
`Yes
`
`the Media Player that
`is Needed to Play the Video
`Already Loaded in the
`pisplay, Device
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ls
`1 a Copy of the
`Video Already Loaded in
`the Display Device
`
`Obtain a Copy
`of the Video
`
`
`
`
`
`
`
`
`
`
`
`
`
`Request and Obtain a
`Copy of the Appropriate
`Media Player and a Copy
`of the Video File from
`Content Provider
`
`Load the Media Player
`
`Play the Video
`
`FIG. 6
`
`7
`
`
`
`U.S. Patent
`
`Jan. 15, 2013
`
`Sheet 5 of 9
`
`US 8,356.251 B2
`
`22
`
`
`
`
`
`Display Device
`
`Splash Page
`48
`
`-- Sync-Code
`
`
`
`
`
`
`
`Sync-code Look-up Table
`
`PAddress
`169.343.231.234
`
`erg988dhuj
`FIG. 7B
`
`435-05-342
`
`Display Device
`
`
`
`
`
`
`
`
`
`
`
`Display Device
`
`a
`
`a
`FIG. 8
`
`a
`
`A
`
`Fle.9
`
`8
`
`
`
`U.S. Patent
`
`Jan. 15, 2013
`
`Sheet 6 of 9
`
`US 8,356.251 B2
`
`Display Device
`
`
`
`
`
`
`
`Moderator
`
`Control of
`Display
`FIG. 10
`
`
`
`Display Device
`
`N /
`
`SmartPhone
`20
`
`FIG. 11
`
`9
`
`
`
`U.S. Patent
`
`Jan. 15, 2013
`
`Sheet 7 Of 9
`
`US 8,356,251 B2
`
`Display Device
`
`
`
`Display Device
`
`
`
`Display Device
`
`
`
`
`
`22
`
`SmartPhone SmartPhone SmartPhone
`
`
`
`
`
`Moderator
`
`Control of
`Display
`
`FIG. 12
`
`Display Device
`
`
`
`
`
`Display Device
`
`
`
`
`
`SmartPhone
`
`
`
`
`
`Third Party
`
`Playlist and Video Links
`FIG. 13
`
`Snart Phone
`
`F a
`
`10
`
`
`
`U.S. Patent
`
`
`
`
`
`U.S. Patent UPbLSlsav‘SlsVPLSls
`
`
`
`
`
`HOUWSSLISITAYTd|STENNYHOINGMPAVASIOLEAVAILZAMAstO(iAVTSIOHOW]SHAYTISTANNYHOINGAI
`
`
`
`¥30v3HIss.)—TSNVdTOHLNODwaqvaH
`
`O9woorBulaii
`O=dojde}spuayy
`©doydeyAw
`
`
`JO.MO}aq8000-DUAS84)JONG
`Jn0dJoau0woyasooyp
`
`SADEParsiSOIAED
`
`Jan. 15, 2013
`Jan, 15, 2013
`
`Sheet 8 of 9
`Sheet 8 of 9
`
`US 8,356.251 B2
`US 8,356,251 B2
`
`JOVdHSVdS
`
`11
`
`
`
`U.S. Patent
`
`Jan, 15, 2013
`
`Sheet 9 of 9
`
`US 8,356,251 B2
`
`
`
`gjqe)dn-yoo7
`
`GI‘SIs
`
`dnosy=,,|aa|A|ebYOyWesapoyw
`aonw|xX|2euoydwewsSsoIAeg
`
`saiaeqAeldsigjo|O4uU0D=,
`-4aS/)Aeidsiq
`uo}}O9UUODAnos)
`
`TOULNOO
`
`
`P{SaN3|¢LS3NO213ND||}L516||3A
`
`SAVIGSI)=TAN¥d
`d¥bOldOv‘Ola
`
`ENOILEO
`
`12
`
`12
`
`
`
`
`1.
`PLAY CONTROL OF CONTENT ON A
`DISPLAY DEVICE
`
`US 8,356,251 B2
`
`CROSS-REFERENCE TO RELATED
`APPLICATION(S)
`This application is a continuation of U.S. application Ser.
`No. 13/157,821, filed on Jun. 10, 2011, which in turn claims
`the benefit of priority of U.S. Provisional Patent Application
`No. 61/477,998, filed on Apr. 21, 2011.
`
`BACKGROUND
`
`This disclosure relates to play control of content on a
`display device. Such display devices include, for example,
`television displays used by consumers in their home for view
`ing videos and other media that are either provided from the
`Web or previously stored. In particular, the disclosure relates
`to the creation, storage, manipulation and access of media
`playlists used in conjunction with display devices and control
`of the display devices.
`Web media often is played on computers rather than tele
`vision displays. Although it is knownto connecta computer to
`a television set in order to watch Web media, it is difficult to
`control Such a system within the typical scenario for televi
`sion watching where the viewer is positioned some distance
`from the television. Furthermore, although a wireless device
`can enable the user to control the television from a distance, it
`can be difficult to view a web browser display on the televi
`sion set and may interfere with normal television program
`viewing by other persons.
`Given the desire to watch various World WideWeb media
`on a family's primary television set, and to control this opera
`tion from the comfort of one’s couch, there is a need to
`operate a television set or other display remotely from a
`personal computing device. Such as a mobile phone. It also is
`desirable to allow a user to perform a general Web search to
`locate and capture Web media, and to control a television or
`other display remotely using the personal computing device.
`
`10
`
`15
`
`25
`
`30
`
`35
`
`40
`
`SUMMARY
`
`Various aspects of the invention are set forth in the claims.
`For example, according to one aspect, a system for present
`ing and controlling content on a display device includes a
`45
`network, a server system coupled to the network and com
`prising one or more servers, a display device coupled to the
`network and having a display, and a personal computing
`device operable to transmit a first message according to a
`specified format over the network to the server system. The
`server system stores an association between the personal
`computing device and the display device. The first message
`identifies user-selected content and a media player to play the
`content. The server system is operable, in response to receiv
`ing the first message from the personal computing device, to
`provide to the display device a second message identifying
`the user-selected content and the media player to play the
`content. In response to receiving the second message, the
`display device is operable to obtain a first media player
`needed to play the content, to load the media player and to
`present the content on the display.
`In some implementations, the display device is operable, in
`response to receiving the second message, to obtain the first
`media player from the content provider only if the first media
`player is not already loaded in the display device.
`In some implementations, the personal computing device
`is operable to transmit a message according to a specified
`
`50
`
`55
`
`60
`
`65
`
`2
`format over the network to the server system. The message
`can include a command for controlling playing of the content
`on the display device. The server system is operable, in
`response to receiving the message, to convert the command
`into a corresponding command recognizable by the media
`player if the command received from the personal computing
`device is not recognizable by the media player. The server
`system is operable to provide to the display device a message
`that includes the corresponding command, and the display
`device is operable, in response to receiving the message from
`the server System, to execute the command.
`In some implementations, the personal computing device
`is, for example, a mobile phone, and the display device is a
`television set. Other personal computing devices or display
`devices can be used in other implementations. The network
`can include, for example, the Internet.
`In some implementations, the server system stores a look
`up table that includes a synchronization code uniquely asso
`ciated with the display device. A message from the personal
`computing device can include the synchronization code, and
`in response to receiving the message from personal comput
`ing device, the server system can use the synchronization
`code and the look-up table to identify the display device on
`which the content is to be played. The synchronization code
`can be different from an IP address associated with the dis
`play device and/or a media access control address associated
`with the display device.
`In various implementations, the system can facilitate
`allowing a personal computing device to be used to select
`different content to be played on a remote display even if
`different media players are required to present the different
`content. The system also can allow the user to control how the
`content is displayed on the display device using the personal
`computing device. For example, user-initiated play com
`mands can be passed from the user's personal computing
`device, through the server system, to the display device.
`Other aspects, features and advantages will be apparent
`from the following detailed description, the accompanying
`drawings, and the claims.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a block diagram illustrating an example of a
`system according to the invention.
`FIG. 2 illustrates various details of the flow of information
`and signals according to some implementations.
`FIG.3 illustrates an example of a transmission code incor
`porated into a message from a personal computing device.
`FIG. 4 illustrates an example of a look-up table that forms
`part of a server system.
`FIG. 5 illustrates an example of entries in a universal API
`adapter.
`FIG. 6 is a flow chart showing steps for display device to
`load a video player and video.
`FIG. 7A illustrates an example of a display device includ
`ing a synchronization code.
`FIG. 7B illustrates an example of a synchronization code
`look-up table.
`FIGS. 8-13 illustrate examples of various scenarios in
`which the invention can be used.
`FIGS. 14A through 14E illustrate examples of display
`screens that may appear on a user's personal computing
`device in accordance with the invention.
`FIG. 15 illustrates further information that can be stored in
`the look-up table in the server system.
`
`DETAILED DESCRIPTION
`
`As shown in FIG. 1, a system 10 facilitates synchronizing
`a connection between two or more devices 20, 22 connected
`
`13
`
`
`
`US 8,356,251 B2
`
`3
`to the Internet 21 or other computer network. The connection
`is designed to be made by a first device (e.g., a personal
`computing device) 20 that acts as a controller and a second
`device (e.g., a television set 22 with a display 23) that acts as
`a receiver to play content selected by a user of the first device 5
`and to respond to commands that originate at the personal
`computing device. The personal computing device 20 is oper
`able to display an application or web site that contains infor
`mation and links to content providers 30 on the Internet 21.
`The television set 22 is operable to link back to a server 10
`system 24 from which the television set receives commands.
`When a user makes a selection using the personal computing
`device 20 for particular content to be displayed on the televi
`sion display 23, a signal is sent through the Internet (or other
`network) 21 to the server system 24. A corresponding com- 15
`mand signal then is passed along to the connected television
`set 22, which acts on a transmission code contained within the
`signal and performs specified commands. For example, in
`Some scenarios, the commandinstructs the television set 22 to
`access a content provider 30 through the Internet 21, load a 20
`specific media player, load the media player-specific content
`(e.g., a video) and play the content on the television display
`23. The user can use the personal computing device 20 to
`control how the content is played on the television display 23.
`The user may subsequently visit the same or another Web site 25
`using the personal computing device 20 to select different
`content (e.g., a second video) to be played on the television
`display 23. In that case, another signal would be sent through
`the server system 24 to the television set 22. A transmission
`code associated with this command signal instructs the tele- 30
`vision set 22 to load a new media player (if needed) over the
`Internet and to load the specified video file to be played on the
`display 23. Thus, the system 10 allows a personal computing
`device 20 to be used to select different content to be played on
`a remote display 23 even if different media players are 35
`required for the different content. The user also can control
`how the content is displayed (e.g., play, pause, stop, rewind,
`fast forward, etc.) on the display 23 using the personal com
`puting device 20. The user-initiated play commands are
`passed from the user's personal computing device 20, 40
`through the server system 24, to the television set 22.
`Although the following detailed discussion describes vid
`eos as an example of the type of content to be played on the
`display 23, the system 10 can be used for other types of
`content as well. Thus, depending on the implementation, the 45
`content may include one or more of the following: video,
`audio, interactive video game, streaming media, multimedia,
`images, slides (e.g., a PowerPoint presentation) or other types
`of dynamic content. Furthermore, in the following discus
`Sion, it is assumed that the personal computing device 20 is a 50
`mobile phone that includes a display, an internal micropro
`cessor or other processing circuitry, a keypad, keyboard,
`touchscreen, mouse, trackball, or other device to receive user
`selections and other input, and a transceiver to establish com
`munications to the Internet 21 or other communications net- 55
`works. More generally, however, the personal computing
`device 20 can be any type of handheld or other Internet
`enabled personal computing device, including personal com
`puters, e-books, kiosks, tablets, Smartphones, media players,
`and motion and touch sensory interfaces. In some cases, input 60
`from the user can be received in forms other than tactile input
`(e.g., acoustic or speech).
`FIG. 2 illustrates further details of the flow of information
`and signals according to some implementations. The personal
`computing device (e.g., mobile phone) 20 is operable to dis- 65
`play an application or web site that contains information and
`links to content providers 30 on the Internet 21. The user
`
`4
`operates the mobile phone 20 so as to start the application or
`access the web site (block 100). In some implementations, a
`logo appears on the mobile phone's display. By selecting the
`logo, the user causes a menu to expand and present various
`options. The options can include, for example: (i) add new
`content to a playlist, (ii) play a listed item on a secondary
`device, (iii) play a listed item on the mobile phone 20. If the
`user selects to add new content to the playlist, the user is
`presented with a screen that allows him to enter user-defined
`search parameters or to select predefined search parameters to
`request video data. The search parameters are sent from the
`mobile phone 20 as part of a request for video data that satisfy
`the search parameters (block 102). The request is transmitted
`via the Internet 21 and through the server system 24 to the
`appropriate content provider web site. In response, the con
`tent provider 30 provides metadata (e.g., titles, links to the
`videos) for one or more video files that satisfy the search
`parameters (block 104). The metadata can be provided to the
`mobile phone 20, for example, in the form of an XML data
`file. Upon receiving the data file, the mobile phone 20 dis
`plays a list of one or more videos based on the information
`received from the content provider 30 (block 106).
`If desired, the user can take one of several actions, includ
`ing selecting one of the videos from the displayed list to be
`played on the television display 23 or initiating a command
`with respect to a video that already has been loaded to the
`television set 22 (block 108). The mobile phone 20 then
`formats and transmits a message to the server system 24
`(block 110). The message from the mobile phone 20 contains
`a transmission code that includes data regarding the user
`information (e.g., user identification or account number), the
`secondary display it wants to connect to (e.g., television set 22
`with display 23), the location and name of the media player
`for the selected video, the command (e.g., play, pause,
`rewind, etc.), and the video file to be acted upon. An example
`of the format of a transmission code from the mobile phone 20
`to the server system 24 is illustrated in FIG. 3. Different
`formats and/or different information may be appropriate for
`other implementations.
`The message from the mobile phone 20 is transmitted over
`the Internet 21 and is received by the server system 24 (block
`112). Based on information in the message from the mobile
`phone 20, the server system 24 verifies that the user has an
`account (block 114), and the contents of the message, as well
`as the date and time of receipt of the message, are added to a
`personal computing device database 32 (block 116) which
`forms part of a Switchboard 28. In general, all messages from
`a particular user's personal computing device 20 are stored in
`the database32 corresponding to an account for the particular
`user. Thus, the database 32 stores a record of all messages
`received from a user's personal computing device 20, as well
`as the user's identification, an indication of the target device
`22, an identification of the media player that is required for the
`selected video, and an identification of the selected video.
`The switchboard 28 also includes a look-up table 34 that
`stores a correspondence between a particular personal com
`puting device (such as mobile phone 20) and target devices
`(e.g., the television set 22) to which the user command is
`directed. An example of the look-up table 28 is illustrated in
`FIG. 4. In this example, it is assumed that, at most, a single
`connection is established at any given time between a particu
`lar mobile phone and a display device. However, as explained
`below, other scenarios are also possible to establish group
`connections (e.g., multiple mobile phones connected to the
`same display device). The server system 24 performs a target
`verification (block 118), which includes checking whether a
`connection to a particular display device already is estab
`
`14
`
`
`
`5
`lished for the mobile phone 20 and, if so, checking the iden
`tification of the display device. During the target verification,
`if the look-up table indicates that there is no connection
`established between the mobile phone 20 and a particular
`display device, then the server system 24 sends a message to
`the mobile phone 20 to prompt the user to identify the device
`on which the video is to be displayed.
`A user can identify the device on which the video is to be
`displayed in one of several ways, depending on the imple
`mentation. In some implementations, the user can select the
`display device from a list of devices displayed on the mobile
`phone 20. The list can include a field populated with names or
`identifications of display devices that previously have been
`initialized for connection. Alternatively, the user can select
`the display device by entering a synchronization code
`uniquely associated with the particular display device. As
`illustrated in FIG. 7A, the synchronization code 48 can be
`displayed, for example, on a splash page of the display device
`as text on the screen or as an image Such as a QR code and can
`be entered into the mobile phone 20, for example, manually
`by the user or by scanning the code into the mobile phone. The
`code can be scanned, for example, using optical scanning or
`RFID techniques. Preferably, the synchronization code is
`different from the IP address associated with the device 22.
`The IP address also can be different from the media access
`control (MAC) address associated with the device 22. For
`example, in some implementations, the synchronization code
`is generated randomly and assigned to the display device 22
`each time it connects to the server system 24. Thus, a particu
`lar display device 22 may have an IP address, a MAC address,
`a web or browser cookie, and a synchronization code (“sync
`code') assigned to it at any given time. This information can
`be stored, for example, in a look-up table in the server system
`24. An example of entries in Such a look-up table are illus
`trated in FIG. 7B.
`Once the synchronization code is entered into, or captured
`by, the mobile phone 20, it is sent from the mobile phone 20
`to the server system 24, which stores the information in the
`look-up table 36 so as to establish a connection between the
`mobile phone 20 and the display device 22 through the server
`system 24.
`Once a connection is established between the mobile
`phone 20 and the display device 22, signals sent from the
`mobile device 20 to its associated database32 are copied to a
`database 34 associated with the target device (e.g., television
`set 24) based on the correspondence between the mobile
`device and the target device listed in the look-up table 36
`(block 122). Thus, the database 32 entries associated with a
`particular display device (e.g., television set 24) provide a
`record of the messages received for that display device, as
`well as an indication of the identification of the device that
`sent each message, an indication of the media player required
`to play the video, and an indication of the selected video.
`In the illustrated implementation, the command in the
`transmission code (see FIG. 3) contains a JavaScript refe