`
`
`Elabbady et al.
`
`
`
`
`
`
`(10) Patent No.:
`
`
`(45) Date of Patent:
`
`
`
`
`
`US 7,483,958 B1
`
`
`
`Jan. 27, 2009
`
`US007483958B1
`
`
`
`5/2002 Levy ........................ .. 707/200
`2002/0052885 A1*
`
`
`
`
`
`
`8/2002 Lennon etal.
`2002/0107973 A1*
`709/231
`
`
`
`
`
`
`2002/0147771 A1* 10/2002 Traversatetal.
`.. 709/203
`
`
`
`
`
`2003/0005135 Al*
`l/2003 Inoueetal.
`709/229
`
`
`
`
`
`
`.. 709/219
`
`
`
`
`
`
`
`
`
`
`‘
`707/9
`Inventors: Tarek Z. Elabbady, Redmond, WA Q fge ““““““"
`(US)9 Sh‘"“‘°“ J‘ Chan’ Bellevue“ WA
`2006/0031551 A1*
`2/2006 Ag.e'eL;;'e}';ii"f..........fff .709/231
`
`
`
`
`
`
`
`
`
`
`
`(US); James M. Alkove, Woodinville,
`
`
`
`
`WA (US); Sandeep S. Sahasrabudhe,
`
`
`
`
`Redmond’ WA (US)
`
`
`
`
`
`
`(73) Assignee: Microsoft Corporation, Redmond, WA
`
`(US)
`
`
`
`..
`
`
`
`
`
`.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`* cited by examiner
`
`
`
`Primary Examiner—Saleh Najjar
`
`
`
`
`
`
`Assistant Exammer Hamza
`a es,
`orne ,
`en , or 1rm— ee
`
`
`
`
`y Ag 2
`L & H y
`(74) All
`F
`
`
`PLLC
`
`
`
`(54) METHODSANDAPPARATUSES FOR
`
`
`
`
`
`SHARING MEDIA CONTENT, LIBRARIES
`
`
`
`AND PLAYLISTS
`
`
`
`
`
`
`(75)
`
`
`
`(57)
`
`
`
`ABSTRACT
`
`
`
`
`
`
`
`
`
`Methods and systems suitable for sharing media content are
`
`
`
`
`
`
`
`
`provided. One system includes at least one media holder, at
`least one media cataloger, at least one user control point, at
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`least one media player, and at least one network operatively
`
`
`
`
`
`
`
`connecting them. The media holder is configured to selec-
`tively output shared media metadata, media content and at
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`least one corresponding media playing license over the net-
`work. The media cataloger is configured to receive the meta-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`data identifying the shared media content that is available
`
`
`
`
`
`
`
`from the media holder(s). The media cataloger is configured
`to output at least one media catalog over the network. The
`
`
`
`
`
`
`
`
`
`
`media catalog identifies the shared media content that is avail-
`
`
`
`
`
`
`
`
`
`able from the media holder(s). The user control point is con-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`figured to reeerve the media eata10g(S) and request the Shared
`media content as selected from the media catalog,
`for
`
`
`
`
`
`
`
`
`
`exalnple,
`a user. The user eontrgl point configures the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`media player to receive the media playing license and the
`media content over the network. The media player cannot
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`play protected media content without having a proper license.
`The license may be withheld if certain authentication criteria
`
`
`
`
`
`
`
`are not met by the playing device. In certain implementations,
`
`
`
`
`
`
`
`the network includes a Universal Plug-and-Play network that
`
`
`
`
`
`
`
`allows the various devices to quickly integrate with one
`
`
`
`
`
`
`
`
`
`-
`-
`-
`-
`
`
`
`
`
`
`
`
`another without user intervention. The network also provides
`
`
`
`
`
`
`
`
`
`3‘ lebusl e“"“°“mem=.S“°h than egv medl?‘ Cement Sllanng
`
`
`
`
`
`
`
`
`can easily be accomplished even ifthe media cataloger is not
`aVai1ab1e~
`
`
`22 Claims, 5 Drawing sheets
`
`
`
`
`
`
`( * ) Notice:
`
`
`
`
`Subject to any disclaimer, the term of this
`
`
`
`
`
`
`patent is extended or adjusted under 35
`
`
`
`
`USC. 154(1)) by 702 days.
`
`
`
`
`
`
`
`
`
`
`(21) Appl NO; 10/108474
`
`
`
`Filed:
`Man 26’ 2002
`(22)
`
`
`
`
`(60)
`
`
`
`
`Related U_s_ Application Data
`.
`t
`.
`t
`
`
`
`
`
`
`
`
`
`Pl0V1510l1al applleallen N0~ 60/278304: filed on Map
`
`
`26: 200l~
`
`
`
`(5 1)
`
`
`Int‘ Cl‘
`
`
`(200601)
`G06F 15/16
`
`
`
`
`
`
`
`
`
`(52) U.S. Cl.
`..................... .. 709/217; 709/218; 709/219;
`709/23l
`
`
`Of Classification Search ............... ..
`
`
`
`
`
`
`
`
`
`
`
`709/200, 203, 217'219, 229, 230, 238; 705/50,
`705/51: 59
`
`
`
`
`
`
`
`
`See applleallen file for eemplele Seareh l1l5l01'Y~
`.
`
`References Cited
`
`
`U.S. PATENT DOCUMENTS
`
`
`
`6,349,340 B1 *
`2/2002 Dyer et al.
`................ .. 709/231
`
`
`5/2005 Frazier et at
`6,901,428 B1 *
`709/203
`
`
`
`
`
`
`
`1/2006 Padole et al.
`...... ..
`6,993,664 B2 *
`705/59
`
`
`
`
`
`
`6/2006 Mecartney et at
`t
`7,065,527 B2 =1<
`N 707/10
`
`7/2006 Hillegassetal.
`7,076,468 132*
`705/56
`
`
`
`
`
`
`9/2006 Feldman etal.
`7,110,982 B2 *
`............. .. 705/51
`
`
`
`
`
`
`7,136,866 B2 * 11/2006 Springer et al.
`........... .. 707/102
`
`
`
`
`
`
`
`
`
`
`(56)
`
`
`
`
`
`2515
`
`
`
`
`r/
`
`MEDIA CATALOG
`SERVICE """ “*
`
`
`
`
`
`MEDIA LIBRARY
`
`SERVICE
`
`E
`
`
`
`
`
`
`
`
`I
`
`
`
`
`NTERFACE
`
`
`
`
`
`
`
`
`
`USER
`cam-Ro._
`
`
`POINT (UCP)
`
`flfi
`
`MEDIA
`
`
`
`
`
`
`
`D§33Y':RRl
`HTTP CLIENT
`
`
`
`
`
`
`
`
`
`LICENSE
`NEIWORK
`
`GENERATOR
`
`
`
`
` LICENSE
`
`3.06
`CLIENT
`STORE 0“ 3-12
`
`
`
`
`
`
`
`
`
`
`
`EM
`.,.....m:::
`3.0;
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ON
`
`Netflix, Inc. Exhibit 1004
`
`
`
`
`Netflix, Inc. Exhibit 1004
`
`
`
`U.S. Patent
`
`Jan. 27, 2009
`
`Sheet 1 of5
`
`US 7,483,958 B1
`
`
`wt.HSac.Em:wmom.:mE_m=um_>_EmaN_A_,H_w:m__
`
`momt9:_WEmaoi.050
`
`
`
` «SUEmaEm.mo.n_S:
`
`mgmm_:vo_>_
`
`mt
`
`.3930
`
`_Em_._o__.wn_
`
`oomtmE_
`
`.m.hm_u<
`
`N2
`
`$2
`
`E5m:_mmmoo.n_
`
`:o_Eo__Qa<
`
`mEEmo._m
`
`Em..m>w95980
`
`
`mm?,,,,,,-.J
`
`Nw_\
`
`m:o=mo__qQ<
`
`
`
`mm—w..oEwmEmon>mv_
`
`.§/N3?oSJmm_.:/7
`
`
`Emawo_:_oo_>_wEEm9n_E$w>w
`
`
`
`
`
`Netflix, Inc. Exhibit 1004
`
`Netflix, Inc. Exhibit 1004
`
`
`
`
`
`
`
`
`
`
`
`
`
`U.S. Patent
`
`
`
`
`Jan. 27, 2009
`
`
`Sheet 2 of5
`
`
`
`
`
`US 7,483,958 B1
`
` C O C
`
`
`Device
`
`06d
`
`
`
`391
`
`Device 206a
`
`MEDIA LS
`
`207
`
`Device 206b
`
`
`
`
`
`
`
`
`
`00
`
`
`
`MEDIA CS
`
`
`
`2.0.3;
`
`INEEEEET ---------- -- --- Device 2 6c
`
`
`
`
`
`— — — — — — — ——
`
`II 1 I I I
`
`=
`:‘
`:
`: De"i°e & i
`SERVER - 1
`L___I ____ __,'
`_g_1_p_ E }
`i
`UCP
`I:
`; _____ -..
`5}
`MEDIA
`.:
`PLAYER
`'
`I
`324
`i
`-- ————
`
`:
`
`if
`
`I.
`
`Netflix, Inc. Exhibit 1004
`
`Netflix, Inc. Exhibit 1004
`
`
`
`
`U.S. Patent
`
`
`
`
`
`Jan. 27, 2009
`
`
`
`
`Sheet 3 of5
`
`
`
`
`
`US 7,483,958 B1
`
`|\) C)
`
`Device 206d
`
`
`MEDIA CS
`
`Elf:
`
`MEDIA LS
`
`_9l
`
`
`Device 206e
`
`
`
`
`
`
`02'
`
`
`DEVICE
`
`MEDIA CS
`
`
`
`
`
`Device 206:‘
`
`204/
`
`O
`
`
`INTERNET
`
`Zfl
`
`SERVER .,
`“"'
`
`
`
` Device 206g
`
`
`
`MEDIA LS
`
`2.01
`
`I
`E
`
`D '
`
`I
`3 o '
`e"'°e —— I
`.~=e.«—II
`I'
`5
`}'
`I
`
`Netflix, Inc. Exhibit 1004
`
`Netflix, Inc. Exhibit 1004
`
`
`
`
`
`U.S. Patent
`
`
`
`
`Jan. 27, 2009
`
`
`Sheet 4 of5
`
`
`
`
`
`US 7,483,958 B1
`
`Emooomo
`
`
`oo._<»<o<_nm__>_
`
`
`4.IIIIIIIt
`<_om_>_Ix
`%mo_>mmmI0O._<._.<O
`
`_>_mn_3Qgmfi%n_mmum:
`
`<_om__>_mm>mm_m..zm_._o
`
`
`v_mo>>h_z>m<mm_._<_n_m__>_W
`
`pzmfizoo
`
`am3
`
`v_mo>>Ez
`
`mmopw
`
`Q3
`
`v_m_O>>._.m_Z
`
`
`
`mmo<z<_>_m_o_>m_n_
`
`ma
`
`zo:<Ew_om_m
`
`ma
`
`Netflix, Inc. Exhibit 1004
`
`Netflix, Inc. Exhibit 1004
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`U.S. Patent
`
`
`
`
`Jan. 27, 2009
`
`
`Sheet 5 of5
`
`
`
`
`
`US 7,483,958 B1
`
`402
`
`
`404
`
`
`
`406
`
`
`408
`
`
`40° W
`
` A MEDIA CATALOG SERVICE (CS) IS CREATED ON AT LEAST
`
`
`
`
`
`
`
`
`ONE DEVICE THAT Is COUPLED TO A NETWORK
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`THE MEDIA CS SENDS A REQUEST FOR AVAILABLE MEDIA
`INFORMATION OVER THE NETWORK
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`AT LEAST ONE MEDIA LIBRARY SERVICE (LS) OPERATING ON A
`DEVICE COUPLED TO THE NETWORK RECEIVES THE REQUEST
`
`
`
`
`
`
`
`AND IN RESPONSE SENDS MEDIA LIBRARY INFORMATION TO
`
`
`
`
`
`
`THE MEDIA CS
`
`
`
`
`
`
`
`
`
`
`
`
`
`THE MEDIA CS RECEIVES THE MEDIA LIBRARY INFORMATION
`FROM AT LEAST ONE MEDIA LS AND FORMS A MEDIA CATALOG
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`THE MEDIA CS SENDS OUT A NOTIFICATION THAT THE MEDIA
`CATALOG IS AVAILABLE
`
`
`
`
`
`410
`
`
`
`
`
`
`
`
`
`412
`
`THE MEDIA CS SENDS AT LEAST A PORTION OF THE MEDIA
`
`
`
`
`
`
`
`CATALOG OVER THE NETWORK TO AT LEAST ONE NETWORKED
`
`
`
`
`
`
`DEVICE
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`THE NETWORKED DEVICE PROVIDES INFORMATION ABOUT
`SELECTED MEDIA CONTENT IDENTIFIED IN THE MEDIA CATALOG
`
`
`
`
`
`
`
`414
`
`TO A USER FOR POSSIBLE SELECTION
`
`
`
`
`
`
`
`
`
`THE NETWORKED DEVICE ACCEPTS USER INPUT SELECTING
`
`
`
`
`
`
`MEDIA CONTENT IDENTIFIED IN THE MEDIA CATALOG
`
`
`
`
`
`
`
`
`
`416
`
`
`
`
`
`
`
`
`
`
`
`
`THE NETWORKED DEVICE REQUESTS THE SELECTED MEDIA
`CONTENT OVER THE NETWORK FROM AN APPLICABLE MEDIA
`
`
`
`
`
`
`
`
`
`418
`CONTENT HOLDER
`
`
`
`
`
`
`
`
`
`
`
`
`
`THE APPLICABLE MEDIA CONTENT HOLDER PROVIDES THE
`
`
`
`
`
`
`
`SELECTED MEDIA CONTENT TO THE NETWORKED DEVICE
`
`
`
`Netflix, Inc. Exhibit 1004
`
`Netflix, Inc. Exhibit 1004
`
`
`
`
`
`US 7,483,958 B1
`
`1
`
`METHODS AND APPARATUSES FOR
`
`
`
`
`SHARING MEDIA CONTENT, LIBRARIES
`
`
`
`
`AND PLAYLISTS
`
`
`
`RELATED PATENT APPLICATIONS
`
`
`
`
`This U.S. Non-provisional application for Letters Patent
`
`
`
`
`
`
`
`claims the benefit of priority from, and hereby incorporates
`
`
`
`
`
`
`
`
`by reference the entire disclosure of, co-pending U.S. Provi-
`
`
`
`
`
`
`
`
`
`sional application for Letters Patent Ser. No. 60/278,804 filed
`
`
`
`
`
`
`
`
`
`Mar. 26, 2001.
`
`
`
`
`TECHNICAL FIELD
`
`
`
`This invention relates generally to networked computer
`
`
`
`
`
`
`and media reproduction devices, and more particularly to
`
`
`
`
`
`
`
`
`methods and systems for sharing media content between vari-
`
`
`
`
`
`
`
`
`
`ous devices.
`
`
`
`BACKGROUND
`
`
`Personal computers (PCs) are popular tools forplaying and
`
`
`
`
`
`
`
`
`sharing digital music files and more recently digital video
`
`
`
`
`
`
`
`
`
`files. Downloading these and other types of media content
`
`
`
`
`
`
`
`
`files over the Internet is becoming more and more common, as
`
`
`
`
`
`
`
`
`
`a result of improved communication capabilities and
`
`
`
`
`
`
`
`advances in computer processing and data storage. Consum-
`
`
`
`
`
`
`
`ers also have more things to do with the media content once it
`
`
`
`
`
`
`
`
`
`
`has been downloaded. For example, consumers may choose
`
`
`
`
`
`
`
`
`to burn CDs or DVDs that can be replayed over stereos or
`
`
`
`
`
`
`
`
`
`
`televisions, respectively. Consumers are also able to port
`
`
`
`
`
`
`
`certain media files to digital audio players/receivers, such as,
`
`
`
`
`
`
`
`e.g., MP-3 devices that can easily be transported. Other popu-
`
`
`
`
`
`
`
`
`
`lar digital media content tools include digital cameras (both
`
`
`
`
`
`
`
`
`
`still and video) and digital scanning devices, which can be
`
`
`
`
`
`
`
`
`
`used to produce media content that can be shared with others
`
`
`
`
`
`
`
`
`
`over the Internet.
`
`
`
`A variety of digital audio content file sharing services are
`
`
`
`
`
`
`
`
`
`available over the Internet. Some of these early music swap-
`
`
`
`
`
`
`
`
`
`ping pioneers, such as, e.g., Napster, have successfully shown
`
`
`
`
`
`
`
`
`that consumers are excited about the prospects provided by
`
`
`
`
`
`
`
`
`online media content delivery. Some of services have also
`
`
`
`
`
`
`
`
`highlighted the continuing need to ensure that copyrighted
`
`
`
`
`
`
`
`media content is carefully protected.
`
`
`
`
`There is also a movement underway to provide more
`
`
`
`
`
`
`enhanced home networking capabilities, for example, that
`
`
`
`
`
`
`
`allow consumers to interconnect various devices and/or
`
`
`
`
`
`
`appliances together and possibly with other devices over the
`
`
`
`
`
`
`
`
`
`Internet. One exciting possibility is providing consumers
`
`
`
`
`
`
`with the ability to manage and deliver media content to
`
`
`
`
`
`
`
`
`
`devices not only in their homes but in their automobiles and at
`
`
`
`
`
`
`
`
`work. With the rapid changes in wireless technology, what
`
`
`
`
`
`
`
`
`was once only a dream is quickly becoming a reality.
`
`
`
`
`
`
`
`Consequently, there is a need for media content sharing
`
`
`
`
`
`
`
`methods and systems that take advantage of these and other
`
`
`
`
`
`
`
`
`
`technological improvements while also providing a respon-
`
`
`
`
`
`
`sible and user-friendly networking environment.
`
`
`
`
`
`SUMMARY
`
`
`The above stated needs and others are satisfied,
`for
`
`
`
`
`
`
`
`
`
`example, by a system suitable for sharing media content
`
`
`
`
`
`
`
`
`between a plurality of different types of devices. In accor-
`
`
`
`
`
`
`
`
`
`dance with certain exemplary implementations of the present
`
`
`
`
`
`
`invention, the system includes at least one media holder, at
`
`
`
`
`
`
`
`
`least one media cataloger, at least one user control point, at
`
`
`
`
`
`
`
`
`
`least one media player, and at least one network operatively
`
`
`
`
`
`
`
`
`
`connecting them.
`
`
`
`10
`
`
`
`15
`
`20
`
`
`
`25
`
`
`30
`
`
`
`35
`
`
`40
`
`
`
`45
`
`
`50
`
`
`
`55
`
`
`60
`
`65
`
`
`2
`
`
`The media holder is configured to selectively output shared
`
`
`
`
`
`
`
`media metadata, media content and at least one correspond-
`
`
`
`
`
`
`
`
`ing media playing license over the network. The media cata-
`
`
`
`
`
`
`
`
`
`
`loger is configured to receive the metadata identifying the
`
`
`
`
`
`
`
`shared media content that is available from the media holder
`
`
`
`
`
`
`
`
`
`(s). The media cataloger is configured to output at least one
`
`
`
`
`
`
`
`
`media catalog over the network. The media catalog contains
`
`
`
`
`
`
`
`
`
`metadata identifying the shared media content that is avail-
`
`
`
`
`
`
`
`
`able from the media holder(s). The user control point is con-
`
`
`
`
`
`
`
`
`
`figured to receive the media catalog(s) and request the shared
`
`
`
`
`
`
`
`
`
`media content as selected from the media catalog,
`for
`
`
`
`
`
`
`
`
`
`example, by a user. The user control point configures the
`
`
`
`
`
`
`
`
`
`media player to receive the media playing license and the
`
`
`
`
`
`
`
`
`
`media content over the network.
`
`
`
`
`
`The media player cannot play protected media content
`
`
`
`
`
`
`
`without having a proper media content playing license. The
`
`
`
`
`
`
`
`license may be withheld if certain authentication criteria are
`
`
`
`
`
`
`not met by the playing device and/or user.
`
`
`
`
`
`
`
`In certain implementations, the network includes a Univer-
`
`
`
`
`
`
`
`sal Plug-and-Play network that allows the various devices,
`
`
`
`
`
`
`
`
`both wired and wireless devices, to quickly integrate with one
`
`
`
`
`
`
`
`
`
`another without user intervention. The network also provides
`
`
`
`
`
`
`
`
`a robust environment, such that, e.g., media content sharing
`
`
`
`
`
`
`
`
`
`can easily be accomplished even if the media cataloger is not
`
`
`
`
`
`
`
`
`available.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`
`
`
`
`
`
`
`
`
`A more complete understanding of the various methods
`
`
`
`
`
`
`
`and systems of the present invention may be had by reference
`
`
`
`
`
`
`
`to the following detailed description when taken in conjunc-
`
`
`
`
`
`
`
`
`tion with the accompanying drawings wherein:
`
`
`
`
`
`
`FIG. 1 is a block diagram generally illustrating an exem-
`
`
`
`
`
`
`plary computer system suitable for use with certain imple-
`
`
`
`
`
`
`
`
`
`mentations of the present invention.
`
`
`
`
`FIG. 2A is a block diagram depicting a media content
`
`
`
`
`
`
`
`sharing environment having a plurality of networked devices
`
`
`
`
`
`
`including one device configured to provide a media catalog-
`
`
`
`
`
`
`
`ing service (CS) and other devices configured to provide
`
`
`
`
`
`
`
`
`media library services (LSs),
`in accordance with certain
`
`
`
`
`
`
`
`
`exemplary implementations of the present invention.
`
`
`
`
`FIG. 2B is a block diagram depicting a media content
`
`
`
`
`
`
`
`sharing environment having a plurality of networked devices
`
`
`
`
`
`
`including at least two devices configured to provide media
`
`
`
`
`
`
`
`cataloging services (CSs) and other devices configured to
`
`
`
`
`
`
`
`provide media library services (LSs), in accordance with
`
`
`
`
`
`
`
`
`certain other exemplary implementations of the present
`
`
`
`
`
`
`
`invention.
`
`FIG. 3 is a block diagram illustrating certain features and/
`
`
`
`
`
`
`
`or functions associated with certain devices, e.g., as in FIGS.
`
`
`
`
`
`
`
`
`
`1, and/or 2A-B, that are configured to share media content, in
`
`
`
`
`
`
`
`
`
`accordance with certain exemplary implementations of the
`
`
`
`
`
`
`present invention.
`
`
`FIG. 4 is a flow diagram depicting a media sharing process,
`
`
`
`
`
`
`
`in accordance with certain exemplary implementations ofthe
`
`
`
`
`
`
`present invention.
`
`
`DETAILED DESCRIPTION
`
`
`
`
`Turning to the drawings, wherein like reference numerals
`
`
`
`
`
`
`
`refer to like elements, the invention is illustrated as being
`
`
`
`
`
`
`
`
`implemented in a suitable computing environment. Although
`
`
`
`
`
`not required, the invention will be described in the general
`
`
`
`
`
`
`
`
`context ofcomputer-executable instructions, such as program
`
`
`
`
`
`modules, being executed by a personal computer. Generally,
`
`
`
`
`
`
`program modules include routines, programs, objects, com-
`
`
`
`
`
`
`
`ponents, data structures, etc. that perform particular tasks or
`
`
`
`
`
`
`
`
`
`Netflix, Inc. Exhibit 1004
`
`Netflix, Inc. Exhibit 1004
`
`
`
`4
`
`
`
`US 7,483,958 B1
`
`3
`
`implement particular abstract data types. Moreover, those
`
`
`
`
`
`
`
`skilled in the art will appreciate that the invention may be
`
`
`
`
`
`
`
`
`
`practiced with other computer system configurations, includ-
`
`
`
`
`
`
`
`
`
`
`
`
`
`ing hand-held devices, multi-processor systems, micropro-
`cessor based or programmable consumer electronics, net-
`
`
`
`
`
`
`work PCs, minicomputers, mainframe computers, and the
`
`
`
`
`
`
`
`like. The invention may also be practiced in distributed com-
`
`
`
`
`
`
`
`
`puting environments where tasks are performed by remote
`
`
`
`
`
`
`
`processing devices that are linked through a communications
`
`
`
`
`
`
`
`network. In a distributed computing environment, program
`
`
`
`
`
`modules may be located in both local and remote memory
`
`
`
`
`
`
`
`
`storage devices.
`
`
`FIG. 1 illustrates an example of a suitable computing envi-
`
`
`
`
`
`
`ronment 120 on which the subsequently described methods
`
`
`
`
`
`
`
`and systems may be implemented. Exemplary computing
`
`
`
`
`
`
`environment 120 is only one example of a suitable computing
`
`
`
`
`
`
`
`environment and is not intended to suggest any limitation as
`
`
`
`
`
`
`
`to the scope of use or functionality of the improved methods
`
`
`
`
`
`
`
`
`and systems described herein. Neither should computing
`
`
`
`
`
`
`
`environment 120 be interpreted as having any dependency or
`
`
`
`
`
`
`requirement relating to any one or combination of compo-
`
`
`
`
`
`
`nents illustrated in computing environment 120.
`
`
`
`
`
`The improved methods and systems herein are operational
`
`
`
`
`
`
`
`
`with numerous other general purpose or special purpose com-
`
`
`
`
`
`
`
`
`puting system environments or configurations. Examples of
`
`
`
`
`
`well known computing systems, environments, and/or con-
`
`
`
`
`
`
`
`figurations that may be suitable include, but are not limited to,
`
`
`
`
`
`
`
`
`
`personal computers, server computers, thin clients, thick cli-
`
`
`
`
`
`
`
`
`ents, hand-held or laptop devices, multiprocessor systems,
`
`
`
`
`
`
`microprocessor-based systems, set top boxes, programmable
`
`
`
`
`
`
`consumer electronics, network PCs, minicomputers, main-
`
`
`
`
`
`
`frame computers, distributed computing environments that
`
`
`
`
`
`
`include any of the above systems or devices, and the like. The
`
`
`
`
`
`
`
`
`methods and systems may also be implemented, for example,
`
`
`
`
`
`
`
`
`using various media processing devices such as desktop com-
`
`
`
`
`
`
`
`
`puting devices, notebook computing devices, tablet comput-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ing devices, hand-held computing devices, personal digital
`assistant (PDA) devices, electronic paper devices, electronic
`
`
`
`
`
`
`
`book devices, wearable computing devices, digital audio
`
`
`
`
`
`
`
`receiver (DAR) devices, digital audio player devices, digital
`
`
`
`
`
`
`
`
`audio recording devices, automobile-based media player
`
`
`
`
`
`
`devices, digital
`television devices, digital video player
`
`
`
`
`
`
`
`devices, digital versatile disc (DVD) player devices; set top
`
`
`
`
`
`
`
`
`
`box devices, digital video receiver devices, digital video
`
`
`
`
`
`
`
`
`recording devices, wireless communication devices, and the
`
`
`
`
`
`
`
`like.
`
`As shown in FIG. 1, computing environment 120 includes
`
`
`
`
`
`
`
`a general-purpose computing device in the form of a com-
`
`
`
`
`
`
`
`puter 130. The components of computer 130 may include one
`
`
`
`
`
`
`
`
`
`or more processors or processing units 132, a system memory
`
`
`
`
`
`
`
`
`134, and a bus 136 that couples various system components
`
`
`
`
`
`
`
`
`
`including system memory 134 to processor 132.
`
`
`
`
`
`
`Bus 136 represents one or more of any of several types of
`
`
`
`
`
`
`
`
`bus structures, including a memory bus or memory controller,
`
`
`
`
`
`
`a peripheral bus, an accelerated graphics port, and a processor
`
`
`
`
`
`
`
`
`or local bus using any of a variety ofbus architectures. By way
`
`
`
`
`
`
`
`
`
`of example, and not limitation, such architectures include
`
`
`
`
`
`
`
`
`Industry Standard Architecture (ISA) bus, Micro Channel
`
`
`
`
`
`
`
`Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video
`
`
`
`
`
`
`
`
`Electronics Standards Association (VESA) local bus, and
`
`
`
`
`
`
`
`
`Peripheral Component Interconnects (PCI) bus also known as
`
`
`
`
`
`
`
`Mezzanine bus.
`
`
`Computer 130 typically includes a variety of computer
`
`
`
`
`
`
`
`readable media. Such media may be any available media that
`
`
`
`
`
`
`
`
`
`is accessible by computer 130, and it includes both volatile
`
`
`
`
`
`
`
`
`and non-volatile media,
`removable and non-removable
`
`
`
`
`
`
`media.
`
`
`10
`
`15
`
`20
`
`
`
`25
`
`
`30
`
`
`
`35
`
`
`40
`
`
`
`45
`
`
`50
`
`
`
`55
`
`
`60
`
`
`
`65
`
`
`
`In FIG. 1, system memory 134 includes computer readable
`
`
`
`
`
`
`
`media in the form of volatile memory, such as random access
`
`
`
`
`
`
`
`
`memory (RAM) 140, and/or non-volatile memory, such as
`
`
`
`
`
`
`
`read only memory (ROM) 138. A basic input/output system
`
`
`
`
`
`
`
`
`(BIOS) 142, containing the basic routines that help to transfer
`
`
`
`
`
`
`
`
`
`information between elements within computer 130, such as
`
`
`
`
`
`
`
`during start-up, is stored in ROM 138. RAM 140 typically
`
`
`
`
`
`
`contains data and/or program modules that are immediately
`
`
`
`
`
`
`
`
`accessible to and/or presently being operated on by processor
`
`
`
`
`
`
`132.
`
`Computer 130 may further include other removable/non-
`
`
`
`
`
`
`
`removable, volatile/non-volatile computer storage media. For
`
`
`
`
`
`
`example, FIG. 1 illustrates a hard disk drive 144 for reading
`
`
`
`
`
`
`
`
`
`from and writing to a non-removable, non-volatile magnetic
`
`
`
`
`
`
`media (not shown and typically called a “hard drive”), a
`
`
`
`
`
`
`
`
`magnetic disk drive 146 for reading from and writing to a
`
`
`
`
`
`
`
`
`
`removable, non-volatile magnetic disk 148 (e.g., a “floppy
`
`
`
`
`
`
`
`disk”), and an optical disk drive 150 for reading from or
`
`
`
`
`
`
`
`
`
`writing to a removable, non-volatile optical disk 152 such as
`
`
`
`
`
`
`
`a CD-ROl\/I/R/RW, DVD-ROl\/I/R/RW/+R/RAM or other
`
`
`
`
`optical media. Hard disk drive 144, magnetic disk drive 146
`
`
`
`
`
`
`
`
`
`
`and optical disk drive 150 are each connected to bus 136 by
`
`
`
`
`
`
`
`
`
`
`one or more interfaces 154.
`
`
`
`
`The drives and associated computer-readable media pro-
`
`
`
`
`
`
`
`vide nonvolatile storage of computer readable instructions,
`
`
`
`
`
`
`data structures, program modules, and other data for com-
`
`
`
`
`
`
`
`
`
`puter 130. Although the exemplary environment described
`
`
`
`
`
`
`
`herein employs a hard disk, a removable magnetic disk 148
`
`
`
`
`
`
`
`
`and a removable optical disk 152, it should be appreciated by
`
`
`
`
`
`
`
`those skilled in the art that other types of computer readable
`
`
`
`
`
`
`
`
`
`media which can store data that is accessible by a computer,
`
`
`
`
`
`
`
`
`such as magnetic cassettes, flash memory cards, digital video
`
`
`
`
`
`
`
`
`disks, random access memories (RAMs), read only memories
`
`
`
`
`
`
`
`
`(ROM), and the like, may also be used in the exemplary
`
`
`
`
`
`
`
`
`
`
`operating environment.
`
`
`A number of program modules may be stored on the hard
`
`
`
`
`
`
`
`disk, magnetic disk 148, optical disk 152, ROM 138, or RAM
`
`
`
`
`
`
`
`
`140, including, e.g., an operating system 158, one or more
`
`
`
`
`
`
`
`
`application programs 160, other program modules 162, and
`
`
`
`
`
`
`
`program data 164.
`
`
`
`The improved methods and systems described herein may
`
`
`
`
`
`
`
`be implemented within operating system 158, one or more
`
`
`
`
`
`
`
`application programs 160, other program modules 162, and/
`
`
`
`
`
`
`
`or program data 164.
`
`
`
`
`A user may provide commands and information into com-
`
`
`
`
`
`
`
`
`puter 130 through input devices such as keyboard 166 and
`
`
`
`
`
`
`
`
`
`pointing device 168 (such as a “mouse”). Other input devices
`
`
`
`
`
`
`
`
`(not shown) may include a microphone, joystick, game pad,
`
`
`
`
`
`
`
`
`satellite dish, serial port, scanner, camera, etc. These and
`
`
`
`
`
`
`
`
`
`other input devices are connected to the processing unit 132
`
`
`
`
`
`
`
`
`
`through a user input interface 170 that is coupled to bus 136,
`
`
`
`
`
`
`
`
`
`but may be connected by other interface and bus structures,
`
`
`
`
`
`
`
`
`such as a parallel port, game port, or a universal serial bus
`
`
`
`
`
`
`
`
`
`(USB).
`
`
`A monitor 172 or other type of display device is also
`
`
`
`
`
`
`
`
`
`connected to bus 136 via an interface, such as a video adapter
`
`
`
`
`
`
`
`
`174. In addition to monitor 172, personal computers typically
`
`
`
`
`
`
`
`include other peripheral output devices (not shown), such as
`
`
`
`
`
`
`
`
`speakers and printers, which may be connected through out-
`
`
`
`
`
`
`
`
`put peripheral interface 175.
`
`
`
`
`Computer 130 may operate in a networked environment
`
`
`
`
`
`
`using logical connections to one or more remote computers,
`
`
`
`
`
`
`
`such as a remote computer 182. Remote computer 182 may
`
`
`
`
`
`
`
`
`include many or all of the elements and features described
`
`
`
`
`
`
`
`
`
`herein relative to computer 130.
`
`
`
`
`Logical connections shown in FIG. 1 are a local area net-
`
`
`
`
`
`
`
`
`work (LAN) 177 and a general wide area network (WAN)
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Netflix, Inc. Exhibit 1004
`
`Netflix, Inc. Exhibit 1004
`
`
`
`
`
`US 7,483,958 B1
`
`5
`
`10
`
`15
`
`5
`
`179. Such networking environments are commonplace in
`
`
`
`
`
`
`offices, enterprise-wide computer networks, intranets, and
`
`
`
`
`
`
`the Internet.
`
`
`When used in a LAN networking environment, computer
`
`
`
`
`
`
`130 is connected to LAN 177 via network interface or adapter
`
`
`
`
`
`
`186. When used in a WAN networking environment, the
`
`
`
`
`
`
`
`computer typically includes a modem 178 or other means for
`
`
`
`
`
`
`establishing communications over WAN 179. Modem 178,
`
`
`
`
`
`
`which may be internal or external, may be connected to sys-
`
`
`
`
`
`
`
`tem bus 136 via the user input interface 170 or other appro-
`
`
`
`
`
`
`
`
`
`
`
`
`
`priate mechanism.
`Depicted in FIG. 1, is a specific implementation of a WAN
`
`
`
`
`
`via the Internet. Here, computer 130 employs modem 178 to
`
`
`
`
`
`
`
`
`establish communications with at least one remote computer
`
`
`
`
`
`
`
`182 via the Internet 180.
`
`
`
`
`
`In a networked environment, program modules depicted
`
`
`
`
`
`
`relative to computer 130, or portions thereof, may be stored in
`
`
`
`
`
`
`
`a remote memory storage device. Thus, e.g., as depicted in
`
`
`
`
`
`
`
`
`
`FIG. 1, remote application programs 189 may reside on a
`
`
`
`
`
`
`
`
`memory device of remote computer 182. It will be appreci-
`
`
`
`
`
`
`
`ated that the network connections shown and described are
`
`
`
`
`
`
`
`
`
`exemplary and other means ofestablishing a communications
`
`
`
`
`
`
`link between the computers may be used.
`
`
`
`
`
`
`Attention is now drawn FIG. 2A, which is a block diagram
`
`
`
`
`
`
`
`
`depicting a media content sharing environment 200 having a
`
`
`
`
`
`
`
`plurality of networked devices including a first device 202
`
`
`
`
`
`
`
`
`that is configured to provide a media cataloging service (CS)
`
`
`
`
`
`
`
`over a network 204 with/for other devices 206a-d that are
`
`
`
`
`
`
`
`
`
`configured to act as media players and/or provide media
`
`
`
`
`
`
`
`
`library services (LSs), in accordance with certain exemplary
`
`
`
`
`
`
`
`implementations of the present invention.
`
`
`
`In this example first device 202 is further operatively
`
`
`
`
`
`
`
`
`coupled to the Internet 208, which provides connectivity to at
`
`
`
`
`
`
`
`least one server 210. Here, server 210 is coupled to media
`
`
`
`
`
`
`
`
`
`content sharing mechanism that is represented by a database
`
`
`
`
`
`
`212. Server 210 may, for example, be configured to provide
`
`
`
`
`
`
`
`
`an Intemet-based service, such as, a media controller service,
`
`
`
`
`
`
`
`a media provider service, a radio program service, a television
`
`
`
`
`
`
`
`
`service, or the like. Device 206c is illustrated as also having
`
`
`
`
`
`
`
`
`the ability to operatively connect to the Internet 208 through
`
`
`
`
`
`
`
`
`communication link 207. Other devices, such as devices
`
`
`
`
`
`
`
`206a, 206b and/or 206d may also have similar connectivity to
`
`
`
`
`
`
`
`
`
`the Internet 208. For example, network 204 may be connected
`
`
`
`
`
`
`
`
`
`to the Internet 208 through one or more other devices (not
`
`
`
`
`
`
`
`
`
`
`shown).
`
`Network 204 is representative of any communication sys-
`
`
`
`
`
`
`tem/equipment that can provide the necessary data commu-
`
`
`
`
`
`
`
`
`nication path between the various devices connected through
`
`
`
`
`
`
`
`it. Thus, network 204 may include wired and/or wireless
`
`
`
`
`
`
`
`
`
`connections.
`In certain implementations network 204
`
`
`
`
`
`
`includes an Internet Protocol (IP) based network. To better
`
`
`
`
`
`
`
`control the sharing of media content, in certain implementa-
`
`
`
`
`
`
`
`tions network 204 includes a local area network (LAN).
`
`
`
`
`
`
`
`
`One such implementation, in accordance with certain pre-
`
`
`
`
`
`
`
`ferred implementations, includes the use of a Universal Plug-
`
`
`
`
`
`
`
`and-Play (UPnP) protocol that provides a peer-to-peer net-
`
`
`
`
`
`
`
`work capability that can support various devices through
`
`
`
`
`
`
`
`
`wired and/or wireless connections. UPnP provides a distrib-
`
`
`
`
`
`
`
`uted, open networking architecture that leverages Transmis-
`
`
`
`
`
`
`
`sion Control Protocol
`(TCP/IP) and World Wide Web
`
`
`
`
`
`
`
`
`(WWW) features to enable seamless proximity networking in
`
`
`
`
`
`
`addition to control and data transfer among networked
`
`
`
`
`
`
`
`
`devices in a home, office, or other like environment(s). UPnP
`
`
`
`
`
`
`
`advantageously boasts device-driver independence and zero-
`
`
`
`
`
`
`
`
`configuration networking.
`Devices 202, 206a-d (and later devices 202', 206e-h, and
`
`
`
`
`
`
`
`
`
`300) are representative of a variety of different devices that
`
`
`
`
`
`
`
`
`6
`
`can be used to provide features/capabilities associated with
`
`
`
`
`
`
`sharing media content in accordance with the methods and
`
`
`
`
`
`
`
`
`systems provided herein. An exemplary list of some of the
`
`
`
`
`
`
`
`
`types of devices that may be used was provided earlier. Those
`
`
`
`
`
`
`
`
`
`skilled in the art will recognize other devices that can also be
`
`
`
`
`
`
`
`
`
`
`used, including special purpose devices.
`
`
`
`
`
`As depicted in FIG. 2A, device 202 is operatively config-
`
`
`
`
`
`
`
`
`ured to provide a media catalog service 203. Media catalog
`
`
`
`
`
`
`
`
`service (CS) 203 is configured to gather and/or distribute
`
`
`
`
`
`
`
`information about media content that is available for sharing
`
`
`
`
`
`
`
`
`between at least some of the connected devices. Thus, for
`
`
`
`
`
`
`
`
`example,
`in certain implementations media CS 203 may
`
`
`
`
`
`
`
`
`actively/dynamically query the various devices to gather
`
`
`
`
`
`
`
`information about shared media content and/or passively
`
`
`
`
`
`
`
`receive such information from the various devices.
`
`
`
`
`
`
`
`In a UPnP environment, media CS 203 can employ the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`capabilities provided by the UPnP protocol to dynamically
`discover and gather (e.g., aggregate) shared media content
`
`
`
`
`
`
`
`
`information. Media CS 203 can then publish at least a portion
`
`
`
`
`
`
`
`ofthe resulting aggregated information, e.g., as a correspond-
`
`
`
`
`
`
`ing media catalog, over at least network 204. The media
`
`
`