US20140329456A1 - Proximity synchronization of audio content among multiple playback and storage devices - Google Patents
Proximity synchronization of audio content among multiple playback and storage devices Download PDFInfo
- Publication number
- US20140329456A1 US20140329456A1 US14/245,792 US201414245792A US2014329456A1 US 20140329456 A1 US20140329456 A1 US 20140329456A1 US 201414245792 A US201414245792 A US 201414245792A US 2014329456 A1 US2014329456 A1 US 2014329456A1
- Authority
- US
- United States
- Prior art keywords
- player
- digital audio
- players
- gateway
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/76—Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet
- H04H60/81—Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet characterised by the transmission system itself
- H04H60/82—Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet characterised by the transmission system itself the transmission system being the Internet
- H04H60/87—Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet characterised by the transmission system itself the transmission system being the Internet accessed over computer networks
- H04H60/88—Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet characterised by the transmission system itself the transmission system being the Internet accessed over computer networks which are wireless networks
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/102—Programmed access in sequence to addressed parts of tracks of operating record carriers
- G11B27/105—Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/68—Systems specially adapted for using specific information, e.g. geographical or meteorological information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/52—Network services specially adapted for the location of the user terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/4104—Peripherals receiving signals from specially adapted client devices
- H04N21/4112—Peripherals receiving signals from specially adapted client devices having fewer capabilities than the client, e.g. thin client having less processing power or no tuning capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/4104—Peripherals receiving signals from specially adapted client devices
- H04N21/4126—The peripheral being portable, e.g. PDAs or mobile phones
- H04N21/41265—The peripheral being portable, e.g. PDAs or mobile phones having a remote control device for bidirectional communication between the remote control device and client device
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/439—Processing of audio elementary streams
Abstract
Description
- The present application is a continuation of U.S. patent application Ser. No. 13/621,070, filed Sep. 15, 2012, which is a continuation of U.S. patent application Ser. No. 13/101,581, filed May 5, 2011, which is a division of U.S. patent application Ser. No. 12/576,465, filed Oct. 9, 2009 now abandoned, which is a continuation of U.S. patent application Ser. No. 09/858,415, filed on May 16, 2001 now issued as U.S. Pat. No. 7,620,363. Each of the aforementioned patent(s) and application(s) are hereby incorporated by reference in their entirety.
- 1. Field of the Invention
- The present invention relates to a wireless communication system and more particularly to a wireless communication system for digital audio players for providing increased functionality including communication, interaction and synchronization between a computing platform and various digital audio players as well as communication among the digital audio players themselves.
- 2. Description of the Prior Art
- A multitude of different devices for digital audio playback are known. Handheld or portable audio players, mobile as well as fixed audio players are known. Examples of such handheld audio players are compact disc (CD) players and MP3 players. Such mobile audio players include audio players, such as CD players, mounted in vehicles. Such mobile audio players are known to be mounted either in-dash in the vehicle or in the case of conversion vans and recreational vehicles in ceiling of the vehicle. Examples of fixed digital audio playback devices include stand-alone players, such as boom boxes and rack players that are adapted to connect to a home stereo system and to an AC power source.
- Digital audio content from the Internet is known to be downloaded onto storage devices, such as CDs, by way of a personal computer. Such Internet-based digital audio content has also been downloaded onto portable MP3 audio players. Although such systems allow selected digital audio content to be played when desired by the user, such systems only allow rather limited functionality. As such, various functions, such as interaction, communication and synchronizing the digital content on a plurality of digital audio players must be done manually. Thus, there is a need for system for providing increased functionality of various digital audio players.
- The present invention relates to a wireless communication system and in particular to a wireless communication system for digital audio players that provides for increased functionality, such as communication, interaction and synchronization between a computing platform and various mobile, portable or fixed digital audio players, as well as providing a communication link between the various digital audio players themselves. The computing platform may act, for example, through a wireless network or wireless communication platform, to control the digital audio players; to act as a cache of digital audio data for the digital audio players; as well as provide a gateway to the Internet to enable the digital audio players to access additional digital audio content and other information. The computing platform may also be used to automatically update digital audio content on the digital audio players; synchronize digital audio content and playlists between digital audio players; and automatically continue a particular playlist as the user moves from one digital audio player to another.
- These and other advantages of the present invention will be readily understood with reference to the following specification and attached drawings wherein:
-
FIG. 1 is a block diagram of a digital audio communication system in accordance with the present invention. -
FIG. 2 is a block diagram of a digital audio gateway in accordance with the present invention. -
FIG. 3 is a block diagram of a wireless communication network which includes various digital audio players in accordance with the present invention. -
FIG. 4 is a block diagram of a system which utilizes a personal computing platform for communicating with a plurality of audio players. -
FIG. 5 is an alternate embodiment of the invention which illustrates the use of a television set top box as a communication link for communicating with a plurality of digital audio players in accordance with an alternate embodiment of the invention. -
FIG. 6 is a block diagram of an alternate embodiment of the invention which illustrates a communication system between a number of digital audio players and stand-alone audio gateway. -
FIG. 7 is a block diagram of a communication network between various digital audio players in accordance with another aspect of the present invention. -
FIG. 8 is a block diagram of the computing platform in accordance with the present invention. -
FIG. 9 is a block diagram of a stand-alone audio gateway in accordance with the present invention. -
FIG. 10 is a block diagram of a mobile digital audio player in accordance with the present invention. -
FIG. 11 is a block diagram of a fixed digital audio player in accordance with the present invention. -
FIG. 12 is a block diagram of a handheld or portable digital audio player in accordance with the present invention. -
FIG. 13 is a block diagram of an automotive digital audio player in accordance with the present invention. -
FIG. 14 is a block diagram of a rack player in accordance with the present invention. -
FIG. 15 is a block diagram of a stand-alone digital audio player in accordance with the present invention. -
FIG. 16 is a flow diagram of the audio gateway message handling in accordance with the present invention. -
FIG. 17 is a flow diagram of the audio gateway discovery in accordance with the present invention. -
FIG. 18 is a flow diagram of the audio gateway drop-out detection in accordance with the present invention. -
FIG. 19 is a flow diagram of the audio gateway content synchronization in accordance with the present invention. -
FIG. 20 is a flow diagram of the audio gateway playlist continuation in accordance with the present invention. -
FIG. 21 is a flow diagram of the player message handling in accordance with the present invention. -
FIGS. 22 and 23 are flow diagrams of the player discovery in accordance with the present invention. -
FIG. 24 is a flow diagram of the player drop-out detection in accordance with the present invention. -
FIG. 25 is a flow diagram of the player content synchronization in accordance with the present invention. -
FIGS. 26 and 27 are flow diagrams of the player playlist continuation feature in accordance with the present invention. - The present invention is adapted to provide additional functionality of digital audio players. For example, in one embodiment, as illustrated in
FIG. 1 , acomputing platform 103, for example, a personal computer, is used as a gateway to enable variousdigital audio players other computer network 102. In this embodiment, thecomputing platform 103 may be configured to access one ormore servers 100 on the Internet orother computer network 102 that contain digital audio content andother information 101, such as artists, track names, album names, lyrics, and playlists, among other things. Though thecomputing platform 103 can act as a digital audio player by itself, in this embodiment of the invention, thecomputing platform 103 acts as an audio gateway for variousdigital audio players other information 101 for thedigital audio players servers 100 that are connected to thecomputing platform 103 through the Internet orother computer network 102. Using a wireless network orwireless communication platform 104, thecomputing platform 103 is adapted to communicate with various digital audio players, such as one or more mobiledigital audio players 115 and fixeddigital audio players 116 that are within range of the wireless network orwireless communication platform 104 forming a local wireless network as generally illustrated inFIG. 3 . - Various devices are contemplated for use as audio gateways, for example, as shown in
FIG. 2 . In one embodiment, apersonal computer 105 coupled to an internal or external wireless communication network orwireless communication platform 104 , for example, anaccess point 106, is used as an audio gateway. Alternatively, aset top box 107 with a wireless network orwireless communication platform 104, coupled to aconventional TV 108, may be used as an audio gateway. A stand aloneaudio gateway 109 may also be formed from a wireless network orwireless communication platform 104. Other embodiments of an audio gateway are also contemplated. For example, any device with a wireless network orwireless communication platform 104, either public or private, may be used. - In another embodiment of the invention, the
computing platform 103 may be configured to automatically synchronize, or upon request, copy, add or remove digital audio content andother information 101, such as playlists, on mobile digitalaudio players 115 and fixed digitalaudio players 116. Thecomputing platform 103 may also be used to control mobile digitalaudio players 115 and fixed digitalaudio players 116 by changing the current playlist or the currently playing digital audio content, among other things, on the mobile digitalaudio players 115 or fixed digitalaudio players 116. - In another embodiment of the invention as illustrated in
FIG. 7 , the system enables communication between various digital audio players, such as the digital audio players 110-113. This embodiment may be also incorporated with acomputing platform 103, for example, acting as a gateway, as discussed above, or alternatively using thecomputing platform 103 for synchronization among the various digital audio players 110-113 or other functions, such as those discussed above. -
FIGS. 4-6 represent an exemplary network configuration, utilizing different audio gateways for enabling connection of the digital audio players 110-113 to the Internet orother computer network 102. These examples are by no means the only possible configurations that support the invention and do not necessarily cover all aspects of the invention. - The first exemplary configuration, shown in
FIG. 4 , uses apersonal computer 105 as the audio gateway. Thepersonal computer 105 connects to the Internet orother computer network 102 using a conventional network interface ormodem 137. Thepersonal computer 105 is thus able to download digital audio content andother information 101 from the server 100 (FIG. 1 ) connected to the Internet orother computer network 102. The digital audio content andother information 101, such as artists, track names, album names, lyrics, and playlists, can then be stored in a persistent storage 133 (FIG. 8 ), such as a hard drive, on thepersonal computer 105. The user can also create new playlists using thepersonal computer 105. - In this embodiment, a
wireless access point 106 is used to access the wireless network orwireless communication platform 104. The wireless network orwireless communication platform 104 is used by thepersonal computer 105, acting as the audio gateway, to communicate with mobile digitalaudio players 115 and fixed digitalaudio players 116. Thepersonal computer 105, using the wireless network orwireless communication platform 104, is able to, either automatically or at user request, pass the digital audio content andother information 101, including new playlists, to mobile digitalaudio players 115 and fixed digitalaudio players 116. If a fixeddigital audio player 116, such as a stand-alone player 112 or arack player 113 that connects to astereo 114, happens to be turned off at the time, then thepersonal computer 105 is able to automatically detect the next time the fixeddigital audio player 116 is turned on. When thepersonal computer 105 detects that a fixeddigital audio player 116 has just turned on, then thepersonal computer 105 can pass the digital audio content andother information 101 to the fixeddigital audio player 116 at that time. Mobile digitalaudio players 115, such asautomotive players 110 andhandheld players 111, may be out of range of the wireless network orwireless communication platform 104 during normal use. When a mobiledigital audio player 115 comes into range of the wireless network orwireless communication platform 104, thepersonal computer 105, acting as an audio gateway, can automatically detect the mobiledigital audio player 115 and pass the digital audio content andother information 101 at that time. - In addition, the
personal computer 105 can, either automatically or upon user request, determine the current playlist and current position within the playlist on a particular mobiledigital audio player 115 or fixeddigital audio player 116. Then thepersonal computer 105 can propagate this playlist information to any other mobile digitalaudio players 115 and fixed digitalaudio players 116 that are on and in range. This allows a user to move from one mobiledigital audio player 115 or fixeddigital audio player 116 to another mobiledigital audio player 115 or fixeddigital audio player 116 and automatically be able to continue the same music and playlist in a seamless manner. - Another exemplary configuration, shown in
FIG. 5 , uses a set-top box 107 as the audio gateway. The set-top box 107 can connect to the Internet orother computer network 102 either through the same cable or by way of a satellite connection that provides the analog or digital audio or video 151 (FIG. 8 ) that is passed to an audio or video playback device, such as atelevision set 108, or through an internal or external network interface ormodem 137. The set-top box 107 can thus download digital audio content andother information 101 from aserver 100, connected to the Internet orother computer network 102. The digital audio content andother information 101, such as artists, track names, album names, lyrics, and playlists, can then be stored inpersistent storage 133, such as a hard drive or flash memory, on the set-top box 107. - In this embodiment, a wireless network interface or
wireless communication interface 141 is used to handle the wireless network orwireless communication platform 104. The set-top box 107, acting as the audio gateway, uses the wireless network orwireless communication platform 104 to communicate with mobile digitalaudio players 115 and the fixed digitalaudio players 116. The set-top box 107, using the wireless network orwireless communication platform 104, is able to, either automatically or upon user request, pass the digital audio content andother information 101 to mobile digitalaudio players 115 and fixed digitalaudio players 116. - If a fixed
digital audio player 116, such as a stand-alone player 112 or arack player 113 that connects to astereo 114, happens to be turned off at the time, then the set-top box 107 is able to automatically detect the next time the fixeddigital audio player 116 is turned on. When the set-top box 107 detects that a fixeddigital audio player 116 has just turned on, then the set-top box 107 can pass the digital audio content andother information 101 to the fixeddigital audio player 116 at that time. Mobile digitalaudio players 115, such asautomotive players 110 andhandheld players 111, are typically out of range of the wireless network orwireless communication platform 104 during normal use. - When a mobile
digital audio player 115 comes into range of the wireless network orwireless communication platform 104, the set-top box 107, acting as an audio gateway, can automatically detect the mobiledigital audio player 115 and pass the digital audio content andother information 101 at that time. In addition, the set-top box 107 can determine, either automatically or upon user request, the current playlist and current position within the playlist on a particular mobiledigital audio player 115 or fixeddigital audio player 116. Then the set-top box 107 can propagate this playlist information to any other mobile digitalaudio players 115 and fixed digitalaudio players 116 that are on and in range. This allows a user to move from one mobiledigital audio player 115 or fixeddigital audio player 116 to another mobiledigital audio player 115 or fixeddigital audio player 116 and automatically be able to continue the same music and playlist in a seamless manner. - Another exemplary configuration, shown in
FIG. 6 , uses a stand-alone audio gateway 109 as the audio gateway. The stand-alone audio gateway 109 connects to the Internet orother computer network 102 using a network interface ormodem 137. The stand-alone audio gateway 109 can download digital audio content andother information 101 from aserver 100 connected to the Internet orother computer network 102. The digital audio content andother information 101, such as artists, track names, album names, lyrics, and playlists, can then be stored inpersistent storage 133, such as a hard drive or flash memory, on the stand-alone audio gateway 109. In this embodiment, a wireless network interface or wireless communication interface 141 (FIG. 8 ) is used to handle the wireless network orwireless communication platform 104. The wireless network orwireless communication platform 104 is used by the stand-alone audio gateway 109 to communicate with mobile digitalaudio players 115 and fixed digitalaudio players 116. The stand-alone audio gateway 109, using the wireless network orwireless communication platform 104, is able to, either automatically or at user request, pass the digital audio content andother information 101 to mobile digitalaudio players 115 and fixed digitalaudio players 116. If a fixeddigital audio player 116, such as a stand-alone player 112 or arack player 113 that connects to astereo 114, happens to be turned off at the time, then the stand-alone audio gateway 109 is able to automatically detect the next time the fixeddigital audio player 116 is turned on. When the stand-alone audio gateway 109 detects that a fixeddigital audio player 116 has just turned on, then the stand-alone audio gateway 109 can pass the digital audio content andother information 101 to the fixeddigital audio player 116 at that time. - Mobile digital
audio players 115, such asautomotive players 110 and portable orhandheld players 111, may be out of range of the wireless network orwireless communication platform 104 during normal use. When a mobiledigital audio player 115 comes into range of the wireless network orwireless communication platform 104, the stand-alone audio gateway 109 can automatically detect the mobiledigital audio player 115 and pass the digital audio content andother information 101 at that time. - In addition, the stand-
alone audio gateway 109 can, either automatically or upon user request, determine the current playlist and current position within the playlist on a particular mobiledigital audio player 115 or fixeddigital audio player 116. Then the stand-alone audio gateway 109 can propagate this playlist information to any other mobile digitalaudio players 115 and fixed digitalaudio players 116 that are on and in range. This allows a user to move from one mobiledigital audio player 115 or fixeddigital audio player 116 to another mobiledigital audio player 115 or fixeddigital audio player 116 and automatically be able to continue the same music and playlist in a seamless manner. - In another embodiment, shown in
FIG. 3 , a local wireless network is formed which enables wireless communication between a host, such as apersonal computer 105, a standalone audio gateway 109, aset top box 107, and various digital audio players, such as mobile digitalaudio players 115, fixed digitalaudio players 116, a standalone audio gateway 109 and a settop box 107, for example, configured in a star topography. As shown, various audio gateways are used to establish the network. However, in this embodiment, audio gateways, which contain a wireless network orwireless communication platform 104 as discussed above, are used primarily for establishing network communication and may or may not be connected to aremote server 100. - Wireless communications between the
computing platform 103 and mobile digitalaudio players 115 and fixed digitalaudio players 116, can be done using industry standard wireless communications and networking technology, such as Bluetooth, HomeRF, and IEEE 802.11. In addition, with respect to this invention, a proprietary wireless communications technology may also be used for wireless communications. Use of the wireless network orwireless communication platform 104 by computingplatforms 103, mobile digitalaudio players 115, and fixed digitalaudio players 116 may be handled as an internal or external peripheral in the form of a wireless network interface orwireless communication interface 141. The wireless network orwireless communication platform 104 may also require an externalwireless access point 106 to handle or facilitate wireless communications and to act as a bridge between the wireless network and wired networking connections, such as may be used by apersonal computer 105. - Communication between Digital Audio Players
-
FIG. 7 illustrates a wireless network configuration which enables communication directly among various digital audio players without a host. The various digital audio players, such as mobile digitalaudio players 115 and fixed digitalaudio players 116, use the same wireless network orwireless communication platform 104 that is used to wirelessly communicate with thecomputing platform 103, to communicate with each other. The wireless communication between the various digital audio players may be handled by an internal or external wireless network interface or wireless communication interface 141 (FIGS. 10 and 11 ) in each of the disposed digital audio players. In this embodiment, communication between the various digital audio players include directly passing digital audio content andother information 101, including playlists from, for example, one mobiledigital audio player 115 or fixeddigital audio player 116 to another. -
FIGS. 8 and 9 illustrate architectures for the computing platform and stand-alone audio gateway platforms.FIGS. 10-15 illustrate the architectures for the various digital audio player platforms. As shown, the architecture of the various platforms is similar. Thus, like reference numbers are used for like components for clarity. -
FIG. 8 illustrates the typical system architecture of acomputing platform 103, which can encompass anything from general-purpose devices, such aspersonal computers 105, to open fixed function devices, such as set-top boxes 107 or stand-alone audio gateways 109, among others. In general, thecomputing platform 103 has amain processor 130, such as an Intel Pentium III, for executing various software components. The various software instructions are typically stored in read only memory, or ROM, orflash memory 136, orlocal storage 132. Thelocal storage 132 can consist ofpersistent storage 133, such as hard drives or flash memory, orremovable storage 134, such as floppy drives, CD-ROM drives, or DVD drives. The software instructions may be executed by themain processor 130 directly from their storage location or loaded into random access memory orRAM 135 to be executed fromRAM 135 by themain processor 130. Thelocal storage 132 can also be used to cache digital audio content andother information 101. - The
computing platform 103 uses a network interface ormodem 137 to accessservers 100 on the Internet orother computer network 102, in order to download digital audio content orother information 101. The network interface ormodem 137, for example, a 3COM Etherlink 10/100 PCI network interface card, may be connected internally or externally to thecomputing platform 103 using a system bus orperipheral bus 131. The system bus andperipheral buses 131 are provided for connecting internal and external devices to thecomputing platform 103 in a standard manner. Typical system andperipheral buses 131 include Universal Serial Bus, commonly referred to as USB, IEEE 1394 bus, commonly referred to as FireWire, and Peripheral Connect Interface, commonly referred to as PCI. - The
computing platform 103 also supports connection through auser input interface 142 to external or integrateduser input devices 153, such as keyboards and mice. In order to provide for output to the user, thecomputing platform 103 may also contain adisplay controller 138, for example, an NVIDIA Model No. GeForce2, which stores graphical data such as windows, bitmaps and text. Thedisplay controller 138 outputs the graphical data in avideo output 150 format that is typically displayed to the user on a video monitor,television 108, or LCD panel. In addition tovideo output 150, thecomputing platform 103 can provideaudio output 152, which is handled byaudio playback hardware 140. - For a
computing platform 103 that is acting as a set-top box 107, thecomputing platform 103 will likely also contain an analog or digital audio andvideo decoder 139, for example, a C-Cube Model No. AViA 600, hereby incorporated by reference. The analog or digital audio andvideo decoder 139 decodes the analog or digital audio orvideo 151 from sources such as cable or satellite, and passes theaudio output 152 andvideo output 150 to an audio and video playback device, such as atelevision set 108. - For wireless communication with
other computing platforms 103, and various digital audio players, such as mobile digitalaudio players 115, and fixed digitalaudio players 116 on a wireless network orwireless communication platform 104, thecomputing platform 103 uses an internal or external wireless network interface orwireless communication interface 141. It should be noted that acomputing platform 103 is not limited to the capabilities and features listed in this description, but may contain a subset of the described features or may contain additional capabilities or features not listed. -
FIG. 9 demonstrates some of the unique capabilities of the stand-alone audio gateway 109, though this example is by no means complete or exhaustive in its coverage of the possible options for a stand-alone audio gateway 109. In particular, the stand-alone audio gateway 109 acts as a fixed function device, whose main purpose is to be an audio gateway. The fixed function nature of the stand-alone audio gateway 109 is unlike thepersonal computer 105, which exists as a general-purpose computing device. The stand-alone audio gateway 109 is able to connect to the Internet orother computer network 102 using an internal or external network interface ormodem 137. The stand-alone audio gateway 109 is able to cache digital audio content andother information 101 downloaded from aserver 100 connected to the Internet orother computer network 102 intopersistent storage 133, such as a hard drive, on the stand-alone audio gateway 109. -
FIG. 9 illustrates a typical system architecture of the stand-alone audio gateway 109. In general, the stand-alone audio gateway 109 has amain processor 130 for executing various software components. The various software components are typically stored in read only memory, or ROM, orflash memory 136, orlocal storage 132.Local storage 132 can consist ofpersistent storage 133, such as hard drives or flash memory, orremovable storage 134 such as floppy drives, CD-ROM drives, or DVD drives. The software components are executed by themain processor 130 directly from their storage location or are loaded into random access memory orRAM 135, to be executed fromRAM 135 by themain processor 130.Local storage 132 can also be used to cache digital audio content andother information 101. The stand-alone audio gateway 109 uses a network interface ormodem 137 to accessservers 100 on the Internet orother computer network 102, in order to download digital audio content orother information 101. The network interface ormodem 137 is connected internally or externally to the stand-alone audio gateway 109 using a system bus orperipheral bus 131. The system bus andperipheral buses 131 are provided for connecting internal and external devices to the stand-alone audio gateway 109 in a standard manner. Typical system andperipheral buses 131 include Universal Serial Bus, commonly referred to as USB, IEEE 1394, commonly referred to as FireWire, and Peripheral Connect Interface, commonly referred to as PCI. The stand-alone audio gateway 109 also supports connection through auser input interface 142 to external or integrateduser input devices 153, such as buttons, keyboards and mice. For output to the user, the stand-alone audio gateway 109 may contain adisplay controller 138, which stores display data such as windows, bitmaps and text. Thedisplay controller 138 outputs the display data in avideo output 150 format that is typically displayed to the user on a video monitor,television 108, or LCD panel. In addition tovideo output 150, the stand-alone audio gateway 109 can provideaudio output 152, which is handled byaudio playback hardware 140. For wireless communication with mobile digitalaudio players 115, and fixed digitalaudio players 116 on a wireless network orwireless communication platform 104, the stand-alone audio gateway 109 uses an internal or external wireless network interface orwireless communication interface 141. It should be noted that a stand-alone audio gateway 109 is not limited to the capabilities and features listed in this description, but may contain a subset of the described features or may contain additional capabilities or features not listed. - Many different types of mobile digital
audio players 115 are suitable for use with the present invention.FIG. 10 demonstrates the general architecture for a mobiledigital audio player 115. In general, a mobiledigital audio player 115 has aprocessor 155 that is responsible for executing various software and firmware components. The various software and firmware components are typically stored in read only memory, or ROM, orflash memory 158 or inplayer storage 156, such as a hard drive, flash memory, or removable media. The software and firmware components are executed by theprocessor 155 directly from their storage location or are loaded into random access memory orRAM 157 to be executed fromRAM 157 by theprocessor 155.Player storage 156 can also be used for storing digital audio content andother information 101, such as artists, track names, album names, lyrics, and playlists, for later playback and presentation to the user. Typically, thedigital audio content 101 is in some encoded format. Theaudio decoder 162 decodes thedigital audio content 101 and passes it to the audio digital toanalog converter 163, or DAC. Theaudio DAC 163 converts the decoded audio to analog and then providesaudio output 166 from the mobiledigital audio player 115. Theaudio output 166 of a mobiledigital audio player 115 is typically passed to an amplifier or headphones. Communication using a wireless network orwireless communication platform 104 by the mobiledigital audio player 115 with acomputer platform 103, other mobile digitalaudio players 115, and fixed digitalaudio players 116 is done using an internal or external wireless network interface orwireless communication interface 141. For input from the user, the mobiledigital audio player 115 containsuser inputs 165, such as buttons or a touch screen. Theuser input interface 164 handles the actual interface with theuser inputs 165, while interpretation of these inputs are typically handled by software and firmware running on theprocessor 155. For output to the user, the mobiledigital audio player 115 may contain adisplay controller 160, which can provide text and possibly graphical output to the user on anLCD display 161. Tying of the functional components andprocessor 155 together is typically done using a system bus andperipheral buses 159. Examples of system andperipheral buses 159 include Universal Serial Bus, commonly referred to as USB, IEEE 1394, commonly referred to as FireWire, and Peripheral Connect Interface, commonly referred to as PCI. It should be noted that some of the functional blocks described might encompass multiple physical components. As well, multiple functional blocks may be contained in a single physical component. It should also be noted that a mobiledigital audio player 115 is not limited to the capabilities and features listed in this description, but may contain a subset of the described features or may contain additional capabilities or features not listed. - There are many different types of fixed digital
audio players 116.FIG. 11 demonstrates the general architecture for a fixeddigital audio player 116. In general, a fixeddigital audio player 116 has aprocessor 155 that is responsible for executing various software and firmware components. The various software and firmware components are typically stored in read only memory, or ROM, orflash memory 158 or inplayer storage 156, such as a hard drive, flash memory, or removable media. The software and firmware components are executed by theprocessor 155 directly from their storage location or are loaded into random access memory orRAM 157 to be executed fromRAM 157 by theprocessor 155.Player storage 156 can also be used for storing digital audio content andother information 101, such as artists, track names, album names, lyrics, and playlists, for later playback and presentation to the user. Typically, thedigital audio content 101 is in some encoded format. Theaudio decoder 162 decodes thedigital audio content 101 and passes it to the audio digital toanalog converter 163, or DAC. Theaudio DAC 163 converts the decoded audio to analog and then providesaudio output 167 from the fixeddigital audio player 116. Theaudio output 167 of a fixeddigital audio player 116 is typically passed to a stereo, amplifier, speakers or headphones. Communication using a wireless network orwireless communication platform 104 by the fixeddigital audio player 116 with acomputing platform 103, mobile digitalaudio players 115, and other fixed digitalaudio players 116, is done using an internal or external wireless network interface orwireless communication interface 141. For input from the user, the fixeddigital audio player 116 containsuser inputs 165, such as buttons or a touch screen. The fixeddigital audio player 116 may also receiveinfrared input 168 from a remote control. Theuser input interface 164 handles the actual interface with theuser inputs 165 and theinfrared input 168, while interpretation of these inputs are typically handled by software and firmware running on theprocessor 155. For output to the user, the fixeddigital audio player 116 may contain adisplay controller 160, which can provide text and possibly graphical output to the user on anLCD display 161. Tying of the functional components andprocessor 155 together is typically done using a system bus andperipheral buses 159. Examples of system andperipheral buses 159 include Universal Serial Bus, commonly referred to as USB, IEEE 1394, commonly referred to as FireWire, and Peripheral Connect Interface, commonly referred to as PCI. It should be noted that some of the functional blocks described might encompass multiple physical components. As well, multiple functional blocks may be contained in a single physical component. It should also be noted that a fixeddigital audio player 116 is not limited to the capabilities and features listed in this description, but may contain a subset of the described features or may contain additional capabilities or features not listed. - Many different types of mobile digital
audio players 115 are suitable for use with the present invention. For example,FIG. 12 illustrates the general architecture for thehandheld player 111. In general, thehandheld player 111 includes aprocessor 155 for executing various software and firmware instructions. The various software and firmware instructions may be stored in read only memory, or ROM, orflash memory 158 or inplayer storage 156, such as a hard drive, flash memory, or removable media. The software and firmware instructions are executed by theprocessor 155 directly from their storage location or are loaded into random access memory orRAM 157 to be executed fromRAM 157 by theprocessor 155.Player storage 156 can also be used for storing digital audio content andother information 101, such as artists, track names, album names, lyrics, and playlists, for later playback and presentation to the user. Typically, thedigital audio content 101 is in some encoded format. Theaudio decoder 162, for example, a Texas Instruments digital signal processor, Model No. TMS320VC5416, decodes thedigital audio content 101 and passes it to the audio digital toanalog converter 163, or DAC. Theaudio DAC 163, for example, a Texas Instruments Model No. TLC320AD77C converts the decoded audio to analog and then providesaudio output 166 from thehandheld player 111. Theaudio output 166 of ahandheld player 111 may be used to drive headphones. - Communication using a wireless network or
wireless communication platform 104 by thehandheld player 111 with thecomputing platforms 103, other mobile digitalaudio players 115, and fixed digitalaudio players 116 is done using an internal or external wireless network interface orwireless communication interface 141. For input from the user, thehandheld player 111 containsuser inputs 165, such as buttons or a touch screen. Theuser input interface 164 handles the actual interface with theuser inputs 165, while interpretation of these inputs are typically handled by software and firmware running on theprocessor 155. For output to the user, thehandheld player 111 may contain adisplay controller 160, for example, an embedded display controller in a Motorola MC68EZ328 controller, which can provide text and possibly graphical output to the user on anLCD display 161. Tying of the functional components andprocessor 155 together is typically done using a system bus andperipheral buses 159. Examples of system andperipheral buses 159 include Universal Serial Bus, commonly referred to as USB, IEEE 1394, commonly referred to as FireWire, and Peripheral Connect Interface, commonly referred to as PCI. It should be noted that some of the functional blocks described might encompass multiple physical components. As well, multiple functional blocks may be contained in a single physical component. It should also be noted that ahandheld player 111 is not limited to the capabilities and features listed in this description, but may contain a subset of the described features or may contain additional capabilities or features not listed. - Another type of mobile
digital audio player 115 is theautomotive player 110, whose general architecture is shown inFIG. 13 . In general, theautomotive player 110 includes aprocessor 155 that is responsible for executing various software and firmware instructions. The various software and firmware components are typically stored in read only memory, or ROM, orflash memory 158 or inplayer storage 156, such as a hard drive, flash memory, or removable media. The software and firmware instructions are executed by theprocessor 155 directly from their storage location or are loaded into random access memory orRAM 157 to be executed fromRAM 157 by theprocessor 155.Player storage 156 can also be used for storing digital audio content andother information 101, such as artists, track names, album names, lyrics, and playlists, for later playback and presentation to the user. - Typically, the
digital audio content 101 is in some encoded format. Theaudio decoder 162 decodes thedigital audio content 101 and passes it to the audio digital toanalog converter 163 or DAC. Theaudio DAC 163 converts the decoded audio to analog and then providesaudio output 167 from theautomotive player 110. Theaudio output 167 of anautomotive player 110 typically feeds a conventional audio amplifier, which then drives the car speakers. Communication using a wireless network orwireless communication platform 104 by theautomotive player 110 withcomputing platforms 103, other mobile digitalaudio players 115, and fixed digitalaudio players 116 is done using an internal or external wireless network interface orwireless communication interface 141. - For input from the user, the
automotive player 110 containsuser inputs 165, such as buttons or a touch screen. Theuser input interface 164 handles the actual interface with theuser inputs 165, while interpretation of these inputs are typically handled by software and firmware running on theprocessor 155. In addition, anautomotive player 110 may support voice commands for user input. If voice commands are supported, amicrophone 174 is used to feed analog audio to the audio analog todigital converter 173, which converts the analog audio to digital. Then, theaudio capture hardware 172 and theprocessor 155 will interpret the voice commands from the user. For output to the user, theautomotive player 110 may contain adisplay controller 160, which can provide text and possibly graphical output to the user on anLCD display 161. Tying of the functional components andprocessor 155 together may be accomplished by way of a system bus andperipheral buses 159. Examples of suitable system andperipheral buses 159 include Universal Serial Bus, commonly referred to as USB, IEEE 1394, commonly referred to as FireWire, and Peripheral Connect Interface, commonly referred to as PCI. - It should be noted that some of the functional blocks described might encompass multiple physical components. As well, multiple functional blocks may be contained in a single physical component. It should also be noted that an
automotive player 110 is not limited to the capabilities and features listed in this description, but may contain a subset of the described features or may contain additional capabilities or features not listed. - There are many different types of fixed digital
audio players 116.FIG. 14 demonstrates the general architecture for arack player 113. In general, arack player 113 includes aprocessor 155 that is responsible for executing various software and firmware instructions. The various software and firmware instructions may be stored in read only memory, or ROM, orflash memory 158 or inplayer storage 156, such as a hard drive, flash memory, or removable media. The software and firmware instructions may be executed by theprocessor 155 directly from their storage location or loaded into random access memory orRAM 157 to be executed fromRAM 157 by theprocessor 155.Player storage 156 can also be used for storing digital audio content andother information 101, such as artists, track names, album names, lyrics, and playlists, for later playback and presentation to the user. Typically, thedigital audio content 101 is in some encoded format. Theaudio decoder 162 decodes thedigital audio content 101 and passes it to the audio digital toanalog converter 163, or DAC. Theaudio DAC 163 converts the decoded audio to analog and then providesaudio output 167 from therack player 113. Theaudio output 167 of arack player 113 typically is passed to astereo system 114. Communication using a wireless network orwireless communication platform 104 by therack player 113 withcomputing platforms 103, mobile digitalaudio players 115, and other fixed digitalaudio players 116 is done using an internal or external wireless network interface orwireless communication interface 141. For input from the user, therack player 113 containsuser inputs 165, such as buttons or a touch screen. Therack player 113 may also receiveinfrared input 168 from a remote control. Theuser input interface 164 handles the actual interface with theuser inputs 165 and theinfrared input 168, while interpretation of these inputs are typically handled by software and firmware running on theprocessor 155. For output to the user, therack player 113 may contain adisplay controller 160, which can provide text and possibly graphical output to the user on anLCD display 161. Tying connection of the functional components andprocessor 155 together may be accomplished by way of a system bus andperipheral buses 159. Examples of suitable system andperipheral buses 159 include Universal Serial Bus, commonly referred to as USB, IEEE 1394, commonly referred to as FireWire, and Peripheral Connect Interface, commonly referred to as PCI. - It should be noted that some of the functional blocks described might encompass multiple physical components. As well, multiple functional blocks may be contained in a single physical component. It should also be noted that a
rack player 113 is not limited to the capabilities and features listed in this description, but may contain a subset of the described features or may contain additional capabilities or features not listed. - Another type of fixed
digital audio player 116 is the stand-alone player 112, whose general architecture is shown inFIG. 15 . In general, a stand-alone player 112 includes aprocessor 155 that is responsible for executing various software and firmware instructions. The various software and firmware components are typically stored in read only memory, or ROM, orflash memory 158 or inplayer storage 156, such as a hard drive, flash memory, or removable media. The software and firmware components are executed by theprocessor 155 directly from their storage location or are loaded into random access memory orRAM 157 to be executed fromRAM 157 by theprocessor 155.Player storage 156 can also be used for storing digital audio content andother information 101, such as artists, track names, album names, lyrics, and playlists, for later playback and presentation to the user. Typically, thedigital audio content 101 is in some encoded format. Theaudio decoder 162 decodes thedigital audio content 101 and passes it to the audio digital toanalog converter 163, or DAC. Theaudio DAC 163 converts the decoded audio to analog. The analog audio from a stand-alone player 112 typically directly drivesspeakers 170 attached to the stand-alone player 112. Communication using a wireless network orwireless communication platform 104 by the stand-alone player 112 withcomputing platforms 103, mobile digitalaudio players 115, and other fixed digitalaudio players 116 is done using an internal or external wireless network interface orwireless communication interface 141. For input from the user, the stand-alone player 112 containsuser inputs 165, such as buttons or a touch screen. The stand-alone player 112 may also receiveinfrared input 168 from a remote control. Theuser input interface 164 handles the actual interface with theuser inputs 165 and theinfrared input 168, while interpretation of these inputs are typically handled by software and firmware running on theprocessor 155. For output to the user, the stand-alone player 112 may contain adisplay controller 160, which can provide text and possibly graphical output to the user on anLCD display 161. Connection of the functional components andprocessor 155 together is typically done using a system bus andperipheral buses 159. Examples of suitable system andperipheral buses 159 include Universal Serial Bus, commonly referred to as USB, IEEE 1394, commonly referred to as FireWire, and Peripheral Connect Interface, commonly referred to as PCI. - It should be noted that some of the functional blocks described might encompass multiple physical components. As well, multiple functional blocks may be contained in a single physical component. It should also be noted that a stand-
alone player 112 is not limited to the capabilities and features listed in this description, but may contain a subset of the described features or may contain additional capabilities or features not listed. -
FIGS. 16 to 20 provide flow diagrams for the audio gateway embodiment of this invention. In these flow diagrams, the software is assumed to be running in a multitasking environment, with each of the flow diagrams representing a particular independently running task or process. However, it should be noted that these flow diagrams represent only one of many different ways to implement the key software functionality for the audio gateway and that many other implementations are possible, including those which do not require a multitasking environment. -
FIG. 16 provides the flow diagram of the message handler for the audio gateway. In general, the message handler takes the messages received fromother computing platforms 103, mobile digitalaudio players 115, and fixed digitalaudio players 116 on the wireless network orwireless communication platform 104 and queues these messages for use by other processes or handles them itself, depending on the message type. In this embodiment, the message handler is a continuously running process. The step, “Start” 200, represents the beginning of the message handling process. The message handler checks if there is a message received instep 201. - If a message has been received, the message handler then checks to see what type of message it is, among many possible types, as indicated in steps 202-212. After the message handler determines the type of message, an appropriate response is queued and the system returns to step 201 and checks for additional messages. If the message is a broadcast response message from a
player 202, then the message handler queues thebroadcast response message 203. If the message is a query response message from aplayer 204, then the message handler queues the query response message instep 205. If the message is a poll response message from aplayer 206, then the message handler queues the poll response message instep 207. If the message is a playlist response message from aplayer 208, then the message handler queues the playlist response message instep 209. If the message is a content response message from aplayer 210, then the message handler queues the content response message instep 211. If the message is a content acknowledge message from aplayer 212, then the message handler queues the content acknowledge message instep 213. If the message was none of those previously checked for, the message handler handles or queues any other messages as necessary 214. - Discovery of mobile digital
audio players 115 and fixed digitalaudio players 116 within range of the audio gateway, on the wireless network orwireless communication platform 104, is an important capability with respect to this invention.FIG. 17 provides the flow diagram for discovery by the audio gateway of mobile digitalaudio players 115 and fixed digitalaudio players 116. In this example, the audio gateway discovery handler is a continuously running process. The step “Start” 220, represents the beginning of the discovery handling process. In order to get a message response from the mobile digitalaudio players 115 and fixed digitalaudio players 116, the discovery handler sends a broadcast for players message instep 221. The discovery handler then waits, with a timeout, for example, 5 seconds, for a broadcast response message from any players instep 222. The discovery handler then checks if there is a player broadcast response message in the queue instep 223. If there is no response, then the discovery/handler broadcasts again for players. If there is a response, then the discovery handler sends a query player message to a responding player instep 224 to get information about the type of player that has responded. The discovery handler then waits, with some timeout, for a player query response message instep 225 from the player that previously responded to the broadcast. The discovery handler then checks if there is a query response message in the queue instep 226. If there is no response, then the discovery handler broadcasts again for players. If there is a response, then the discovery handler checks the information returned in the query response message to see if the player is already known instep 227. If the player is already known, then the discovery handler broadcasts again for players. However, a player is unlikely to respond to a broadcast from an audio gateway when the player and audio gateway already know about each other. If the player is not already known, then the discovery handler adds the player to the list of players in proximity instep 228 of the audio gateway. Finally, the discovery handler flags the new player in proximity for playlist continuation instep 229 and for content synchronization instep 230. This allows the playlist continuation handler in the audio gateway to capture the current playlist and current selection from this new player for possible broadcast to other players. Also, this allows the content synchronization handler in the audio gateway to automatically download digital audio content andother information 101 cached on the audio gateway to the new player. - The flow diagram for audio gateway detection of dropout of players is shown in
FIG. 18 . The dropout detection handler in the audio gateway polls players that are known to be in proximity in order to see if any of the players has possibly gone out of range of the wireless network orwireless communication platform 104 or has been turned off. In this example, the dropout detection handler is a continuously running process. The step, “Start” 240, represents the beginning of the dropout detection handling process. The dropout detection handler checks the list of players inproximity 241 maintained by the audio gateway. If there are players in proximity as determined instep 242, then the dropout detection handler sends a poll message to the next player in proximity in the proximity list instep 243. This allows all the players in the list of players in proximity to be checked in a sequential manner. Then the dropout detection handler waits, with some timeout, for a poll response message from the player instep 244 that was sent the poll message instep 243. If there is no poll response message from the player in the queue instep 245 then the dropout detection handler checks if the player is already flagged as possibly being out of range instep 246 of the wireless network orwireless communication platform 104. If the player is not already flagged as possibly out ofrange 246, then the dropout detection handler flags that the player is possibly out of range instep 247 and checks the list of players in proximity again. If the player is already flagged as possibly out of range instep 246, then the dropout detection handler removes the player from the list of players in proximity instep 248 and checks the list of players in proximity instep 241 again. If the player poll response message is in the queue instep 245, then the dropout detection handler clears the possibly out of range flag instep 249 for the player in the list of players in proximity. Next, the dropout detection handler checks if the player is requesting content synchronization instep 250, based on information passed in the poll response message from the player. If the player is requesting content synchronization, then the dropout detection handler flags the player for content synchronization instep 251 in the list of players in proximity. The content synchronization handler uses this information when deciding which players to update for digital audio content andother information 101. Once the player is flagged for content synchronization or the player is not requesting content synchronization, then the dropout detection handler checks if the player is requesting playlist continuation instep 252, based on information passed in the poll response message from the player. If the player is requesting playlist continuation, then the dropout detection handler flags the player for playlist continuation instep 253 in the list of players in proximity. The playlist continuation handler uses this information when deciding which players to update the playlist and current selection for. Once the player is flagged for playlist continuation instep 253 or the player is not requesting playlist continuation instep 252, then the dropout detection handler checks the list of players in proximity instep 241 again. - The flow diagram for audio gateway content synchronization is shown in
FIG. 19 , with content synchronization being a key capability of the invention. The content synchronization handler in the audio gateway checks for players that need content synchronization. Content synchronization involves updating or adding digital audio content andother information 101 to a player when the audio gateway has digital audio content andother information 101 that is not contained on the player. This may be handled automatically when the player has recently been discovered as being in proximity by the gateway discovery handler or the player directly requests content synchronization through poll response messages to the gateway. In this example, the content synchronization handler is a continuously running process. The step, “Start” 260, represents the beginning of the content synchronization handling process. The content synchronization handler checks the list of players in proximity instep 261 maintained by the gateway. If there are players in proximity flagged for content synchronization instep 262, then the content synchronization handler sends a query player for content message to the player instep 263 that is flagged for content synchronization. Next, the content synchronization handler waits, with some timeout, for a player content response message instep 264. If there is no content response message in the queue instep 265 from the player that was sent the query player for content message instep 263, then the content synchronization handler clears the content synchronization flag for the player in the proximity list instep 266 and checks the list of players in proximity again. If there is a content response message in the queue instep 265 from the player that was sent the query player for content message, then the gateway compares the digital audio content in the player with the digital audio content in the gateway instep 267. The player's digital audio content information is contained in the content response message sent to the gateway by the player. Next, the content synchronization handler checks if there is any content in the gateway that is not on the player instep 268. If the player content is properly synchronized with the gateway, then the content synchronization handler clears the content synchronization flag for the player in the proximity list and checks the list of players in proximity instep 261 again. If there is content on the gateway that is not on the player instep 268, then the content synchronization handler checks if there is storage on the player for the new content instep 269. The available storage on the player is provided in the content response message that the player sent to the gateway. If there is not sufficient storage on the player for the new content instep 269, then the content synchronization handler clears the content synchronization flag for the player in the proximity list instep 266 and checks the list of players in proximity instep 261 again. If there is storage on the player for the new content as determined instep 269, then the content synchronization handler sends the content data to the player instep 270. Next, the content synchronization handler waits, with some timeout, for the content acknowledge message from the player instep 271. If there is no content acknowledge message in the queue instep 272, then the content synchronization handler clears the content synchronization flag for the player in the proximity list instep 266 and checks the list of players in proximity instep 261 again. If there is a content acknowledge message in the queue from the player, then the content synchronization handler checks to see, from the compare of content in the player with content in the gateway, if there is more content to send to the player instep 273. If there is more content to send to the player then the content synchronization handler checks again if there is storage on the player for the new content instep 269, and so on until there is no more content to pass from the gateway to the player. If there is no more content to send to the player, then the content synchronization handler clears the content synchronization flag for the player in the proximity list instep 266 and checks the list of players in proximity instep 261 again. - The flow diagram for audio gateway playlist continuation is shown in
FIG. 20 , with playlist continuation being a key capability of the invention. The playlist continuation handler in the audio gateway checks for propagation of the playlist and current playlist selection from one mobiledigital audio player 115 or fixeddigital audio player 116 to all other mobile digitalaudio players 115 and fixed digitalaudio players 116 in proximity. Playlist continuation involves seamless continuation of playback of digitalaudio content 101 from a particular playlist as a user moves from one mobiledigital audio player 115 or fixeddigital audio player 116 to another. This may be handled automatically when the gateway discovery handler discovers a player as being in proximity, where the player is currently playing digitalaudio content 101. The player itself may also directly request playlist continuation through poll response messages to the gateway. - In this example, the playlist continuation handler is a continuously running process. The step, “Start” 280, represents the beginning of the playlist continuation handling process. The playlist continuation handler checks the list of players in proximity in
step 281 maintained by the gateway. If there are players in proximity flagged for playlist continuation instep 282, then the playlist continuation handler sends a query player for playlist message to the player instep 283 that is flagged for playlist continuation. Next, the playlist continuation handler waits, with some timeout, for a player playlist response message instep 284. If there is no playlist response message in the queue instep 285 from the player that was sent the query player for playlist message instep 283, then the playlist continuation handler clears the playlist continuation flag for the player in the proximity list instep 286 and checks the list of players in proximity again. If there is a playlist response message in the queue as determined instep 285 from the player that was sent the query player for playlist message instep 283, then the gateway checks the playlist response message to see if the playlist and current position within the playlist, both of which are contained in the playlist response message, are valid instep 287. If the playlist and current position are not valid, then the playlist continuation handler clears the playlist continuation flag for the player in the proximity list instep 286 and checks the list of players in proximity again. If the playlist and current position in the playlist are valid as determined instep 287, then the playlist continuation handler checks the list of players in proximity instep 288. If there are any other players in proximity as determined instep 289, then the playlist continuation handler sends a broadcast playlist and current position message to all other players in proximity instep 290. After the playlist continuation handler sends a broadcast playlist and current position message to all other players in proximity instep 290 or if there are no other players in proximity, then the playlist continuation handler clears the playlist continuation flag for the player in the proximity list instep 286 and checks the list of players in proximity instep 281 again. -
FIGS. 21-27 provide flow diagrams for the various digital audio players. In these flow diagrams, the software is assumed to be running in a multitasking environment, with each of the flow diagrams representing a particular independently running task or process. However, it should be noted that these flow diagrams represent only one of many different ways to implement the key software functionality for the player and that many other implementations are possible, including those which do not require a multitasking environment. -
FIG. 21 is a flow diagram of the message handler for a player. In general, the message handler takes the messages received from computingplatforms 103 acting as audio gateways and from other mobile digitalaudio players 115 and fixed digitalaudio players 116, on a wireless network orwireless communication platform 104, and queues these messages for use by other processes or handles them itself, depending on the message type. In this example, the message handler is a continuously running process. The step, “Start” 300, represents the beginning of the message handling process. The message handler checks if there is a message received instep 301. If there is a message received, the message handler then checks to see what type of message it is, among many possible types. - After the message handler determines the type of message an appropriate response is queued and the system returns to step 301 and checks for additional messages. If the message is a broadcast for players message from a gateway as determined in
step 302, then the message handler queues the broadcast for players message instep 303. After the message handler queues the broadcast for players message instep 303, the message handler checks for more messages. If the message is a query player message from a gateway as determined instep 304, then the message handler queues the query player message instep 305. After the message handler queues the query player message instep 305, the message handler checks for more messages. If the message is a poll message from a gateway as determined in 306, then the message handler queues the poll message instep 307. After the message handler queues the poll message instep 307, the message handler checks for more messages. If the message is a query player for content message from a gateway as determined in 308, then the message handler queues the query player for content message instep 309. After the message handler queues the query player for content message instep 309, the message handler checks for more messages. If the message is content data from a gateway instep 310, then the message handler stores the content in local player storage instep 311. The message handler also sends a content acknowledge message to the gateway instep 312. After the message handler sends a content acknowledge message to the gateway instep 312, the message handler checks for more messages. If the message is a query player for playlist message from a gateway as determined instep 313, then the message handler queues the query player for playlist message instep 314. After the message handler queues the query player for playlist message instep 314, the message handler checks for more messages. If the message is a broadcast playlist message from a gateway as determined instep 315, then the message handler queues the broadcast playlist message instep 316. After the message handler queues the broadcast playlist message instep 316, the message handler checks for more messages. Finally, if the message was none of those previously checked for, the message handler handles or queues any other messages as necessary instep 317 and then the message handler checks for more messages. - Discovery by the audio gateway of mobile digital
audio players 115 and fixed digitalaudio players 116 is an important capability with respect to this invention.FIGS. 22 and 23 provide the flow diagrams for discovery responses by the player when the player detects discovery attempts by an audio gateway. In this example, the player discovery broadcast response handler and the player discovery query response handler are continuously running processes. The step, “Start” 320, represents the beginning of the discovery broadcast response handling process. The discovery broadcast response handler first checks for a broadcast for players message in the queue instep 321 from a gateway. If there is a broadcast for players message in the queue as determined in 322, then the discovery broadcast response handler checks if the gateway is already in proximity of the player instep 323. The discovery broadcast response handler is able to get information about the gateway from the broadcast for players message received from the gateway and can compare that information with information saved by the discovery query response handler for any gateway in proximity. If the gateway is not already in proximity as determined instep 323, then the discovery broadcast response handler sends a broadcast acknowledge message to the gateway instep 324. After the discovery broadcast response handler sends the broadcast acknowledge message to the gateway instep 324, or if the gateway is already in proximity as determined instep 323, or if there is no broadcast for players message in the queue as determined instep 322, then the discovery broadcast response handler checks for a broadcast for players message in the queue again. - The step, “Start” 330 (
FIG. 23 ), represents the beginning of the discovery query response handling process. The discovery query response handler first checks for query player messages from a gateway in the queue instep 331. If there is a query player message in the queue as determined instep 332, then the discovery query response handler sends a query response message to the gateway instep 333 that sent the query player message. Then the discovery query response handler saves that the gateway is in proximity instep 334 from information obtained from the query player message from the gateway. After the discovery query response handler saves that the gateway is in proximity as determined instep 334 or if there is no query player message in the queue as determined instep 332, then the discovery query response handler checks for a query player message from a gateway in the queue again. - The flow diagram for player dropout detection of an audio gateway is shown in
FIG. 24 . The dropout detection handler in the player watches for poll messages from an audio gateway in order to see if the player has gone out of range of the gateway. In this example, the player dropout detection handler is a continuously running process. Step, “Start” 340, represents the beginning of the player dropout detection handling process. The player dropout detection handler checks if the player is in proximity of a gateway instep 341. The player discovery query response handler, shown inFIG. 23 , saves information about a gateway that is in proximity. If the player is not in proximity of a gateway as determined instep 341, then the player dropout detection handler just continues to check if the player is in proximity of a gateway. If the player is in proximity of a gateway as determined instep 341, then the player dropout detection handler waits, with some timeout, for a poll response message from the gateway instep 342 that is in proximity. The timeout period is significantly more than the polling period used by the gateway. If there is not a poll message in the queue as determined instep 343 from the gateway that is in proximity, then the player dropout detection handler checks if the gateway is already flagged as possibly out of range instep 344. If the gateway is not already flagged as possibly out of range as determined instep 344, then the player dropout detection handler flags that the gateway is possibly out of range instep 345 and then continues to check if the player is in proximity of a gateway instep 341. If the gateway is already flagged as possibly out of range as determined instep 344, then the player dropout detection handler removes the gateway as being in proximity instep 346 and then continues to check if the player is in proximity of a gateway instep 341. If there is a poll message in the queue as determined in 343 from the gateway that is in proximity, then the player dropout detection handler checks if the user requested content synchronization of the player instep 347. If the user did request content synchronization of the player as determined instep 347, then the player dropout detection handler flags a content synchronization request in the poll response message instep 348 to the gateway in proximity. If the user did not request content synchronization of the player, then the player dropout detection handler skips flagging of content synchronization in the poll response message instep 348. Next, the player dropout detection handler checks if the user requested playlist continuation for the player instep 349. If the user did request playlist continuation for the player as determined instep 349, then the player dropout detection handler flags a playlist continuation request in the poll response message instep 350 to the gateway in proximity. If the user did not request playlist continuation for the player as determined instep 349, then the player dropout detection handler skips flagging of playlist continuation in the poll response message instep 350. Next, the player dropout detection handler sends the poll response message to the gateway instep 351 that is in proximity and sent the poll message. Next, the player dropout detection handler clears the gateway possibly out of range flag instep 352 if it was set for the gateway in proximity. Then the player dropout detection handler continues to check if the player is in proximity of a gateway as determined instep 341. - The flow diagram for player content synchronization response is shown in
FIG. 25 , with content synchronization being a key capability of the invention. The content synchronization response handler in the player responds to content queries from a gateway. In this example, the content synchronization response handler is a continuously running process. The step, “Start” 360, represents the beginning of the content synchronization response handling process. The content synchronization response handler checks for a query player content message in the queue instep 361 from a gateway. If there is a query player content message in the queue as determined instep 362, then the content synchronization response handler builds a content response message by first getting a list of all the digital audio content on the player in 363. Next, the content synchronization response handler determines the amount of available storage space on the player instep 364 for additional digital audio content. Finally, the content synchronization response handler sends a player content response message instep 365 to the gateway that sent the query player content message. The player content response message contains the list of all the digital audio content on the player as well as the amount of available space on the player. Once the content synchronization response handler sends a player content response message, as determined instep 365, to the gateway that sent the query player content message or there is no query player content message in the queue instep 362, then the content synchronization response handler checks for a query player content message in the queue again. -
FIGS. 26 and 27 represent flow diagrams for playlist continuation response and playlist continuation updating by the player when the player detects playlist continuation query and updating attempts by an audio gateway. Playlist continuation is a key capability of the invention. In this example, the player playlist response handler and the player playlist update handler are continuously running processes. The step, “Start” 380, represents the beginning of the playlist response handling process. First, the playlist response handler checks for a query player for playlist message in the queue instep 381 from a gateway in proximity. If there is a query player for playlist message in the queue as determined instep 382, then the playlist response handler gets the current playlist and current position within the playlist instep 383 and puts this information in a playlist response message. Next, the playlist response handler sends the playlist response message to the gateway instep 384 that sent the query player for playlist message. After the playlist response handler sends the playlist response message to the gateway as determined 384 or there is not a query player for playlist message in the queue as determined instep 382, then the playlist response handler checks for a query player forplaylists message 381 in the queue again. - The step, “Start” 390 (
FIG. 27 ), represents the beginning of the playlist update handling process. First the playlist update handler checks for a broadcast playlist message instep 391 in the queue from a gateway in proximity. If there is not a broadcast playlist message in the queue as determine instep 392, then the playlist update handler just checks for a broadcast playlist message in the queue again. If there is a broadcast playlist message in the queue, as determined instep 392, then the playlist update handler checks if the playlist already exists on the player instep 393. The playlist information is found in the broadcast playlist message. If the playlist already exists on the player, as determined instep 393, then the playlist update handler activates the playlist and sets the current position within the playlist instep 394 on the player. The current position within the playlist is found in the broadcast playlist message. Then the playlist update handler checks for a broadcast playlist message instep 391 in the queue again. If the playlist does not already exist on the player as determined instep 393, then the playlist update handler saves the new playlist on the player instep 395. Next, the playlist update handler checks if the player is currently playing instep 396. If the player is not currently playing, then the playlist update handler sets the new playlist as the current playlist instep 397 and sets the current position within the playlist instep 394. If the player is currently playing, then the playlist update handler notifies the user that a new playlist is available instep 398. This allows the user to decide to play the new playlist or continue with a current playlist. Next, the playlist update handler checks for a broadcast playlist message instep 391 in the queue again. - Obviously, many modifications and variations of the present invention are possible in light of the above teachings. Thus, it is to be understood that, within the scope of the appended claims, the invention may be practiced otherwise than as specifically described above.
Claims (6)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/245,792 US20140329456A1 (en) | 2001-05-16 | 2014-04-04 | Proximity synchronization of audio content among multiple playback and storage devices |
US14/312,294 US9160471B2 (en) | 2001-05-16 | 2014-06-23 | Synchronization among multiple playback and storage devices |
US14/828,879 US9407385B2 (en) | 2001-05-16 | 2015-08-18 | Synchronization among multiple playback and storage devices |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/858,415 US7620363B2 (en) | 2001-05-16 | 2001-05-16 | Proximity synchronization of audio content among multiple playback and storage devices |
US12/576,465 US20100173579A1 (en) | 2001-05-16 | 2009-10-09 | Proximity synchronization of audio content among multiple playback and storage devices |
US13/101,581 US10033475B2 (en) | 2001-05-16 | 2011-05-05 | Proximity synchronization of audio content among multiple playback and storage devices |
US13/621,070 US8731459B2 (en) | 2001-05-16 | 2012-09-15 | Sharing digital content among multiple devices |
US14/245,792 US20140329456A1 (en) | 2001-05-16 | 2014-04-04 | Proximity synchronization of audio content among multiple playback and storage devices |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/621,070 Continuation US8731459B2 (en) | 2001-05-16 | 2012-09-15 | Sharing digital content among multiple devices |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/312,294 Continuation US9160471B2 (en) | 2001-05-16 | 2014-06-23 | Synchronization among multiple playback and storage devices |
Publications (1)
Publication Number | Publication Date |
---|---|
US20140329456A1 true US20140329456A1 (en) | 2014-11-06 |
Family
ID=25328266
Family Applications (8)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/858,415 Expired - Lifetime US7620363B2 (en) | 2001-05-16 | 2001-05-16 | Proximity synchronization of audio content among multiple playback and storage devices |
US12/576,465 Abandoned US20100173579A1 (en) | 2001-05-16 | 2009-10-09 | Proximity synchronization of audio content among multiple playback and storage devices |
US13/101,581 Expired - Lifetime US10033475B2 (en) | 2001-05-16 | 2011-05-05 | Proximity synchronization of audio content among multiple playback and storage devices |
US13/621,070 Expired - Lifetime US8731459B2 (en) | 2001-05-16 | 2012-09-15 | Sharing digital content among multiple devices |
US13/621,071 Expired - Lifetime US8731460B2 (en) | 2001-05-16 | 2012-09-15 | Synchronization of digital content among multiple devices |
US14/245,792 Abandoned US20140329456A1 (en) | 2001-05-16 | 2014-04-04 | Proximity synchronization of audio content among multiple playback and storage devices |
US14/312,294 Expired - Fee Related US9160471B2 (en) | 2001-05-16 | 2014-06-23 | Synchronization among multiple playback and storage devices |
US14/828,879 Expired - Lifetime US9407385B2 (en) | 2001-05-16 | 2015-08-18 | Synchronization among multiple playback and storage devices |
Family Applications Before (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/858,415 Expired - Lifetime US7620363B2 (en) | 2001-05-16 | 2001-05-16 | Proximity synchronization of audio content among multiple playback and storage devices |
US12/576,465 Abandoned US20100173579A1 (en) | 2001-05-16 | 2009-10-09 | Proximity synchronization of audio content among multiple playback and storage devices |
US13/101,581 Expired - Lifetime US10033475B2 (en) | 2001-05-16 | 2011-05-05 | Proximity synchronization of audio content among multiple playback and storage devices |
US13/621,070 Expired - Lifetime US8731459B2 (en) | 2001-05-16 | 2012-09-15 | Sharing digital content among multiple devices |
US13/621,071 Expired - Lifetime US8731460B2 (en) | 2001-05-16 | 2012-09-15 | Synchronization of digital content among multiple devices |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/312,294 Expired - Fee Related US9160471B2 (en) | 2001-05-16 | 2014-06-23 | Synchronization among multiple playback and storage devices |
US14/828,879 Expired - Lifetime US9407385B2 (en) | 2001-05-16 | 2015-08-18 | Synchronization among multiple playback and storage devices |
Country Status (1)
Country | Link |
---|---|
US (8) | US7620363B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9407385B2 (en) | 2001-05-16 | 2016-08-02 | Facebook, Inc. | Synchronization among multiple playback and storage devices |
WO2016202217A1 (en) * | 2015-06-19 | 2016-12-22 | 阿里巴巴集团控股有限公司 | Method for obtaining audio files, and method, device and system for sending update notification |
US9699015B2 (en) | 2001-05-16 | 2017-07-04 | Facebook, Inc. | Continuous digital content presentation across multiple devices |
Families Citing this family (251)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020002039A1 (en) | 1998-06-12 | 2002-01-03 | Safi Qureshey | Network-enabled audio device |
JP2001093226A (en) * | 1999-09-21 | 2001-04-06 | Sony Corp | Information communication system and method, and information communication device and method |
US8645137B2 (en) | 2000-03-16 | 2014-02-04 | Apple Inc. | Fast, language-independent method for user authentication by voice |
US8868023B2 (en) * | 2008-01-04 | 2014-10-21 | 3D Radio Llc | Digital radio systems and methods |
US8732232B2 (en) * | 2001-05-16 | 2014-05-20 | Facebook, Inc. | Proximity synchronizing audio playback device |
US20030097478A1 (en) * | 2001-10-08 | 2003-05-22 | Imagearray, Ltd. | Method and system for synchronizing a presentation |
US7711774B1 (en) | 2001-11-20 | 2010-05-04 | Reagan Inventions Llc | Interactive, multi-user media delivery system |
US8504652B2 (en) | 2006-04-10 | 2013-08-06 | Portulim Foundation Llc | Method and system for selectively supplying media content to a user and media storage device for use therein |
US8122466B2 (en) | 2001-11-20 | 2012-02-21 | Portulim Foundation Llc | System and method for updating digital media content |
US8909729B2 (en) | 2001-11-20 | 2014-12-09 | Portulim Foundation Llc | System and method for sharing digital media content |
US7503059B1 (en) | 2001-12-28 | 2009-03-10 | Rothschild Trust Holdings, Llc | Method of enhancing media content and a media enhancement system |
US20030132953A1 (en) * | 2002-01-16 | 2003-07-17 | Johnson Bruce Alan | Data preparation for media browsing |
US7159174B2 (en) | 2002-01-16 | 2007-01-02 | Microsoft Corporation | Data preparation for media browsing |
US8151259B2 (en) * | 2006-01-03 | 2012-04-03 | Apple Inc. | Remote content updates for portable media devices |
US7433546B2 (en) | 2004-10-25 | 2008-10-07 | Apple Inc. | Image scaling arrangement |
US7680849B2 (en) * | 2004-10-25 | 2010-03-16 | Apple Inc. | Multiple media type synchronization between host computer and media device |
JP2004022139A (en) * | 2002-06-19 | 2004-01-22 | Pioneer Electronic Corp | Electronic device set, first and second electronic device, and computer program |
US7627343B2 (en) * | 2003-04-25 | 2009-12-01 | Apple Inc. | Media player system |
US7831199B2 (en) | 2006-01-03 | 2010-11-09 | Apple Inc. | Media data exchange, transfer or delivery for portable electronic devices |
US7719830B2 (en) * | 2005-05-09 | 2010-05-18 | Apple Inc. | Universal docking station for hand held electronic devices |
US7724716B2 (en) | 2006-06-20 | 2010-05-25 | Apple Inc. | Wireless communication system |
US11650784B2 (en) | 2003-07-28 | 2023-05-16 | Sonos, Inc. | Adjusting volume levels |
US11294618B2 (en) | 2003-07-28 | 2022-04-05 | Sonos, Inc. | Media player system |
US10613817B2 (en) * | 2003-07-28 | 2020-04-07 | Sonos, Inc. | Method and apparatus for displaying a list of tracks scheduled for playback by a synchrony group |
US11106425B2 (en) | 2003-07-28 | 2021-08-31 | Sonos, Inc. | Synchronizing operations among a plurality of independently clocked digital data processing devices |
US8086752B2 (en) | 2006-11-22 | 2011-12-27 | Sonos, Inc. | Systems and methods for synchronizing operations among a plurality of independently clocked digital data processing devices that independently source digital data |
US11106424B2 (en) | 2003-07-28 | 2021-08-31 | Sonos, Inc. | Synchronizing operations among a plurality of independently clocked digital data processing devices |
US8234395B2 (en) * | 2003-07-28 | 2012-07-31 | Sonos, Inc. | System and method for synchronizing operations among a plurality of independently clocked digital data processing devices |
US8290603B1 (en) | 2004-06-05 | 2012-10-16 | Sonos, Inc. | User interfaces for controlling and manipulating groupings in a multi-zone media system |
US7231177B2 (en) * | 2003-11-13 | 2007-06-12 | Delphi Technologies, Inc. | Audio system with first and second units having wireless interface, and audio recievers therefor |
US9977561B2 (en) | 2004-04-01 | 2018-05-22 | Sonos, Inc. | Systems, methods, apparatus, and articles of manufacture to provide guest access |
US9374607B2 (en) | 2012-06-26 | 2016-06-21 | Sonos, Inc. | Media playback system with guest access |
US7895378B2 (en) | 2004-04-27 | 2011-02-22 | Apple Inc. | Method and system for allowing a media player to transfer digital audio to an accessory |
US7529870B1 (en) | 2004-04-27 | 2009-05-05 | Apple Inc. | Communication between an accessory and a media player with multiple lingoes |
US8117651B2 (en) | 2004-04-27 | 2012-02-14 | Apple Inc. | Method and system for authenticating an accessory |
US7529872B1 (en) | 2004-04-27 | 2009-05-05 | Apple Inc. | Communication between an accessory and a media player using a protocol with multiple lingoes |
US7826318B2 (en) | 2004-04-27 | 2010-11-02 | Apple Inc. | Method and system for allowing a media player to transfer digital audio to an accessory |
US7673083B2 (en) | 2004-04-27 | 2010-03-02 | Apple Inc. | Method and system for controlling video selection and playback in a portable media player |
US7526588B1 (en) | 2004-04-27 | 2009-04-28 | Apple Inc. | Communication between an accessory and a media player using a protocol with multiple lingoes |
US7441058B1 (en) | 2006-09-11 | 2008-10-21 | Apple Inc. | Method and system for controlling an accessory having a tuner |
US7441062B2 (en) | 2004-04-27 | 2008-10-21 | Apple Inc. | Connector interface system for enabling data communication with a multi-communication device |
US8028038B2 (en) * | 2004-05-05 | 2011-09-27 | Dryden Enterprises, Llc | Obtaining a playlist based on user profile matching |
US20050251565A1 (en) * | 2004-05-05 | 2005-11-10 | Martin Weel | Hybrid set-top box for digital entertainment network |
US8028323B2 (en) | 2004-05-05 | 2011-09-27 | Dryden Enterprises, Llc | Method and system for employing a first device to direct a networked audio device to obtain a media item |
US9826046B2 (en) | 2004-05-05 | 2017-11-21 | Black Hills Media, Llc | Device discovery for digital entertainment network |
US8326951B1 (en) | 2004-06-05 | 2012-12-04 | Sonos, Inc. | Establishing a secure wireless network with minimum human intervention |
US8868698B2 (en) | 2004-06-05 | 2014-10-21 | Sonos, Inc. | Establishing a secure wireless network with minimum human intervention |
US8745132B2 (en) | 2004-09-10 | 2014-06-03 | Silver State Intellectual Technologies, Inc. | System and method for audio and video portable publishing system |
US7706637B2 (en) | 2004-10-25 | 2010-04-27 | Apple Inc. | Host configured for interoperation with coupled portable media player device |
US7525216B2 (en) | 2005-01-07 | 2009-04-28 | Apple Inc. | Portable power source to provide power to an electronic device via an interface |
US7823214B2 (en) | 2005-01-07 | 2010-10-26 | Apple Inc. | Accessory authentication for electronic devices |
US7536565B2 (en) | 2005-01-07 | 2009-05-19 | Apple Inc. | Techniques for improved playlist processing on media devices |
WO2006097903A2 (en) * | 2005-03-18 | 2006-09-21 | Koninklijke Philips Electronics N.V. | Method of synchronization in a mobile system |
US8300841B2 (en) | 2005-06-03 | 2012-10-30 | Apple Inc. | Techniques for presenting sound effects on a portable media player |
US9063941B2 (en) * | 2005-06-03 | 2015-06-23 | Hewlett-Packard Development Company, L.P. | System having an apparatus that uses a resource on an external device |
US7590772B2 (en) | 2005-08-22 | 2009-09-15 | Apple Inc. | Audio status information for a portable electronic device |
US7580255B2 (en) * | 2005-08-24 | 2009-08-25 | Apple Inc. | Docking station for hand held electronic devices |
US8677377B2 (en) | 2005-09-08 | 2014-03-18 | Apple Inc. | Method and apparatus for building an intelligent automated assistant |
US7930369B2 (en) | 2005-10-19 | 2011-04-19 | Apple Inc. | Remotely configured media device |
US8654993B2 (en) | 2005-12-07 | 2014-02-18 | Apple Inc. | Portable audio device providing automated control of audio volume parameters for hearing protection |
US8255640B2 (en) | 2006-01-03 | 2012-08-28 | Apple Inc. | Media device with intelligent cache utilization |
US7673238B2 (en) | 2006-01-05 | 2010-03-02 | Apple Inc. | Portable media device with video acceleration capabilities |
KR100694161B1 (en) * | 2006-02-10 | 2007-03-12 | 삼성전자주식회사 | Method of managing distributed contents and apparatus therefor |
US7848527B2 (en) | 2006-02-27 | 2010-12-07 | Apple Inc. | Dynamic power management in a portable media delivery system |
US7632114B2 (en) * | 2006-03-30 | 2009-12-15 | Apple Inc. | Interface connecter between media player and other electronic devices |
US8006019B2 (en) | 2006-05-22 | 2011-08-23 | Apple, Inc. | Method and system for transferring stored data between a media player and an accessory |
US7643895B2 (en) | 2006-05-22 | 2010-01-05 | Apple Inc. | Portable media device with workout support |
US8073984B2 (en) | 2006-05-22 | 2011-12-06 | Apple Inc. | Communication protocol for use with portable electronic devices |
US9137309B2 (en) | 2006-05-22 | 2015-09-15 | Apple Inc. | Calibration techniques for activity sensing devices |
US20070271116A1 (en) | 2006-05-22 | 2007-11-22 | Apple Computer, Inc. | Integrated media jukebox and physiologic data handling application |
US8358273B2 (en) | 2006-05-23 | 2013-01-22 | Apple Inc. | Portable media device with power-managed display |
US7971071B2 (en) * | 2006-05-24 | 2011-06-28 | Walkoe Wilbur J | Integrated delivery and protection device for digital objects |
US7415563B1 (en) | 2006-06-27 | 2008-08-19 | Apple Inc. | Method and system for allowing a media player to determine if it supports the capabilities of an accessory |
US7913297B2 (en) | 2006-08-30 | 2011-03-22 | Apple Inc. | Pairing of wireless devices using a wired medium |
US7813715B2 (en) | 2006-08-30 | 2010-10-12 | Apple Inc. | Automated pairing of wireless accessories with host devices |
US9318108B2 (en) | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
US7558894B1 (en) | 2006-09-11 | 2009-07-07 | Apple Inc. | Method and system for controlling power provided to an accessory |
US8341524B2 (en) | 2006-09-11 | 2012-12-25 | Apple Inc. | Portable electronic device with local search capabilities |
US7729791B2 (en) | 2006-09-11 | 2010-06-01 | Apple Inc. | Portable media playback device including user interface event passthrough to non-media-playback processing |
US8090130B2 (en) | 2006-09-11 | 2012-01-03 | Apple Inc. | Highly portable media devices |
US8788080B1 (en) | 2006-09-12 | 2014-07-22 | Sonos, Inc. | Multi-channel pairing in a media system |
US8483853B1 (en) | 2006-09-12 | 2013-07-09 | Sonos, Inc. | Controlling and manipulating groupings in a multi-zone media system |
US9202509B2 (en) | 2006-09-12 | 2015-12-01 | Sonos, Inc. | Controlling and grouping in a multi-zone media system |
US9008634B2 (en) * | 2006-10-06 | 2015-04-14 | Napo Enterprises, Llc | System and method for providing media content selections |
US7853198B2 (en) | 2006-10-18 | 2010-12-14 | Microsoft Corporation | Delivering individualized content over a broadcast network |
US20080141157A1 (en) * | 2006-12-06 | 2008-06-12 | Richard Eric Helvick | Over-air content shuffling for mobile electronic device |
US20080162668A1 (en) * | 2006-12-29 | 2008-07-03 | John David Miller | Method and apparatus for mutually-shared media experiences |
US8207906B2 (en) * | 2007-01-08 | 2012-06-26 | Apple Inc. | Antenna insert |
US7589629B2 (en) | 2007-02-28 | 2009-09-15 | Apple Inc. | Event recorder for portable media device |
US7698101B2 (en) * | 2007-03-07 | 2010-04-13 | Apple Inc. | Smart garment |
US8977255B2 (en) | 2007-04-03 | 2015-03-10 | Apple Inc. | Method and system for operating a multi-function portable electronic device using voice-activation |
US8265617B2 (en) * | 2007-04-10 | 2012-09-11 | Research In Motion Limited | Media transfer and control system |
US7881744B2 (en) * | 2007-04-10 | 2011-02-01 | Research In Motion Limited | Media transfer and control system |
EP1981213A1 (en) * | 2007-04-10 | 2008-10-15 | Research In Motion Limited | A media transfer and control system |
JP2009003552A (en) * | 2007-06-19 | 2009-01-08 | Funai Electric Co Ltd | Communication terminal |
WO2009032708A2 (en) * | 2007-09-04 | 2009-03-12 | Apple Inc. | Protocol for remote user interface for portable media device |
JP2009098733A (en) * | 2007-10-12 | 2009-05-07 | Olympus Corp | Information processor, information processing method and information processing program |
US9330720B2 (en) | 2008-01-03 | 2016-05-03 | Apple Inc. | Methods and apparatus for altering audio output signals |
US8047966B2 (en) | 2008-02-29 | 2011-11-01 | Apple Inc. | Interfacing portable media devices and sports equipment |
US8725740B2 (en) | 2008-03-24 | 2014-05-13 | Napo Enterprises, Llc | Active playlist having dynamic media item groups |
US8996376B2 (en) | 2008-04-05 | 2015-03-31 | Apple Inc. | Intelligent text-to-speech conversion |
US10496753B2 (en) | 2010-01-18 | 2019-12-03 | Apple Inc. | Automatically adapting user interfaces for hands-free interaction |
DE102008025531A1 (en) * | 2008-05-28 | 2009-12-03 | Audi Ag | A communication system and method for communicating between communication devices and at least one user of a communication system |
US8554131B2 (en) * | 2008-07-07 | 2013-10-08 | Qualcomm Incorporated | Enhanced notification mechanism for broadcast networks using bit-map vectors |
US20100010997A1 (en) * | 2008-07-11 | 2010-01-14 | Abo Enterprise, LLC | Method and system for rescoring a playlist |
US20100030549A1 (en) | 2008-07-31 | 2010-02-04 | Lee Michael M | Mobile device having human language translation capability with positional feedback |
US8238811B2 (en) | 2008-09-08 | 2012-08-07 | Apple Inc. | Cross-transport authentication |
US8208853B2 (en) | 2008-09-08 | 2012-06-26 | Apple Inc. | Accessory device authentication |
EP2350797A4 (en) * | 2008-11-05 | 2012-11-21 | Hewlett Packard Development Co | Displaying personalized information in a handheld device |
US9959870B2 (en) | 2008-12-11 | 2018-05-01 | Apple Inc. | Speech recognition involving a mobile device |
US20100235762A1 (en) * | 2009-03-10 | 2010-09-16 | Nokia Corporation | Method and apparatus of providing a widget service for content sharing |
US20100235443A1 (en) * | 2009-03-10 | 2010-09-16 | Tero Antero Laiho | Method and apparatus of providing a locket service for content sharing |
US8909803B2 (en) * | 2009-03-16 | 2014-12-09 | Apple Inc. | Accessory identification for mobile computing devices |
US8452903B2 (en) | 2009-03-16 | 2013-05-28 | Apple Inc. | Mobile computing device capabilities for accessories |
US9858925B2 (en) | 2009-06-05 | 2018-01-02 | Apple Inc. | Using context information to facilitate processing of commands in a virtual assistant |
US20120311585A1 (en) | 2011-06-03 | 2012-12-06 | Apple Inc. | Organizing task items that represent tasks to perform |
US10241644B2 (en) | 2011-06-03 | 2019-03-26 | Apple Inc. | Actionable reminder entries |
US10241752B2 (en) | 2011-09-30 | 2019-03-26 | Apple Inc. | Interface for a virtual digital assistant |
US9431006B2 (en) | 2009-07-02 | 2016-08-30 | Apple Inc. | Methods and apparatuses for automatic speech recognition |
US10553209B2 (en) | 2010-01-18 | 2020-02-04 | Apple Inc. | Systems and methods for hands-free notification summaries |
US10276170B2 (en) | 2010-01-18 | 2019-04-30 | Apple Inc. | Intelligent automated assistant |
US10679605B2 (en) | 2010-01-18 | 2020-06-09 | Apple Inc. | Hands-free list-reading by intelligent automated assistant |
US10705794B2 (en) | 2010-01-18 | 2020-07-07 | Apple Inc. | Automatically adapting user interfaces for hands-free interaction |
DE202011111062U1 (en) | 2010-01-25 | 2019-02-19 | Newvaluexchange Ltd. | Device and system for a digital conversation management platform |
US8682667B2 (en) | 2010-02-25 | 2014-03-25 | Apple Inc. | User profiling for selecting user specific voice input processing information |
US10762293B2 (en) | 2010-12-22 | 2020-09-01 | Apple Inc. | Using parts-of-speech tagging and named entity recognition for spelling correction |
US11265652B2 (en) | 2011-01-25 | 2022-03-01 | Sonos, Inc. | Playback device pairing |
US11429343B2 (en) | 2011-01-25 | 2022-08-30 | Sonos, Inc. | Stereo playback configuration and control |
US9262612B2 (en) | 2011-03-21 | 2016-02-16 | Apple Inc. | Device access using voice authentication |
US10057736B2 (en) | 2011-06-03 | 2018-08-21 | Apple Inc. | Active transport based notifications |
US9087060B2 (en) * | 2011-06-03 | 2015-07-21 | Apple Inc. | Partial sort on a host |
US8994660B2 (en) | 2011-08-29 | 2015-03-31 | Apple Inc. | Text correction processing |
US20130054472A1 (en) * | 2011-08-31 | 2013-02-28 | Ncr Corporation | System and method of wirelessly downloading digital media items |
DE102011118077B4 (en) * | 2011-11-04 | 2019-08-01 | Airbus Operations Gmbh | Monitoring the high-frequency environment parameters via wireless network in an aircraft |
US9344292B2 (en) * | 2011-12-30 | 2016-05-17 | Sonos, Inc. | Systems and methods for player setup room names |
US9654821B2 (en) | 2011-12-30 | 2017-05-16 | Sonos, Inc. | Systems and methods for networked music playback |
US10134385B2 (en) | 2012-03-02 | 2018-11-20 | Apple Inc. | Systems and methods for name pronunciation |
US9483461B2 (en) | 2012-03-06 | 2016-11-01 | Apple Inc. | Handling speech synthesis of content for multiple languages |
US9729115B2 (en) | 2012-04-27 | 2017-08-08 | Sonos, Inc. | Intelligently increasing the sound level of player |
US9280610B2 (en) | 2012-05-14 | 2016-03-08 | Apple Inc. | Crowd sourcing information to fulfill user requests |
US9721563B2 (en) | 2012-06-08 | 2017-08-01 | Apple Inc. | Name recognition system |
US9306879B2 (en) | 2012-06-08 | 2016-04-05 | Apple Inc. | Message-based identification of an electronic device |
US9674587B2 (en) | 2012-06-26 | 2017-06-06 | Sonos, Inc. | Systems and methods for networked music playback including remote add to queue |
US9495129B2 (en) | 2012-06-29 | 2016-11-15 | Apple Inc. | Device, method, and user interface for voice-activated navigation and browsing of a document |
US9576574B2 (en) | 2012-09-10 | 2017-02-21 | Apple Inc. | Context-sensitive handling of interruptions by intelligent digital assistant |
US9547647B2 (en) | 2012-09-19 | 2017-01-17 | Apple Inc. | Voice-based media searching |
US9008330B2 (en) | 2012-09-28 | 2015-04-14 | Sonos, Inc. | Crossover frequency adjustments for audio speakers |
US20140129618A1 (en) * | 2012-11-08 | 2014-05-08 | General Instrument Corporation | Method of streaming multimedia data over a network |
US9042827B2 (en) * | 2012-11-19 | 2015-05-26 | Lenovo (Singapore) Pte. Ltd. | Modifying a function based on user proximity |
US10199051B2 (en) | 2013-02-07 | 2019-02-05 | Apple Inc. | Voice trigger for a digital assistant |
US9368114B2 (en) | 2013-03-14 | 2016-06-14 | Apple Inc. | Context-sensitive handling of interruptions |
CN105027197B (en) | 2013-03-15 | 2018-12-14 | 苹果公司 | Training at least partly voice command system |
WO2014144579A1 (en) | 2013-03-15 | 2014-09-18 | Apple Inc. | System and method for updating an adaptive speech recognition model |
US9501533B2 (en) | 2013-04-16 | 2016-11-22 | Sonos, Inc. | Private queue for a media playback system |
US9361371B2 (en) | 2013-04-16 | 2016-06-07 | Sonos, Inc. | Playlist update in a media playback system |
US9247363B2 (en) | 2013-04-16 | 2016-01-26 | Sonos, Inc. | Playback queue transfer in a media playback system |
US9684484B2 (en) | 2013-05-29 | 2017-06-20 | Sonos, Inc. | Playback zone silent connect |
US9582608B2 (en) | 2013-06-07 | 2017-02-28 | Apple Inc. | Unified ranking with entropy-weighted information for phrase-based semantic auto-completion |
WO2014197334A2 (en) | 2013-06-07 | 2014-12-11 | Apple Inc. | System and method for user-specified pronunciation of words for speech synthesis and recognition |
WO2014197336A1 (en) | 2013-06-07 | 2014-12-11 | Apple Inc. | System and method for detecting errors in interactions with a voice-based digital assistant |
WO2014197335A1 (en) | 2013-06-08 | 2014-12-11 | Apple Inc. | Interpreting and acting upon commands that involve sharing information with remote devices |
US10176167B2 (en) | 2013-06-09 | 2019-01-08 | Apple Inc. | System and method for inferring user intent from speech inputs |
CN110442699A (en) | 2013-06-09 | 2019-11-12 | 苹果公司 | Operate method, computer-readable medium, electronic equipment and the system of digital assistants |
KR101809808B1 (en) | 2013-06-13 | 2017-12-15 | 애플 인크. | System and method for emergency calls initiated by voice command |
DE112014003653B4 (en) | 2013-08-06 | 2024-04-18 | Apple Inc. | Automatically activate intelligent responses based on activities from remote devices |
WO2015042144A1 (en) * | 2013-09-20 | 2015-03-26 | Amazon Technologies, Inc. | Service activity user interface |
US9578117B2 (en) | 2013-09-20 | 2017-02-21 | Amazon Technologies, Inc. | Service discovery using a network |
US10028028B2 (en) * | 2013-09-30 | 2018-07-17 | Sonos, Inc. | Accessing last-browsed information in a media playback system |
US9226087B2 (en) | 2014-02-06 | 2015-12-29 | Sonos, Inc. | Audio output balancing during synchronized playback |
US9226073B2 (en) | 2014-02-06 | 2015-12-29 | Sonos, Inc. | Audio output balancing during synchronized playback |
CN103986964A (en) * | 2014-05-09 | 2014-08-13 | 苏州乐聚一堂电子科技有限公司 | Automatic identification system for karaoke image effects |
US9620105B2 (en) | 2014-05-15 | 2017-04-11 | Apple Inc. | Analyzing audio input for efficient speech and music recognition |
US10592095B2 (en) | 2014-05-23 | 2020-03-17 | Apple Inc. | Instantaneous speaking of content on touch devices |
US9502031B2 (en) | 2014-05-27 | 2016-11-22 | Apple Inc. | Method for supporting dynamic grammars in WFST-based ASR |
US9715875B2 (en) | 2014-05-30 | 2017-07-25 | Apple Inc. | Reducing the need for manual start/end-pointing and trigger phrases |
EP3480811A1 (en) | 2014-05-30 | 2019-05-08 | Apple Inc. | Multi-command single utterance input method |
US9633004B2 (en) | 2014-05-30 | 2017-04-25 | Apple Inc. | Better resolution when referencing to concepts |
US9734193B2 (en) | 2014-05-30 | 2017-08-15 | Apple Inc. | Determining domain salience ranking from ambiguous words in natural speech |
US9785630B2 (en) | 2014-05-30 | 2017-10-10 | Apple Inc. | Text prediction using combined word N-gram and unigram language models |
US9842101B2 (en) | 2014-05-30 | 2017-12-12 | Apple Inc. | Predictive conversion of language input |
US9760559B2 (en) | 2014-05-30 | 2017-09-12 | Apple Inc. | Predictive text input |
US10170123B2 (en) | 2014-05-30 | 2019-01-01 | Apple Inc. | Intelligent assistant for home automation |
US10078631B2 (en) | 2014-05-30 | 2018-09-18 | Apple Inc. | Entropy-guided text prediction using combined word and character n-gram language models |
US9430463B2 (en) | 2014-05-30 | 2016-08-30 | Apple Inc. | Exemplar-based natural language processing |
US10289433B2 (en) | 2014-05-30 | 2019-05-14 | Apple Inc. | Domain specific language for encoding assistant dialog |
US9338493B2 (en) | 2014-06-30 | 2016-05-10 | Apple Inc. | Intelligent automated assistant for TV user interactions |
US10659851B2 (en) | 2014-06-30 | 2020-05-19 | Apple Inc. | Real-time digital assistant knowledge updates |
US10446141B2 (en) | 2014-08-28 | 2019-10-15 | Apple Inc. | Automatic speech recognition based on user feedback |
US10275138B2 (en) * | 2014-09-02 | 2019-04-30 | Sonos, Inc. | Zone recognition |
US9818400B2 (en) | 2014-09-11 | 2017-11-14 | Apple Inc. | Method and apparatus for discovering trending terms in speech requests |
US10789041B2 (en) | 2014-09-12 | 2020-09-29 | Apple Inc. | Dynamic thresholds for always listening speech trigger |
US10127911B2 (en) | 2014-09-30 | 2018-11-13 | Apple Inc. | Speaker identification and unsupervised speaker adaptation techniques |
US9668121B2 (en) | 2014-09-30 | 2017-05-30 | Apple Inc. | Social reminders |
US9886432B2 (en) | 2014-09-30 | 2018-02-06 | Apple Inc. | Parsimonious handling of word inflection via categorical stem + suffix N-gram language models |
US10074360B2 (en) | 2014-09-30 | 2018-09-11 | Apple Inc. | Providing an indication of the suitability of speech recognition |
US9646609B2 (en) | 2014-09-30 | 2017-05-09 | Apple Inc. | Caching apparatus for serving phonetic pronunciations |
US10552013B2 (en) | 2014-12-02 | 2020-02-04 | Apple Inc. | Data detection |
US9711141B2 (en) | 2014-12-09 | 2017-07-18 | Apple Inc. | Disambiguating heteronyms in speech synthesis |
US10079779B2 (en) | 2015-01-30 | 2018-09-18 | Nicira, Inc. | Implementing logical router uplinks |
US9865280B2 (en) | 2015-03-06 | 2018-01-09 | Apple Inc. | Structured dictation using intelligent automated assistants |
US9721566B2 (en) | 2015-03-08 | 2017-08-01 | Apple Inc. | Competing devices responding to voice triggers |
US9886953B2 (en) | 2015-03-08 | 2018-02-06 | Apple Inc. | Virtual assistant activation |
US10567477B2 (en) | 2015-03-08 | 2020-02-18 | Apple Inc. | Virtual assistant continuity |
US9899019B2 (en) | 2015-03-18 | 2018-02-20 | Apple Inc. | Systems and methods for structured stem and suffix language models |
US9842105B2 (en) | 2015-04-16 | 2017-12-12 | Apple Inc. | Parsimonious continuous-space phrase representations for natural language processing |
US10083688B2 (en) | 2015-05-27 | 2018-09-25 | Apple Inc. | Device voice control for selecting a displayed affordance |
US10127220B2 (en) | 2015-06-04 | 2018-11-13 | Apple Inc. | Language identification from short strings |
US10101822B2 (en) | 2015-06-05 | 2018-10-16 | Apple Inc. | Language input correction |
US9578173B2 (en) | 2015-06-05 | 2017-02-21 | Apple Inc. | Virtual assistant aided communication with 3rd party service in a communication session |
US10186254B2 (en) | 2015-06-07 | 2019-01-22 | Apple Inc. | Context-based endpoint detection |
US10255907B2 (en) | 2015-06-07 | 2019-04-09 | Apple Inc. | Automatic accent detection using acoustic models |
US11025565B2 (en) | 2015-06-07 | 2021-06-01 | Apple Inc. | Personalized prediction of responses for instant messaging |
US10248376B2 (en) | 2015-06-11 | 2019-04-02 | Sonos, Inc. | Multiple groupings in a playback system |
JP6650475B2 (en) * | 2015-06-30 | 2020-02-19 | ケー4コネクト インコーポレイテッド | Home automation system including device signature pairing and related methods |
US10893467B2 (en) * | 2015-06-30 | 2021-01-12 | K4Connect Inc. | Home automation system including selective operation of paired device based upon voice commands and related methods |
US10747498B2 (en) | 2015-09-08 | 2020-08-18 | Apple Inc. | Zero latency digital assistant |
US10671428B2 (en) | 2015-09-08 | 2020-06-02 | Apple Inc. | Distributed personal assistant |
US9697820B2 (en) | 2015-09-24 | 2017-07-04 | Apple Inc. | Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks |
US10366158B2 (en) | 2015-09-29 | 2019-07-30 | Apple Inc. | Efficient word encoding for recurrent neural network language models |
US11010550B2 (en) | 2015-09-29 | 2021-05-18 | Apple Inc. | Unified language modeling framework for word prediction, auto-completion and auto-correction |
US11587559B2 (en) | 2015-09-30 | 2023-02-21 | Apple Inc. | Intelligent device identification |
US10691473B2 (en) | 2015-11-06 | 2020-06-23 | Apple Inc. | Intelligent automated assistant in a messaging environment |
US10049668B2 (en) | 2015-12-02 | 2018-08-14 | Apple Inc. | Applying neural network language models to weighted finite state transducers for automatic speech recognition |
US10223066B2 (en) | 2015-12-23 | 2019-03-05 | Apple Inc. | Proactive assistance based on dialog communication between devices |
US10446143B2 (en) | 2016-03-14 | 2019-10-15 | Apple Inc. | Identification of voice inputs providing credentials |
US9934775B2 (en) | 2016-05-26 | 2018-04-03 | Apple Inc. | Unit-selection text-to-speech synthesis based on predicted concatenation parameters |
US9972304B2 (en) | 2016-06-03 | 2018-05-15 | Apple Inc. | Privacy preserving distributed evaluation framework for embedded personalized systems |
US10249300B2 (en) | 2016-06-06 | 2019-04-02 | Apple Inc. | Intelligent list reading |
US10049663B2 (en) | 2016-06-08 | 2018-08-14 | Apple, Inc. | Intelligent automated assistant for media exploration |
DK179309B1 (en) | 2016-06-09 | 2018-04-23 | Apple Inc | Intelligent automated assistant in a home environment |
US10067938B2 (en) | 2016-06-10 | 2018-09-04 | Apple Inc. | Multilingual word prediction |
US10490187B2 (en) | 2016-06-10 | 2019-11-26 | Apple Inc. | Digital assistant providing automated status report |
US10509862B2 (en) | 2016-06-10 | 2019-12-17 | Apple Inc. | Dynamic phrase expansion of language input |
US10192552B2 (en) | 2016-06-10 | 2019-01-29 | Apple Inc. | Digital assistant providing whispered speech |
US10586535B2 (en) | 2016-06-10 | 2020-03-10 | Apple Inc. | Intelligent digital assistant in a multi-tasking environment |
DK179415B1 (en) | 2016-06-11 | 2018-06-14 | Apple Inc | Intelligent device arbitration and control |
DK179343B1 (en) | 2016-06-11 | 2018-05-14 | Apple Inc | Intelligent task discovery |
DK201670540A1 (en) | 2016-06-11 | 2018-01-08 | Apple Inc | Application integration with a digital assistant |
DK179049B1 (en) | 2016-06-11 | 2017-09-18 | Apple Inc | Data driven natural language event detection and classification |
US10043516B2 (en) | 2016-09-23 | 2018-08-07 | Apple Inc. | Intelligent automated assistant |
US10712997B2 (en) | 2016-10-17 | 2020-07-14 | Sonos, Inc. | Room association based on name |
US10593346B2 (en) | 2016-12-22 | 2020-03-17 | Apple Inc. | Rank-reduced token representation for automatic speech recognition |
DK201770439A1 (en) | 2017-05-11 | 2018-12-13 | Apple Inc. | Offline personal assistant |
DK179745B1 (en) | 2017-05-12 | 2019-05-01 | Apple Inc. | SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT |
DK179496B1 (en) | 2017-05-12 | 2019-01-15 | Apple Inc. | USER-SPECIFIC Acoustic Models |
DK201770431A1 (en) | 2017-05-15 | 2018-12-20 | Apple Inc. | Optimizing dialogue policy decisions for digital assistants using implicit feedback |
DK201770432A1 (en) | 2017-05-15 | 2018-12-21 | Apple Inc. | Hierarchical belief states for digital assistants |
DK179549B1 (en) | 2017-05-16 | 2019-02-12 | Apple Inc. | Far-field extension for digital assistant services |
US10637680B2 (en) | 2017-12-06 | 2020-04-28 | K4Connect Inc. | Home automation system including shareable capacity determining hub devices and related methods |
CN110381123A (en) * | 2019-06-27 | 2019-10-25 | 安徽国耀通信科技有限公司 | A kind of digitlization IP network broadcast system |
WO2024054837A1 (en) * | 2022-09-07 | 2024-03-14 | Sonos, Inc. | Primary-ambient playback on audio playback devices |
Family Cites Families (53)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5109484A (en) * | 1986-04-09 | 1992-04-28 | International Business Machines Corporation | Self configuring terminal which polls loop network and generates list of connected devices for use in selectively downloading control programs |
US5421030A (en) * | 1991-09-17 | 1995-05-30 | Com21, Inc. | Communications system and method for bi-directional communications between an upstream control facility and downstream user terminals |
US5666530A (en) * | 1992-12-02 | 1997-09-09 | Compaq Computer Corporation | System for automatic synchronization of common file between portable computer and host computer via communication channel selected from a plurality of usable channels there between |
US6137476A (en) * | 1994-08-25 | 2000-10-24 | International Business Machines Corp. | Data mouse |
US5835061A (en) * | 1995-06-06 | 1998-11-10 | Wayport, Inc. | Method and apparatus for geographic-based communications service |
US6156965A (en) * | 1995-08-28 | 2000-12-05 | Shinsky; Jeff K. | Fixed-location method of composing and performing and a musical instrument |
US5727202A (en) * | 1995-10-18 | 1998-03-10 | Palm Computing, Inc. | Method and apparatus for synchronizing information on two different computer systems |
US5774312A (en) * | 1995-10-31 | 1998-06-30 | Sony Corporation | Tape cassette |
US5794164A (en) * | 1995-11-29 | 1998-08-11 | Microsoft Corporation | Vehicle computer system |
US6064379A (en) * | 1996-06-24 | 2000-05-16 | Sun Microsystems, Inc. | System and method for synchronizing presentation of media stream playlists with real time |
US5974238A (en) * | 1996-08-07 | 1999-10-26 | Compaq Computer Corporation | Automatic data synchronization between a handheld and a host computer using pseudo cache including tags and logical data elements |
US5819160A (en) * | 1996-09-18 | 1998-10-06 | At&T Corp | Programmable radio subscription system for receiving selectively defined information |
US5905719A (en) * | 1996-09-19 | 1999-05-18 | Bell Communications Research, Inc. | Method and system for wireless internet access |
KR19980044990A (en) * | 1996-12-09 | 1998-09-15 | 양승택 | Structure of Portable Multimedia Data Input / Output Processor and Its Driving Method |
JPH10178619A (en) | 1996-12-19 | 1998-06-30 | Nikon Corp | Image reproducing device and electronic camera |
GB9720856D0 (en) * | 1997-10-01 | 1997-12-03 | Olivetti Telemedia Spa | Mobile networking |
US6006274A (en) * | 1997-01-30 | 1999-12-21 | 3Com Corporation | Method and apparatus using a pass through personal computer connected to both a local communication link and a computer network for indentifying and synchronizing a preferred computer with a portable computer |
US5974312A (en) * | 1997-07-10 | 1999-10-26 | Ericsson Inc. | System and method for updating a memory in an electronic device via wireless data transfer |
FI104867B (en) * | 1997-12-01 | 2000-04-14 | Nokia Mobile Phones Ltd | Procedure for transmitting a digital audio signal |
US6295541B1 (en) * | 1997-12-16 | 2001-09-25 | Starfish Software, Inc. | System and methods for synchronizing two or more datasets |
US20020002039A1 (en) * | 1998-06-12 | 2002-01-03 | Safi Qureshey | Network-enabled audio device |
EP0954151B1 (en) * | 1998-05-02 | 2006-08-02 | Micronas GmbH | Local communication apparatus |
US6201176B1 (en) * | 1998-05-07 | 2001-03-13 | Canon Kabushiki Kaisha | System and method for querying a music database |
US6452923B1 (en) | 1998-12-31 | 2002-09-17 | At&T Corp | Cable connected wan interconnectivity services for corporate telecommuters |
US20020013852A1 (en) | 2000-03-03 | 2002-01-31 | Craig Janik | System for providing content, management, and interactivity for thin client devices |
US6061306A (en) * | 1999-07-20 | 2000-05-09 | James Buchheim | Portable digital player compatible with a cassette player |
US6192340B1 (en) * | 1999-10-19 | 2001-02-20 | Max Abecassis | Integration of music from a personal library with real-time information |
US6347095B1 (en) * | 1999-11-15 | 2002-02-12 | Pango Networks, Inc. | System, devices and methods for use in proximity-based networking |
US6522886B1 (en) * | 1999-11-22 | 2003-02-18 | Qwest Communications International Inc. | Method and system for simultaneously sharing wireless communications among multiple wireless handsets |
KR100362149B1 (en) * | 1999-12-22 | 2002-11-23 | 엘지전자 주식회사 | Data synchronous method between mobile terminal and computer |
US6678215B1 (en) * | 1999-12-28 | 2004-01-13 | G. Victor Treyz | Digital audio devices |
JP4192383B2 (en) * | 2000-02-24 | 2008-12-10 | ソニー株式会社 | Digital broadcast receiving system, digital broadcast receiving apparatus, and digital broadcast printing apparatus |
US20020022453A1 (en) * | 2000-03-31 | 2002-02-21 | Horia Balog | Dynamic protocol selection and routing of content to mobile devices |
US6714797B1 (en) * | 2000-05-17 | 2004-03-30 | Nokia Corporation | System and method for the transfer of digital data to a mobile device |
US6874037B1 (en) * | 2000-06-19 | 2005-03-29 | Sony Corporation | Method and apparatus for synchronizing device information |
US6477117B1 (en) * | 2000-06-30 | 2002-11-05 | International Business Machines Corporation | Alarm interface for a smart watch |
WO2002008948A2 (en) | 2000-07-24 | 2002-01-31 | Vivcom, Inc. | System and method for indexing, searching, identifying, and editing portions of electronic multimedia files |
US7200357B2 (en) * | 2000-10-20 | 2007-04-03 | Universal Electronics Inc. | Automotive storage and playback device and method for using the same |
US7587446B1 (en) * | 2000-11-10 | 2009-09-08 | Fusionone, Inc. | Acquisition and synchronization of digital media to a personal information space |
US20020087996A1 (en) * | 2000-11-10 | 2002-07-04 | Depeng Bi | Interactive remote control of audio or video playback and selections |
US6931454B2 (en) * | 2000-12-29 | 2005-08-16 | Intel Corporation | Method and apparatus for adaptive synchronization of network devices |
US20020116533A1 (en) * | 2001-02-20 | 2002-08-22 | Holliman Matthew J. | System for providing a multimedia peer-to-peer computing platform |
US20020132616A1 (en) * | 2001-03-19 | 2002-09-19 | Ross Lorna R. | Communications system with automatic download capability |
US6931429B2 (en) * | 2001-04-27 | 2005-08-16 | Left Gate Holdings, Inc. | Adaptable wireless proximity networking |
US6873851B2 (en) * | 2001-05-03 | 2005-03-29 | International Business Machines Corporation | Method, system, and program for providing user location information for a personal information management system from transmitting devices |
US6757517B2 (en) | 2001-05-10 | 2004-06-29 | Chin-Chi Chang | Apparatus and method for coordinated music playback in wireless ad-hoc networks |
US7890661B2 (en) | 2001-05-16 | 2011-02-15 | Aol Inc. | Proximity synchronizing audio gateway device |
US8732232B2 (en) | 2001-05-16 | 2014-05-20 | Facebook, Inc. | Proximity synchronizing audio playback device |
US7620363B2 (en) | 2001-05-16 | 2009-11-17 | Aol Llc | Proximity synchronization of audio content among multiple playback and storage devices |
WO2003036541A1 (en) * | 2001-10-22 | 2003-05-01 | Apple Computer, Inc. | Intelligent synchronization for a media player |
US7643564B2 (en) | 2003-10-28 | 2010-01-05 | Motorola, Inc. | Method and apparatus for recording and editing digital broadcast content |
US8234217B2 (en) | 2004-03-18 | 2012-07-31 | Thomson Licensing | Method and system for selectively providing access to content |
US8073380B2 (en) | 2005-12-30 | 2011-12-06 | Nokia Corporation | Media content delivery and recording over broadcast network |
-
2001
- 2001-05-16 US US09/858,415 patent/US7620363B2/en not_active Expired - Lifetime
-
2009
- 2009-10-09 US US12/576,465 patent/US20100173579A1/en not_active Abandoned
-
2011
- 2011-05-05 US US13/101,581 patent/US10033475B2/en not_active Expired - Lifetime
-
2012
- 2012-09-15 US US13/621,070 patent/US8731459B2/en not_active Expired - Lifetime
- 2012-09-15 US US13/621,071 patent/US8731460B2/en not_active Expired - Lifetime
-
2014
- 2014-04-04 US US14/245,792 patent/US20140329456A1/en not_active Abandoned
- 2014-06-23 US US14/312,294 patent/US9160471B2/en not_active Expired - Fee Related
-
2015
- 2015-08-18 US US14/828,879 patent/US9407385B2/en not_active Expired - Lifetime
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9407385B2 (en) | 2001-05-16 | 2016-08-02 | Facebook, Inc. | Synchronization among multiple playback and storage devices |
US9699015B2 (en) | 2001-05-16 | 2017-07-04 | Facebook, Inc. | Continuous digital content presentation across multiple devices |
US9712371B2 (en) | 2001-05-16 | 2017-07-18 | Facebook, Inc. | Continuous digital content presentation across multiple devices |
US10033475B2 (en) | 2001-05-16 | 2018-07-24 | Facebook, Inc. | Proximity synchronization of audio content among multiple playback and storage devices |
US10122569B2 (en) | 2001-05-16 | 2018-11-06 | Facebook, Inc. | Proximity synchronizing audio gateway device |
US10841146B2 (en) | 2001-05-16 | 2020-11-17 | Facebook, Inc. | Proximity synchronizing audio gateway device |
WO2016202217A1 (en) * | 2015-06-19 | 2016-12-22 | 阿里巴巴集团控股有限公司 | Method for obtaining audio files, and method, device and system for sending update notification |
US20180096063A1 (en) * | 2015-06-19 | 2018-04-05 | Alibaba Group Holding Limited | Audio file acquisition and update notification sending method, device, and system |
Also Published As
Publication number | Publication date |
---|---|
US20130072109A1 (en) | 2013-03-21 |
US20130072108A1 (en) | 2013-03-21 |
US20150358095A1 (en) | 2015-12-10 |
US9407385B2 (en) | 2016-08-02 |
US20110207396A1 (en) | 2011-08-25 |
US8731459B2 (en) | 2014-05-20 |
US7620363B2 (en) | 2009-11-17 |
US8731460B2 (en) | 2014-05-20 |
US10033475B2 (en) | 2018-07-24 |
US20020173273A1 (en) | 2002-11-21 |
US20140304423A1 (en) | 2014-10-09 |
US9160471B2 (en) | 2015-10-13 |
US20100173579A1 (en) | 2010-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10841146B2 (en) | Proximity synchronizing audio gateway device | |
US9407385B2 (en) | Synchronization among multiple playback and storage devices | |
US8732232B2 (en) | Proximity synchronizing audio playback device | |
US11935526B2 (en) | Voice recognition system for use with a personal media streaming appliance | |
US11308947B2 (en) | Voice recognition system for use with a personal media streaming appliance | |
EP1521183A2 (en) | Wireless media player | |
US9037639B2 (en) | System and method for obtaining media content for a portable media player | |
US20190171410A1 (en) | Media content identification and playback | |
JP2013118692A (en) | Apparatus and method of mobile media presentation docking station for portable electronic device | |
US11163523B2 (en) | Automated low power mode based upon aspects associated with vehicle | |
US20210021249A1 (en) | Automated pause of media content playback based on sound level | |
US11748058B2 (en) | Command confirmation for a media playback device | |
US8315725B2 (en) | Method and apparatus for controlling content reproduction, and computer product | |
JP2016178662A (en) | On-vehicle unit, information processing method, and information processing system | |
JP2004328109A (en) | Information recovery distribution system | |
JP2004342179A (en) | Information processing apparatus, reproducing apparatus, and communication method | |
JP2020191641A (en) | Terminal device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MUSICNOW, INC., ILLINOIS Free format text: CHANGE OF NAME;ASSIGNOR:FULLAUDIO CORPORATION;REEL/FRAME:032742/0889 Effective date: 20031105 Owner name: AOL MUSIC NOW LLC, ILLINOIS Free format text: CHANGE OF NAME;ASSIGNOR:MN ACQUISITION LLC;REEL/FRAME:032742/0922 Effective date: 20051101 Owner name: FACEBOOK, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:AOL INC.;REEL/FRAME:032742/0934 Effective date: 20120614 Owner name: MAYLAND, LLC, VIRGINIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MUSICNOW, INC.;REEL/FRAME:032735/0098 Effective date: 20040405 Owner name: MUSICNOW LLC, VIRGINIA Free format text: CHANGE OF NAME;ASSIGNOR:MAYLAND, LLC;REEL/FRAME:032742/0892 Effective date: 20040412 Owner name: MN ACQUISITION LLC, ILLINOIS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MUSICNOW LLC;REEL/FRAME:032735/0359 Effective date: 20051031 Owner name: AOL LLC, VIRGINIA Free format text: MERGER;ASSIGNOR:AOL MUSIC NOW LLC;REEL/FRAME:032735/0365 Effective date: 20090326 Owner name: AOL INC., VIRGINIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:AOL LLC;REEL/FRAME:032735/0380 Effective date: 20091204 Owner name: FULLAUDIO CORPORATION, ILLINOIS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SPURGAT, JEFFREY JONATHAN;GLADWIN, STEPHEN CHRISTOPHER;ANDREWS III, HOYET HARRISON;SIGNING DATES FROM 20010430 TO 20010516;REEL/FRAME:032735/0082 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |
|
AS | Assignment |
Owner name: META PLATFORMS, INC., CALIFORNIA Free format text: CHANGE OF NAME;ASSIGNOR:FACEBOOK, INC.;REEL/FRAME:058961/0436 Effective date: 20211028 |