PROXIMITY-BASED AND ACOUSTIC CONTROL OF MEDIA DEVICES FOR MEDIA PRESENTATIONS
Embodiments relate generally to electronic and electronic hardware, computer software, wired communications, wireless communications, and wireless network communications, portable, wearable, and stationary media devices. RF transceivers and/or audio system in each media device may be used to wirelessly communicate between media devices and/or user devices and allow configuration, content, and other data to be wirelessly transmitted from one media device and/or user device to another media device. One or more user devices in proximity of one or more media devices, post detection, may wirelessly communicate (e.g., using RF, light, sound/acoustics) with the one or more media devices and the one or more media devices may orchestrate wireless handling (e.g., using RF, light, sound/acoustics) of content from the user device and/or from a wirelessly accessible location such as the Cloud, Internet, data storage device, or other location as indicated by an application (APP), content, data or both from the user device.
Latest ALIPHCOM Patents:
This application is related to the following U.S. patent applications: U.S. patent application Ser. No. 13/802,646, Filed on Mar. 13, 2013, having Attorney Docket Number ALI-230, and Titled “Proximity-Based Control Of Media Devices For Media Presentations”, all of which are herein incorporated by reference in their entirety for all purposes.
FIELDEmbodiments relate generally to electronic and electronic hardware, computer software, wired communications, wireless communications, and wireless network communications, portable, wearable, and stationary media devices. More specifically, disclosed are media devices that detect proximity of users and/or user devices and take actions and handle content on the user devices after detecting presence of users and/or user devices.
BACKGROUNDConventional paradigms for media devices require a user to take some action using a finger press to a touch screen or press a button, or the like, in order to initiate some function on the device, such as listening to music, for example. Conventional media devices are not configured to recognize and act on user preferences as to how the media device serves the user's needs based on changing circumstances and changing environments the user and media device are subject to. Furthermore, conventional media devices are typically personal devices that are mostly if not always used solely by the user and are therefore not well adapted to servicing the needs of friends, guests, or the like who may want to share content on their devices with the user.
Thus, there is a need for devices, systems, methods, and software that allow a user to configure (e.g., wirelessly using one or more of RF, acoustics, optics, etc.) a media device to detect a user and/or user device, take an action based on having detected presence, and allow for content from a user device or many devices to be handled by the media device, post detection.
Various embodiments or examples (“examples”) of the present application are disclosed in the following detailed description and the accompanying drawings. The drawings are not necessarily to scale:
Various embodiments or examples may be implemented in numerous ways, including as a system, a process, a method, an apparatus, a user interface, or a series of program instructions on a non-transitory computer readable medium such as a computer readable storage medium or a computer network where the program instructions are sent over optical, electronic, or wireless communication links. In general, operations of disclosed processes may be performed in an arbitrary order, unless otherwise provided in the claims.
A detailed description of one or more examples is provided below along with accompanying figures. The detailed description is provided in connection with such examples, but is not limited to any particular example. The scope is limited only by the claims and numerous alternatives, modifications, and equivalents are encompassed. Numerous specific details are set forth in the following description in order to provide a thorough understanding. These details are provided for the purpose of example and the described techniques may be practiced according to the claims without some or all of these specific details. For clarity, technical material that is known in the technical fields related to the examples has not been described in detail to avoid unnecessarily obscuring the description.
Power system 111 may include a power source internal to the media device 100 such as a battery (e.g., AAA or AA batteries) or a rechargeable battery (e.g., such as a lithium ion or nickel metal hydride type battery, etc.) denoted as BAT 135. Power system 111 may be electrically coupled with a port 114 for connecting an external power source (not shown) such as a power supply that connects with an external AC or DC power source. Examples include but are not limited to a wall wart type of power supply that converts AC power to DC power or AC power to AC power at a different voltage level. In other examples, port 114 may be a connector (e.g., an IEC connector) for a power cord that plugs into an AC outlet or other type of connecter, such as a universal serial bus (USB) connector. Power system 111 provides DC power for the various systems of media device 100. Power system 111 may convert AC or DC power into a form usable by the various systems of media device 100. Power system 111 may provide the same or different voltages to the various systems of media device 100. In applications where a rechargeable battery is used for BAT 135, the external power source may be used to power the power system 111, recharge BAT 135, or both. Further, power system 111 on its own or under control or controller 101 may be configured for power management to reduce power consumption of media device 100, by for example, reducing or disconnecting power from one or more of the systems in media device 100 when those systems are not in use or are placed in a standby or idle mode. Power system 111 may also be configured to monitor power usage of the various systems in media device 100 and to report that usage to other systems in media device 100 and/or to other devices (e.g., including other media devices 100) using one or more of the I/O system 105, RF system 107, and AV system 109, for example. Operation and control of the various functions of power system 111 may be externally controlled by other devices (e.g., including other media devices 100).
Controller 101 controls operation of media device 100 and may include a non-transitory computer readable medium, such as executable program code to enable control and operation of the various systems of media device 100. DS 103 may be used to store executable code used by controller 101 in one or more data storage mediums such as ROM, RAM, SRAM, RAM, SSD, Flash, etc., for example. Controller 101 may include but is not limited to one or more of a microprocessor (μP), a microcontroller (μP), a digital signal processor (DSP), a baseband processor, an application specific integrated circuit (ASIC), just to name a few. Processors used for controller 101 may include a single core or multiple cores (e.g., dual core, quad core, etc.). Port 116 may be used to electrically couple controller 101 to an external device (not shown).
DS system 103 may include but is not limited to non-volatile memory (e.g., Flash memory), SRAM, DRAM, ROM, SSD, just to name a few. In that the media device 100 in some applications is designed to be compact, portable, or to have a small size footprint, memory in DS 103 will typically be solid state memory (e.g., no moving or rotating components); however, in some application a hard disk drive (HDD) or hybrid HDD may be used for all or some of the memory in DS 103. In some examples, DS 103 may be electrically coupled with a port 128 for connecting an external memory source (e.g., USB Flash drive, SD, SDHC, SDXC, microSD, Memory Stick, CF, SSD, etc.). Port 128 may be a USB or mini USB port for a Flash drive or a card slot for a Flash memory card. In some examples as will be explained in greater detail below, DS 103 includes data storage for configuration data, denoted as CFG 125, used by controller 101 to control operation of media device 100 and its various systems. DS 103 may include memory designate for use by other systems in media device 100 (e.g., MAC addresses for WiFi 130, network passwords, data for settings and parameters for A/V 109, and other data for operation and/or control of media device 100, etc.). DS 103 may also store data used as an operating system (OS) for controller 101. If controller 101 includes a DSP, then DS 103 may store data, algorithms, program code, an OS, etc. for use by the DSP, for example. In some examples, one or more systems in media device 100 may include their own data storage systems.
I/O system 105 may be used to control input and output operations between the various systems of media device 100 via bus 110 and between systems external to media device 100 via port 118. Port 118 may be a connector (e.g., USB, HDMI, Ethernet, fiber optic, Toslink, Firewire, IEEE 1394, or other) or a hard wired (e.g., captive) connection that facilitates coupling I/O system 105 with external systems. In some examples port 118 may include one or more switches, buttons, or the like, used to control functions of the media device 100 such as a power switch, a standby power mode switch, a button for wireless pairing, an audio muting button, an audio volume control, an audio mute button, a button for connecting/disconnecting from a WiFi network, an infrared (IR) transceiver, just to name a few. I/O system 105 may also control indicator lights, audible signals, or the like (not shown) that give status information about the media device 100, such as a light to indicate the media device 100 is powered up, a light to indicate the media device 100 is in wireless communication (e.g., WiFi, Bluetooth®, WiMAX, cellular, etc.), a light to indicate the media device 100 is Bluetooth® paired, in Bluetooth® pairing mode, Bluetooth® communication is enabled, a light to indicate the audio and/or microphone is muted, just to name a few. Audible signals may be generated by the I/O system 105 or via the AV system 107 to indicate status, etc. of the media device 100. Audible signals may be used to announce Bluetooth® status, powering up or down the media device 100, muting the audio or microphone, an incoming phone call, a new message such as a text, email, or SMS, just to name a few. In some examples, I/O system 105 may use optical technology to wirelessly communicate with other media devices 100 or other devices. Examples include but are not limited to infrared (IR) transmitters, receivers, transceivers, an IR LED, and an IR detector, just to name a few. I/O system 105 may include an optical transceiver OPT 185 that includes an optical transmitter 185t (e.g., an IR LED) and an optical receiver 185r (e.g., a photo diode). OPT 185 may include the circuitry necessary to drive the optical transmitter 185t with encoded signals and to receive and decode signals received by the optical receiver 185r. Bus 110 may be used to communicate signals to and from OPT 185. OPT 185 may be used to transmit and receive IR commands consistent with those used by infrared remote controls used to control AV equipment, televisions, computers, and other types of systems and consumer electronics devices. The IR commands may be used to control and configure the media device 100, or the media device 100 may use the IR commands to configure/re-configure and control other media devices or other user devices, for example.
RF system 107 includes at least one RF antenna 124 that is electrically coupled with a plurality of radios (e.g., RF transceivers) including but not limited to a Bluetooth® (BT) transceiver 120, a WiFi transceiver 130 (e.g., for wireless communications over a wireless and/or WiMAX network), and a proprietary Ad Hoc (AH) transceiver 140 pre-configured (e.g., at the factory) to wirelessly communicate with a proprietary Ad Hoc wireless network (AH-WiFi) (not shown). AH 140 and AH-WiFi are configured to allow wireless communications between similarly configured media devices (e.g., an ecosystem comprised of a plurality of similarly configured media devices) as will be explained in greater detail below. RF system 107 may include more or fewer radios than depicted in
AV system 109 includes at least one audio transducer, such as a loud speaker 160, a microphone 170, or both. AV system 109 further includes circuitry such as amplifiers, preamplifiers, or the like as necessary to drive or process signals to/from the audio transducers. Optionally, AV system 109 may include a display (DISP) 180, a video device (VID) 190 (e.g., an image capture device, video camera, still camera, or a web CAM, etc.), or both. DISP 180 may be a display and/or touch screen (e.g., a LCD, OLED, or flat panel display) for displaying video media, information relating to operation of media device 100, content available to or operated on by the media device 100, playlists for media, date and/or time of day, alpha-numeric text and characters, caller ID, file/directory information, a GUI, just to name a few. A port 122 may be used to electrically couple AV system 109 with an external device and/or external signals. Port 122 may be a USB, HDMI, Firewire/IEEE-1394, 3.5 mm audio jack, or other. For example, port 122 may be a 3.5 mm audio jack for connecting an external speaker, headphones, earphones, etc. for listening to audio content being processed by media device 100. As another example, port 122 may be a 3.5 mm audio jack for connecting an external microphone or the audio output from an external device. In some examples, SPK 160 may include but is not limited to one or more active or passive audio transducers such as woofers, concentric drivers, tweeters, super tweeters, midrange drivers, sub-woofers, passive radiators, just to name a few. MIC 170 may include one or more microphones and the one or more microphones may have any polar pattern suitable for the intended application including but not limited to omni-directional, directional, bi-directional, uni-directional, bi-polar, uni-polar, any variety of cardioid pattern, and shotgun, for example. MIC 170 may be configured for mono, stereo, or other. MIC 170 may be configured to be responsive (e.g., generate an electrical signal in response to sound) to any frequency range including but not limited to ultrasonic, infrasonic, from about 20 Hz to about 20 kHz, and any range within or outside of human hearing. In some applications, the audio transducer of AV system 109 may serve dual roles as both a speaker and a microphone.
Circuitry in AV system 109 may include but is not limited to a digital-to-analog converter (DAC) and algorithms for decoding and playback of media files such as MP3, FLAG, AIFF, ALAC, WAV, MPEG, QuickTime, AVI, compressed media files, uncompressed media files, and lossless media files, just to name a few, for example. A DAC may be used by AV system 109 to decode wireless data from a user device or from any of the radios in RF system 107. AV system 109 may also include an analog-to-digital converter (ADC) for converting analog signals, from MIC 170 for example, into digital signals for processing by one or more system in media device 100.
Media device 100 may be used for a variety of applications including but not limited to wirelessly communicating with other wireless devices, other media devices 100, wireless networks, and the like for playback of media (e.g., streaming content), such as audio, for example. The actual source for the media need not be located on a user's device (e.g., smart phone, MP3 player, iPod, iPhone, iPad, Android, laptop, PC, etc.). For example, media files to be played back on media device 100 may be located on the Internet, a web site, or in the Cloud, and media device 100 may access (e.g., over a WiFi network via WiFi 130) the files, process data in the files, and initiate playback of the media files. Media device 100 may access or store in its memory a playlist or favorites list and playback content listed in those lists. In some applications, media device 100 will store content (e.g., files) to be played back on the media device 100 or on another media device 100.
Media device 100 may include a housing, a chassis, an enclosure or the like, denoted in
In other examples, housing 199 may be configured as speaker, a subwoofer, a conference call speaker, an intercom, a media playback device, just to name a few. If configured as a speaker, then the housing 199 may be configured as a variety of speaker types including but not limited to a left channel speaker, a right channel speaker, a center channel speaker, a left rear channel speaker, a right rear channel speaker, a subwoofer, a left channel surround speaker, a right channel surround speaker, a left channel height speaker, a right channel height speaker, any speaker in a 3.1, 5.1, 7.1, 9.1 or other surround sound format including those having two or more subwoofers or having two or more center channels, for example. In other examples, housing 199 may be configured to include a display (e.g., DISP 180) for viewing video, serving as a touch screen interface for a user, providing an interface for a GUI, for example.
PROX system 113 may include one or more sensors denoted as SEN 195 that are configured to sense 197 an environment 198 external to the housing 199 of media device 100. Using SEN 195 and/or other systems in media device 100 (e.g., antenna 124, SPK 160, MIC 170, etc.), PROX system 113 senses 197 an environment 198 that is external to the media device 100 (e.g., external to housing 199). PROX system 113 may be used to sense one or more of proximity of the user or other persons to the media device 100 or other media devices 100. PROX system 113 may use a variety of sensor technologies for SEN 195 including but not limited to ultrasound, infrared (IR), passive infrared (PIR), optical, acoustic, vibration, light, ambient light sensor (ALS), IR proximity sensors, LED emitters and detectors, RGB LED's, RF, temperature, capacitive, capacitive touch, inductive, just to name a few. PROX system 113 may be configured to sense location of users or other persons, user devices, and other media devices 100, without limitation. Output signals from PROX system 113 may be used to configure media device 100 or other media devices 100, to re-configure and/or re-purpose media device 100 or other media devices 100 (e.g., change a role the media device 100 plays for the user, based on a user profile or configuration data), just to name a few. A plurality of media devices 100 in an eco-system of media devices 100 may collectively use their respective PROX system 113 and/or other systems (e.g., RF 107, de-tunable antenna 124, AV 109, etc.) to accomplish tasks including but not limited to changing configuration, re-configuring one or more media devices, implement user specified configurations and/or profiles, insertion and/or removal of one or more media devices in an eco-system, just to name a few.
In other examples, PROX 113 may include one or more proximity detection islands PSEN 520 as will be discussed in greater detail in
Simple Out-of-the-Box User Experience
Attention is now directed to
To that end, in
Subsequently, after tablet 220 and media device 100a have successfully BT paired with one another, the process of configuring media device 100a to service the specific needs of user 201 may begin. In some examples, after successful BT pairing, BT 120 need not be used for wireless communication between media device 100a and the user's device (e.g., tablet 220 or other). Controller 101, after a successful BT pairing, may command RF system 107 to electrically couple 228, WiFi 130 with antenna 124 and wireless communications between tablet 220 and media device 100a (see 260, 226) may occur over a wireless network (e.g., WiFi or WiMAX) or other as denoted by wireless access point 270. Post-pairing, tablet 220 requires a non-transitory computer readable medium that includes data and/or executable code to form a configuration (CFG) 125 for media device 100a. For purposes of explanation, the non-transitory computer readable medium will be denoted as an application (APP) 225. APP 225 resides on or is otherwise accessible by tablet 220 or media device 100a. User 201 uses APP 225 (e.g., through a GUI, menu, drop down boxes, or the like) to make selections that comprise the data and/or executable code in the CFG 125.
APP 225 may be obtained by tablet 220 in a variety of ways. In one example, the media device 100a includes instructions (e.g., on its packaging or in a user manual) for a website on the Internet 250 where the APP 225 may be downloaded. Tablet 220 may use its WiFi or Cellular RF systems to communicate with wireless access point 270 (e.g., a cell tower or wireless router) to connect 271 with the website and download APP 255 which is stored on tablet 220 as APP 225. In another example, tablet 220 may scan or otherwise image a bar code or TAG operative to connect the tablet 220 with a location (e.g., on the Internet 250) where the APP 225 may be found and downloaded. Tablet 220 may have access to an applications store such as Google Play for Android devices, the Apple App Store for iOS devices, or the Windows 8 App Store for Windows 8 devices. The APP 225 may then be downloaded from the app store. In yet another example, after pairing, media device 100a may be preconfigured to either provide (e.g., over the BT 120 or WiFi 130) an address or other location that is communicated to tablet 220 and the tablet 220 uses the information to locate and download the APP 225. In another example, media device 100a may be preloaded with one or more versions of APP 225 for use in different device operating systems (OS), such as one version for Android, another for iOS, and yet another for Windows 8, etc. In that OS versions and/or APP 225 are periodically updated, media device 100a may use its wireless systems (e.g., BT 120 or WiFi 130) to determine if the preloaded versions are out of date and need to be replaced with newer versions, which the media device 100a obtains, downloads, and subsequently makes available for download to tablet 220.
Regardless of how the APP 225 is obtained, once the APP 225 is installed on any of the devices 202, the user 201 may use the APP 225 to select various options, commands, settings, etc. for CFG 125 according to the user's preferences, needs, media device ecosystem, etc., for example. After the user 201 finalizes the configuration process, CFG 125 is downloaded (e.g., using BT 120 or WiFi 130) into DS system 103 in media device 100a. Controller 101 may use the CFG 125 and/or other executable code to control operation of media device 100a. In
CFG 125 may include data such as the name and password for a wireless network (e.g., 270) so that WiFi 130 may connect with (see 226) and use the wireless network for future wireless communications, data for configuring subsequently purchased devices 100, data to access media for playback, just to name a few. By using the APP 225, user 201 may update CFG 125 as the needs of the user 201 change over time, that is, APP 225 may be used to re-configure an existing CFG 125. Furthermore, APP 225 may be configured to check for updates and to query the user 201 to accept the updates such that if an update is accepted an updated version of the APP 225 may be installed on tablet 220 or on any of the other devices 202. Although the previous discussion has focused on installing the APP 225 and CFG 125, one skilled in the art will appreciate that other data may be installed on devices 202 and/or media device 100a using the process described above. As one example, APP 225 or some other program may be used to perform software, firmware, or data updates on device 100a. DS system 103 on device 100a may include storage set aside for executable code (e.g., an operating system) and data used by controller 101 and/or the other systems depicted in
Moving on to
At stage 290b, media device 100b is powered up and at stage 290c its BT 120 and the BT 120 of media device 100a recognize each other. For example, each media device (100a, 100b) may be pre-configured (e.g., at the factory) to broadcast a unique RF signature or other wireless signature (e.g., acoustic) at power up and/or when it detects the unique signature of another device. The unique RF signature may include status information including but not limited to the configuration state of a media device. Each BT 120 may be configured to allow communications with and control by another media device based on the information in the unique RF signature. Accordingly, at the stage 290c, media device 100b transmits RF information that includes data that informs other listening BT 120's (e.g., BT 120 in 100a) that media device 100b is un-configured (e.g., has no CFG 125).
At stage 290d, media devices 100a and 100b negotiate the necessary protocols and/or handshakes that allow media device 100a to gain access to DS 103 of media device 100b. At stage 290e, media device 100b is ready to receive CFG 125 from media device 100a, and at stage 290f the CFG 125 from media device 100a is transmitted to media device 100b and is replicated (e.g., copied, written, etc.) in the DS 103 of media device 100b, such that media device 100b becomes a configured media device.
Data in CFG 125 may include information on wireless network 270, including but not limited to wireless network name, wireless password, MAC addresses of other media devices, media specific configuration such as speaker type (e.g., left, right, center channel), audio mute, microphone mute, etc. Some configuration data may be subservient to other data or dominant to other data. After the stage 290f, media device 100a, media device 100b, and user device 220 may wirelessly communicate 291 with one another over wireless network 270 using the WiFi systems of user device 220 and WiFi 130 of media devices 100a and 100b.
APP 225 may be used to input the above data into CFG 125, for example using a GUI included with the APP 225. User 201 enters data and makes menu selections (e.g., on a touch screen display) that will become part of the data for the CFG 125. APP 225 may also be used to update and/or re-configure an existing CFG 125 on a configured media device. Subsequent to the update and/or re-configuring, other configured or un-configured media devices in the user's ecosystem may be updated and/or re-configured by a previously updated and/or re-configured media device as described herein, thereby relieving the user 201 from having to perform the update and/or re-configure on several media devices. The APP 225 or a location provided by the APP 225 may be used to specify playlists, media sources, file locations, and the like. APP 225 may be installed on more than one user device 202 and changes to APP 225 on one user device may later by replicated on the APP 225 on other user devices by a synching or update process, for example. APP 225 may be stored on the internet or in the Cloud and any changes to APP 225 may be implemented in versions of the APP 225 on various user devices 202 by merely activating the APP 225 on that device and the APP 225 initiates a query process to see if any updates to the APP are available, and if so, then the APP 225 updates itself to make the version on the user device current with the latest version.
Media devices 100a and 100b having their respective WiFi 130 enabled to communicate with wireless network 270, tablet 220, or other wireless devices of user 201.
After all the devices 220, 100a, 100b, are enabled for wireless communications with one another,
In the example scenarios depicted in
Reference is now made to
At a stage 308 the user's device and the first media device negotiate the BT pairing process, and if BT pairing is successful, then the flow continues at stage 310. If BT pairing is not successful, then the flow repeats at the stage 206 until successful BT pairing is achieved. At stage 310 the user device is connected to a wireless network (if not already connected) such as a WiFi, WiMAX, or cellular (e.g., 3G or 4G) network. At a stage 312, the wireless network may be used to install an application (e.g., APP 225) on the user's device. The location of the APP (e.g., on the Internet or in the Cloud) may be provided with the media device or after successful BT pairing, the media device may use its BT 120 to transmit data to the user's device and that data includes a location (e.g., a URI or URL) for downloading or otherwise accessing the APP. At a stage 314, the user uses the APP to select settings for a configuration (e.g., CFG 125) for the first media device. After the user completes the configuration, at a stage 316 the user's device installs the APP on the first media device. The installation may occur in a variety of ways (see
Now reference is made to
Attention is now directed to
In the examples depicted in
APP 225 may be configured (e.g., by the user 201) to automatically configure any newly detected un-configured media devices that are added to the user's 201 ecosystem and the APP 225 may merely inform the user 201 that it is configuring the un-configured media devices and inform the user 201 when configuration is completed, for example. Moreover, in other examples, once a user 201 configures a media device using the APP 225, subsequently added un-configured media devices may be automatically configured by an existing configured media device by each media device recognizing other media devices (e.g., via wireless systems), determining the status (e.g., configured or un-configured) of each media device, and then using the wireless systems (e.g., RF 107, AV 109, I/O 105, OPT 185, PROX 113) of a configured media device to configure the un-configured media device without having to resort to the APP 225 on the user's device 220 to intervene in the configuration process. That is, the configured media devices and the un-configured media devices arbitrate and effectuate the configuring of un-configured media devices without the aid of APP 225 or user device 220. In this scenario, the controller 101 and/or CFG 125 may include instructions for configuring media devices in an ecosystem using one or more systems in the media devices themselves.
In at least some examples, the structures and/or functions of any of the above-described features may be implemented in software, hardware, firmware, circuitry, or in any combination thereof. Note that the structures and constituent elements above, as well as their functionality, may be aggregated with one or more other structures or elements. Alternatively, the elements and their functionality may be subdivided into constituent sub-elements, if any. As software, the above-described techniques may be implemented using various types of programming or formatting languages, frameworks, scripts, syntax, applications, protocols, objects, or techniques. As hardware and/or firmware, the above-described techniques may be implemented using various types of programming or integrated circuit design languages, including hardware description languages, such as any register transfer language (“RTL”) configured to design field-programmable gate arrays (“FPGAs”), application-specific integrated circuits (“ASICs”), or any other type of integrated circuit. According to some embodiments, the term “module” may refer, for example, to an algorithm or a portion thereof, and/or logic implemented in either hardware circuitry or software, or a combination thereof. These may be varied and are not limited to the examples or descriptions provided. Software, firmware, algorithms, executable computer readable code, program instructions for execution on a computer, or the like may be embodied in a non-transitory computer readable medium.
Media Device with Proximity Detection
Attention is now directed to
Non-limiting examples of control elements 503-512 include a plurality of controls 512 (e.g., buttons, switches and/or touch surfaces) that may have functions that are fixed or change based on different scenarios as will be described below, controls 503 and 507 for volume up and volume down, control 509 for muting volume or BT paring, control 506 for initiating or pausing playback of content, control 504 for fast reversing playback or skipping backward one track, and control 508 for fast forwarding playback or skipping forward one track. Some are all of the control elements 504-512 may serve multiple rolls based on changing scenarios. For example, for playback of video content or for information displayed on display 180 (e.g., a touch screen), controls 503 and 507 may be used to increase “+” and decrease “−” brightness of display 180. Control 509 may be used to transfer or pick up a phone call or other content on a user device 202, for example. Proximity detection islands 520 and/or control elements 503-512 may be backlit (e.g., using LED's or the like) for night or low-light visibility.
Moving on to
Proximity detection island 520 may include at least one LED 601 (e.g., an infrared LED-IR LED) electrically coupled with driver circuitry 610 and configured to emit IR radiation 603, at least one IR optical detector 605 (e.g., a PIN diode) electrically coupled with an analog-to-digital converter ADC 612 and configured to generate a signal in response to IR radiation 607 incident on detector 605, and at least one indicator light 616 electrically coupled with driver circuitry 614 and configured to generate colored light 617. As depicted, indicator light 616 comprises a RGB LED configured to emit light 617 in a gambit of colors indicative of status as will be described below. Here, RGB LED 616 may include four terminals, one of which coupled with circuit ground, a red “R” terminal, a green “G” terminal, and a blue “B” terminal, all of which are electrically connected with appropriate circuitry in driver 614 and with die within RGB LED 616 to effectuate generation of various colors of light in response to signals from driver 614. For example, RGB LED 616 may include semiconductor die for LED's that generate red, green, and blue light that are electrically coupled with ground and the R, G, and B terminals, respectively. One skilled in the art will appreciate that element 616 may be replaced by discrete LED's (e.g., separate red, green, white, and blue LED's) or a single non-RGB LED or other light emitting device may be used for 616. The various colors may be associated with different users who approach and are detected in proximity of the media device and/or different user devices that are detected by the media device. Therefore, if there are four users/and our user devices detected, then: the color blue may be associated with user #1; yellow with user #2; green with user #3; and red with user #4. Some users and or user devices may be indicated using alternating colors of light such as switching/flashing between red and green, blue and yellow, blue and green, etc. In other examples other types of LED's may be combined with RGB LED 616, such as a white LED, for example, to increase the number of color combinations possible.
Optionally, proximity detection island 520 may include at least one light sensor for sensing ambient light conditions in the ENV 198, such as ambient light sensor ALS 618. ALS 618 may be electrically coupled with circuitry CKT 620 configured to process signals from ALS 618, such as optical sensor 609 (e.g., a PIN diode) in response to ambient light 630 incident on optical sensor 609. Signals from CKT 620 may be further processed by ADC 622. The various drivers, circuitry, and ADC's of proximity detection island 520 may be electrically coupled with a controller (e.g., a μC, a μP, an ASIC, or controller 101 of
Proximity detection island 520 may be configured to detect presence of a user 201 (or other person) that enters 671 an environment 198 the media device 100 is positioned in. Here, entry 671 by user 201 may include a hand 601h or other portion of the user 201 body passing within optical detection range of proximity detection island 520, such as hand 601h passing over 672 the proximity detection island 520, for example. IR radiation 603 from IRLED 603 exiting through portal 652 reflects off hand 601h and the reflected IR radiation 607 enters portal 652 and is incident on IR detector 605 causing a signal to be generated by ADC 612, the signal being indicative of presence being detected. RGB LED 616 may be used to generate one or more colors of light that indicate to user 201 that the user's presence has been detected and the media device is ready to take some action based on that detection. The action taken will be application specific and may depend on actions the user 201 programmed into CFG 125 using APP 225, for example. The action taken and/or the colors emitted by RGB LED 616 may depend on the presence and/or detection of a user device 210 in conjunction with or instead of detection of presence of user 201 (e.g., RF 565 from device 210 by RF 107).
As described above, proximity detection island 520 may optionally include ambient light sensor ALS 618 configured to detect ambient light 630 present in ENV 198 such as a variety of ambient light sources including but not limited to natural light sources such as sunny ambient 631, partially cloudy ambient 633, inclement weather ambient 634, cloudy ambient 635, and night ambient 636, and artificial light ambient 632 (e.g., electronic light sources). ALS 618 may work in conjunction with IRLED 610 and/or IR detector 605 to compensate for or reduce errors in presence detection that are impacted by ambient light 630, such as IR background noise caused by IR radiation from 632 or 631, for example. IR background noise may reduce a signal-to-noise ratio of IR detector 605 and cause false presence detection signals to be generated by ADC 612.
ALS 618 may be used to detect low ambient light 630 condition such as moonlight from 636 or a darkened room (e.g., light 632 is off), and generate a signal consistent with the low ambient light 630 condition that is used to control operation of proximity detection island 520 and/or other systems in media device 100. As one example, if user approaches 671 proximity detection island 520 in low light or no light conditions as signaled by ALS 618, RGB LED 616 may emit light 617 at a reduced intensity to prevent the user 201 from being startled or blinded by the light 617. Further, under low light or no light conditions AUD 624 may be reduced in volume or vibration magnitude or may be muted. Additionally, audible notifications (e.g., speech or music from SPK 160) from media device 100 may be reduced in volume or muted under low light or no light conditions (see
Structure 650 may be electrically coupled 681 with capacitive touch circuitry 680 such that structure 650 is operative as a capacitive touch switch that generates a signal when a user (e.g., hand 601h) touches a portion of structure 650. Capacitive touch circuitry 680 may communicate 682 a signal to other systems in media device 100 (e.g., I/O 105) that process the signal to determine that the structure 650 has been touched and initiate an action based on the signal. A user's touch of structure 650 may trigger driver 614 to activate RGB LED 616 to emit light 617 to acknowledge the touch has been received and processed by media device 100.
Reference is now made to
Moving to
Attention is now directed to
As one example, upon detecting presence of user 901, media device 100 may emit light 917c from proximity detection island I3. If the user device 220 is present and also detected by media device 100 (e.g., via RF signals 126 and/or 563), then the media device 100 may indicate that presence of the user device 220 is detected and may take one or more actions based on detecting presence of the user device 220. If user device 220 is one that is recognized by media device 100, then light 917c from proximity detection island I3 may be emitted with a specific color assigned to the user device 220, such as green for example. Recognition of user device 220 may occur due to the user device 220 having been previously BT paired with media device 100, user device 220 having a wireless identifier such as a MAC address or SSID stored in or pre-registered in media device 100 or in a wireless network (e.g., a wireless router) the media device 100 and user device 220 are in wireless communications with, for example. DISP 180 may display info 840 consistent with recognition of user device 220 and may display via a GUI or the like, icons or menu selections for the user 201 to choose from, such as an icon to offer the user 201a choice to transfer content C from user device 220 to the media device 100, to switch from BT wireless communication to WiFi wireless communication, for example. As one example, if content C comprises a telephone conversation, the media device 100 through instructions or the like in CFG 125 may automatically transfer the phone conversation from user device 220 to the media device 100 such that MIC 170 and SPK 160 are enabled so that media device 100 serves as a speaker phone or conference call phone and media device 100 handles the content C of the phone call. If the transfer of content C is not automatic, CFG 125 or other programming of media device 100 may operate to offer the user 201 the option of transferring the content C by displaying the offer on DISP 180 or via one of the control elements 503-512. For example, control element 509 may blink (e.g., via backlight) to indicate to user 201 that actuating control element 509 will cause content C to be transferred from user device 220 to media device 100.
In some examples, control elements 503-512 may correspond to menu selections displayed on DISP 180 and/or a display on the user device 220. For example, control elements 512 may correspond to six icons on DISP 180 (see 512′ in
As one example, if content C comprises an alarm, task, or calendar event the user 201 has set in the user device 220, that content C may be automatically transferred or transferred by user action using DISP 180 or control elements 503-512, to media device 100. Therefore, a wake up alarm set on user device 220 may actually be implemented on the media device 100 after the transfer, even if the user device 220 is powered down at the time the alarm is set to go off. When the user device is powered up, any alarm, task, or calendar event that has not been processed by the media device 100 may be transferred back to the user device 220 or updated on the user device so that still pending alarm, task, or calendar events may be processed by the user device when it is not in proximity of the media device 100 (e.g., when user 201 leaves for a business trip). CFG 125 and APP 225 as described above may be used to implement and control content C handling between media device 100 and user devices.
Some or all of the control elements 503-512 may be implemented as capacitive touch switches. Furthermore, some or all of the control elements 503-512 may be backlit (e.g., using LED's, light pipes, etc.). For example, control elements 512 may be implemented as capacitive touch switches and they may optionally be backlit. In some examples, after presence is detected by one or more of the proximity detection islands (I1, I2, I3, I4), one or more of the control elements 503-512 may be backlit or have its back light blink or otherwise indicate to user 201 that some action is to be taken by the user 201, such as actuating (e.g., touching) one or more of the backlit and/or blinking control elements 512. In some examples, proximity detection islands (I1, I2, I3, I4) may be configured to serve as capacitive touch switches or another type of switch, such that pressing, touching, or otherwise actuating one or more of the proximity detection islands (I1, I2, I3, I4) results in some action being taken by media device 100.
In
Users devices 220a-220d may be pre-registered or otherwise associated or known by media device 100 (e.g., via CFG 125 or other) and the actions taken and notifications given by the media device 100 may depended on and may be different for each of the user devices 220a-220d. For example, after detection and notification based on detecting proximity 597 and RF 563 for user device 220a, media device 100 may establish or re-establish BT pairing (e.g., via BT 120 in RF 107) with 220a and content C on 220a (e.g., a phone conversation) may be transferred to media device 100 for handling via SPK 160 and MIC 170. CFG 125 and/or APP 225 on 220a may affect how media device and user device 220a operate post detection.
As another example, post detection 597 & 563 and notification for user device 220d may result in content C (e.g., music from MP3 files) on 220d being played back 1345 on media device 100. Control elements 503-512 may be activated (if not already activated) to play/pause (506), fast forward (508), fast reverse (504), increase volume (503), decrease volume (507), or mute volume (509). Control elements 512 may be used to select among various play lists or other media on user device 220d.
In another example, content C on user device 220c may, post detection and notification, be displayed on DISP 180. For example, a web page that was currently being browsed on 220c may be transferred to media device 100 for viewing and browsing, and a data payload associated with the browsing may also be transferred to media device 100. If content C comprises a video, the display and playback functions of the video may be transferred to media device 100 for playback and control, as well as the data payload for the video.
Content C this is transferred to media device 100 may be transferred back in part or whole to the user devices depicted, when the user is no longer detectable via islands to proximity detection islands (I1, I2, I3, I4) or other systems of media device 100, by user command, or by user actuating one of the control elements 503-512 or an icon or the like on DISP 180, for example.
In other examples, one or more of the control elements 503-512 or an icon or the like on DISP 180 may be actuated or selected by a user in connection with one of the functions assigned to proximity detection islands (I1, I2, I3, I4). For example, to activate the “BT Pairing” function of island I2, control element 512 that is nearest 1427 to island I2 may be actuated by the user. In another example, proximity detection islands (I1, I2, I3, I4) may be associated with different users whose presence has been detected by one or more of the islands. For example, if proximity of four users (U1, U2, U3, U4) has been detected by any of the islands, then U1 may be associated with I4, U2 with I1, U3 with I2, and U4 with I3. Association with an island may be used to provide notifications to the user, such as using light from RGB LED 616 to notify the user of status (e.g., BT pairing status) or other information.
In some examples, content C or other information resident or accessible to user device 220 may be handled by media device 100. For example, if C comprises media files such as MP3 files, those files may be wirelessly accessed by media device 100 by copying the files to DS 103 (e.g., in Flash memory 145) thereby taking the data payload and wireless bandwidth from the user device 220 to the media device 100. Media device 100 may use it wireless systems to access 1569 or 1565 and 1567 the information from Cloud 1550 and either store the information locally in DA 103 or wirelessly access the information as it is played back or otherwise consumed or used by media device 100. APP 225 and CFG 125 may include information and executable instructions that orchestrate the handling of content between media device 100, user device 220, and Cloud 1550. For example, a playlist PL on user device 220 may be located in Cloud 1550 and media files associated with music/videos in the PL may be found at URL in Cloud 1550. Media device 100 may access the media files from the location specified by the URL and wirelessly stream the media files, or media device may copy a portion of those media files to DS 103 and then playback those files from its own memory (e.g., Flash 145).
In other examples, user 1500h may be one of many users who have content to be accessed and/or handled by media device 100. Post detection, songs, play lists, content, of other information on user device 220 or from Cloud 1550 may be placed in a queue with other information of similar type. The queue for songs may comprise Song 1 through Song N and songs on user device 220 that were active at the time of proximity detection may be placed in some order within the queue, such as Song 4 for being fourth in line in queue for playback on media device 100. Other information such as play lists PL 1-PL N or other content such as C 1-CN may be placed in a queue for subsequent action to be taken on the information once it has moved to the top of the queue. In some examples, the information on user device 220 or from Cloud 1550 may be buffered in media device 100 by storing buffered data in DS 103.
Information “I” included in wristband 1740 may include but is not limited to alarms A, notifications N, content C, data D, and a URL. Upon detection of proximity, any of the information “I” may be wirelessly communicated from wristband 1740 to media device 100 where the information “I” may be queued (A 1-A N; D 1-D N, N1-N n; and C 1-C N) and/or buffered BUFF as described above. In some examples, post detection, wristband 1740 may wirelessly retrieve and/or store the information “I” from the media device 100, the Cloud 1750, or both. As one example, if wristband 1740 includes one or more alarms A, post detection those alarms A may be handled by media device 100. Therefore, if one of the alarms A is set to go off at 6:00 pm and detection occurs at 5:50 pm, then that alarm may be handled by media device 100 using one or more of DISP 180, SPK 160, and vibration 847, for example. If another alarm is set for 5:30 am and the wristband 1740 and media device 100 are still in proximity of each another at 5:30 am, then the media device 100 may handle the 5:30 am alarm as well. The 6:00 pm and 5:30 am alarms may be queued in the alarms list as one of A 1-AN. When wristband 1740 and media device 100 are no longer in proximity of each other, any alarms not processed by media device 100 may be processed by wristband 1740.
In
In
In that there may be many user devices to service post proximity detection or more than one item of content C to be handled from one or more user devices, at a stage 1910 media device 100 queries the user devices to see if there is additional content C to be handled by the media device 100. If additional content exists, then a YES branch may be taken and flow 1900 may return to stage 1902. If no additional content C is to be handled, then a NO branch may be taken and at a stage 1912 a decision to terminate previously handled content C may be made. Here, a user device may have handed over content C handling to media device 100 post proximity detection, but when the user device moves out of RF and/or proximity detection range (e.g., the user leaves with his/her user device in tow), then media device 100 may release or otherwise divorce handling of the content C. If previously handled content C does not require termination, then a NO branch may be taken and flow 1900 may end. On the other hand, if previously handled content C requires termination, then a YES branch may be taken to a stage 1914 were the previously handled content C is released by the media device 100. Release by media device 100 includes but is not limited to wirelessly transferring the content C back to the user device or other location, deleting the content C from memory in the media device 100 or other location, saving, writing or redirecting the content C to a location such as /dev/null or a waste basket/trash can, halting streaming or playback of the content C, storing the content C to a temporary location, just to name a few.
At the stage 2008, the media device 100 may playback other content C (e.g., an mp3 or mpeg file) while recording the content C to the selected location. For example, if three users (U1-U3) approach media device 100 with their respective user devices, are detected by one or more of the proximity detection islands (e.g., I1, I2, I3, I4) and/or by RF 107, then post detection, media device 100 may begin to handle the content C from the various user devices as described in reference to
Moving now to
C2 comprises a playlist and songs, is static, and each song is stored in a mp3 file in memory internal to UD2. As per the flows 1900 and 2000, media device queues C2 first and stores C2 in a SDHC card 2121 such that the playlist and mp3 files now reside in SDHC 2121. C1 and C4 both comprise information stored in a data capable wristband/wristwatch. C1 and C4 are static content. Media device queues C4 behind C2, and stores C4 in Cloud 2150. C3 comprises dynamic content in the form of an audio book being played back on UD3 at the time it was detected by media device 100. C3 is queued behind C4 and is recorded on NAS 2122 for later playback on media device 100. C1 is queued behind C3 and is stored in Cloud 2150.
However, the queuing order need not be the order in which content C is played back or otherwise acted on by media device 100. In diagram 2180, media device has ordered action to be taken on the queued content in the order of C1 and C4 first, C2 second and C3 third. C3 may be third in order because it may still be recording to NAS 2122. The information comprising C1 and C4 may be quickly displayed on DISP 180 for its respective users to review. Furthermore, the size of data represented by C1 and C4 may be much smaller than that of C2 and C3. Therefore, while C3 is recording to NAS 2122 and C2 is being copied from UD2 into SDHC 2121, action is taken to display C1 and C4 on DISP 180. Action is then taken on C2 and a portion of the playlist from C2 is displayed on DISP 180 with the song currently being played highlighted in that list of songs. The music for the song currently being played is output on SPK 160. Finally, the recording of C3 is completed and DISP 180 displays the title, author, current chapter, and publisher of the audio book. Action on C3 may be put on hold pending C2 completing playback of the songs stored in SDHC 2121.
Here, media device 100 handled the various types of content C and operated on one type of content (recording C3) while other content (C1 & C4, C2) were being acted on, such as displaying C1 and C4 or playback of mp3 files from C2. In
Media device 100 may take action on the queued content in any order including but not limited to random order, the order in which it is queued, or commanded order, just to name a few. Media device 100 may be configured to operate in a “party mode” where each of the users 2200a-2200n in proximity of the media device 100 desires to have their content played back on the media device 100. Media device 100 may harvest all of the content and then act on it by randomly playing back content from Ca-Cn, allowing one of the users to control playback, like a DJ, or allowing a super user UDM to control playback order and content out of Ca-Cn. One of the users may touch or otherwise actuate one of the control elements 503-512 and/or one of the proximity detector islands 520 or an icon on DISP 180 to have their content acted on by media device 100. Content in Ca-Cn may be released by media device 100 if the user device associated with that content moves out of RF range of the media device 100.
In
Queuing action may include but is not limited: to waiting for the user content to complete recording and then placing the user content in a queuing order relative to other content already queued on the media device 100 (e.g., at the back of the queue); bumping content presently at the front of the queue once the user content has completed recording and beginning playback of the recorded user content; placing the user content behind the content currently being handled by the media device 100 such that the user content will be next in line for playback; moving the user content to the front of the queue; randomly placing the user content in the queue; allowing the user of the user device to control the queuing of the user content; allowing a DJ or other user to control the queuing of the user content; and allowing each user that is detected by the proximity detection islands, have one or more items in their content harvested and pushed to the top of the queue or placed next in line in the queue; and placing the user content in a queue deck with other content, shuffling the deck and playing on of the items of content from the deck, and re-shuffling the deck after playback of item; just to name a few.
Content, including the user content that was recorded may be queued in a party mode where each user who wants their content played back on the media device 100, approaches the media device 100, is detected by the proximity detection islands, receives notification of detection, has at least one selected item of user content harvested by the media device 100, and has the item of user content played back either immediately or after the current content being played back finishes. In some examples, the queue for content playback on media device 100 is only two items of content deep and comprises the current piece of content being played back and the user content of the user who approached the media device 100 and had their content harvested as described above.
Now referencing
As described above, one of the users or user devices may have super user (e.g., UM) or other form of override authority and that user may order the queue to their liking and control the order of playback of user content. Queue 2480 and/or the user content being queued need not reside in memory internal to media device 100 and may be located externally in NAS 2122, a USB Hard Drive, Cloud 2250, and a server, just to name a few. In some examples, media device 100 may delete or bump user content from queue 2480 if the wireless connection 2167 between media device 100 and the user device is broken or interrupted for a predetermined amount of time, such as two minutes, for example. The “Play In Order” example depicted is a non-limiting example and one skilled in the art will appreciate that the queuing may be ordered in a variety of ways and may be determined by executable program code fixed in a non-transitory medium, such as in DS 103, Flash 145, CFG 125, and APP 225, just to name a few. Therefore, controller 101 or a controller in a user device may execute the program code that determines and controls queuing of user content on the media device 100.
Attention is now directed to
At a stage 2504 content (e.g., C) may be accessed by the wireless user device (e.g., 2701 of
At a stage 2506 data about the content C that was accessed (e.g., descriptive data—DD) may be accessed by the wireless user device. The descriptive data DD may comprise metadata, descriptive metadata, tag, or other information/data related to, is about, that describes attributes, or is associated with the content C that was accessed. In some examples, the DD may already be included or otherwise associated with the content C and the stage 2506 may be skipped, for that particular datum of accessed content C, for example. In other examples, the DD may be accessed internal to the wireless user device, external to the wireless user device or both. Data source 2505 broadly includes without limitation any source of the DD that may be accessed at the stage 2506, using one or more communications links including but not limited to wireless links and wired links. As one example, if content C is music in the form of a digital audio file (e.g., MP3, FLAG, AIFF, WAV, RA, AU, AAC, ATRAC, Apple Lossless, WMA, MPEG-4, etc.), then the DD may comprise information about the music such as song title, artists, sidemen, producer, cover art, lyrics, images, photographs, liner notes, playing time, time index, location or address of the file or data that comprises the music (e.g., on NAS, local memory, Cloud, the Internet, URI, URL, web page, etc.). The DD may comprise proprietary (e.g., a format and/or data structure proprietary to the wireless media device(s) 100), known, accepted, or standardized formats, or some combination of those, for example. Actual format, structure, content, and source for the DD may be application dependent and is not limited to the examples described herein.
At a stage 2508 the DD may be encoded into a format that may be decoded by the wireless media devices (e.g., 100). Encoding at the stage 2508 may comprise stripping, ignoring, or otherwise parsing the DD to extract only those portions of the DD that may be encoded into the format that may be decoded by the wireless media devices. Encoding at the stage 2508 may comprise encrypting or otherwise adding data security to the DD that is encoded. Encoding at the stage 2508 may comprise data compression or other process for reducing a size (e.g., number of bytes) of the encoded DD. Data source 2507 broadly includes without limitation any source of data that may be accessed at the stage 2508 to effectuate the encoding of the DD. For example, data source 2507 may comprise algorithms and/or data embodied in a non-transitory computer readable medium that is electronically accessed by the wireless user device or external compute engine and executed on one or more processors to encode the DD.
At a stage 2510, the encoded DD from the stage 2508 may be embedded into the content C to form encoded content (EC). Embedding at the stage 2510 may comprise appending the encoded DD to a datum that comprises the content C that was accessed at the stage 2504, for example. Embedding at the stage 2510 may comprise adding the encoded DD to data structure or packet that comprises a plurality of fields such as headers, data payloads (e.g., the content C), or other, where the encoded DD may be one or more of the fields in the data structure or packet, for example. Data source 2509 broadly includes without limitation any source of data that may be accessed at the stage 2510 to effectuate the embedding of the encoded the DD to form the EC. Optionally, the EC may be stored or otherwise saved to one or more locations as denoted by data store 2511. Data store 2511 may be internal to the wireless user device, external to the wireless user device or both. For example, data store 2511 may be memory internal to the wireless user device (e.g., Flash memory). As another example, data store 2511 may be external memory disposed in the wireless media device (e.g., 100). As yet another example, data store 2511 may be external memory disposed in the Cloud, the Internet, NAS or other location. The EC may be saved for future use or re-use by the wireless user device. For example, some of the stages of flow 2500 may not need to be executed (e.g., stages 2504-2510) because the EC may be accessed from data store 2511. After the EC is accessed from data store 2511, other stages of the flow 2500 may be executed on the EC.
At a stage 2512 the EC may be wirelessly communicated to the wireless media device (e.g., using the wireless link from the stage 2502). Data source 2513 broadly includes without limitation any source of data that may be accessed at the stage 2512 to effectuate the wireless communication of the EC to the wireless media device 100. Data source 2513 may comprise APP 225, for example. The APP 225 may include data as to which wireless media device(s) the wireless user device is linked to, any handshakes or other protocols that may be needed to wirelessly communicate the EC to the wireless media device(s), etc. As one example, if the wireless user device and wireless media device are wirelessly linked via BT paring, via an acoustic link, and a WiFi link (e.g., they may communicate with one another over a wireless network they are connected with), then data source 2513 (e.g., APP 225) may be used to decide which of the available wireless links to use to communicate the EC (e.g., BT, acoustic, or WiFi). In this example, data source 2513 may be configured to use the fastest and most secure link available, such as WiFi over BT or acoustic. A microphone on either of the wireless devices (e.g., 100 and/or 2701) may detect high levels of ambient noise (e.g., AN 2799 of
At a stage 2514 a determination may be made by the wireless media device, the wireless user device or both, for handling of the EC. Handling may comprise without limitation the wireless media device playing back the EC, queuing the EC for playback, storing the EC, assigning handling of the EC to one or more other wireless media devices, streaming content associated with the EC (e.g., executing a playlist encoded and/or included in the EC), wirelessly communicating the EC to another device, just to name a few. If a YES branch is taken from the stage 2514, then the flow 2500 may transition to a stage 2516 where the EC is handled by the wireless media device. Data source 2515 broadly includes without limitation any source of data that may be accessed at the stage 2516 to effectuate the handling of the EC. For example, data source 2515 may comprise CFG 225 or may comprise an operating system (OS) for the wireless media device (e.g., code in DS 103) that determines how EC is to be handled by the wireless media device(s). On the other hand, if a NO branch is taken at the stage 2514, then flow 2055 may transition to some other stage, such as a stage 2518.
At the stage 2518 a determination may be made as to whether or not more content C may be available for processing by flow 2500. For example, at the stage 2504 there may have been one-hundred-three (103) items of content C on the wireless user device, comprised of three (3) playlist with a first playlist having fifty (50) songs, a second playlist having twenty (20) songs, and a third playlist having thirty (30) songs. Assuming for purposes of explanation that a user of the wireless user device wants the one-hundred-three (103) items of content C to be encoded and handled by the wireless media device it links with at the stage 2502, then flow 2500 may process each item of the 103 items of content C. After the first item of content C is processed, the stage 2518 may select the YES branch to indicate there are one or more other items of content C to be processed (e.g., the second, third, . . . to the last of the 103 items). The YES branch from the stage 2518 may transition to some other stage of flow 2500 as denoted by 2520. As one example of what 2520 may comprise, consider a scenario where all of the 103 items of content C are accessed at the stage 2504 and all of the DD for all 103 items is accessed at the stage 2506. Then 2520 may comprise a transition of flow 2500 to the stage 2508 where the DD for each item of content C is encoded, followed by the stage 2510, etc. On the other hand, if there is no more content C to be processed, then a NO branch may be taken and flow 2500 may terminate. Data source 2517 broadly includes without limitation any source of data that may be accessed at the stage 2518 to make the determination of whether or not more content C is to be processed by flow 2500. For example, data source 2517 may be a counter that starts at the number of items of content C to be processed by flow 2500 (e.g., 103 items) and is decremented by one each time an item of content C has been processed. Stage 2518 may access data source 2517 to determine if its value is zero (“0”) (e.g., all 103 items have been processed) or some other value that indicates completion or no more content C.
Reference is now made to
At a stage 2604 the wireless user device may access content C as was described above in reference to the stage 2504 in flow 2500 and data source 2603 may be accessed as described above for data source 2503. Optionally, data store 2511 may be accessed at the stage 2604. Data store 2511 may comprise one or more items of EC (e.g., encoded content from the stage 2510) as was described above.
At a stage 2606 a determination may be made as to whether or not the content C includes encoded descriptive data (DD) as described above in reference to the stages 2506-2510 of flow 2500. If a YES branch is taken, then flow 2600 may transition to a stage 2608 as will be described below. If a NO branch is taken, then flow 2600 may transition to another stage, such as the stage 2506 of flow 2500 as described above. Stages 2506-2510 of the flow 2500 may be executed to access, encode, and embed the DD into the content C. After stage 2510, flow 2600 may resume at the stage 2608.
At the stage 2608 a determination may be made as to whether or not to embed the encoded DD into other content (OC). One example of OC may be a signature tone or startup tone used by one or more of the wireless media devices (e.g., 100) to acoustically wirelessly communicate with one another for data communication (e.g., a power up), to configure one or more wireless media device (e.g., using CFG 125), etc. APP 225 may include or have access to the signature tone as OC and may embed encoded DD into the OC for purpose of communicating information in the encoded DD to the wireless media device. The encoded DD may comprise data that is unrelated to the data in the OC. For example, the encoded DD may be data about one or more items of unrelated content C that are encoded into the OC for subsequent decoding by the wireless media device (e.g., post stage 2614 of flow 2600). For example, if the OC is the signature tone, the encoded DD may comprise content C in the form of a location for a song the wireless user device is commanding the wireless media device to handle (e.g., to playback the song on the wireless media device). Wireless user device may use a speaker to acoustically transmit EC that comprises the OC startup tone with the encoded DD having the location of the song to be handled. A microphone on the wireless media device may receive the acoustic transmission which is subsequently decoded by the wireless media device to extract the location of the song from the encoded DD and handle processing of the song. Essentially, the OC (e.g., signature tone) may include a link, pointer, or address (e.g., the encoded DD) to content C to be handled by the wireless media device. Upon receiving and decoding the EC that includes OC plus the encoded DD, the information decoded from the encoded DD may be used by the wireless media device to access and handle the content C. Therefore, in this example, the EC itself does not include the content C to be handled, but rather information for accessing the content C to be handled.
Accordingly, if a YES branch is taken from the stage 2608, then the OC is accessed at a stage 2610. Data source 2605 may be used at the stage 2610 to access the OC in a manner similar to that described above for data sources 2603 and/or 2503. At a stage 2612 the encoded DD is embedded into the OC to form EC as was described above in reference to flow 2500. At a stage 2614 the EC may be wirelessly communicated to the wireless media device as was described above in reference to the stage 2512 of flow 2500. Data source 2613 may be accessed at the stage 2614 as was described above in reference to stage 2512 and data source 2513. However, if a NO branch is taken at the stage 2608, then flow 2600 may transition to the stage 2614 (e.g., the OC will not be embedded with encoded DD). After the stage 2614, flow 2600 may transition to some other stage, such as the stage 2514 of flow 2500 as described above.
Referring now to
Actual configurations of wireless user devices, such as device 2701, will vary and the examples provided herein are for purposes of explaining the present application and are not to be construed as limiting in any way the types and configurations of wireless user devices that may interact with wireless media devices, such as wireless media device 100. Wireless user device 2701 may include a plurality of systems including but not limited to one or more radios for transmitting, receiving, or both, RF signals 2710 for wireless communications (e.g., WiFi, IEEE 802.1, NFC, BT, BT low energy, etc.), a power supply (e.g., lithium ion rechargeable battery), one or more microphones 2702 or similar transducer for generating a signal 2702c from incident sound (e.g., sound in ENV 198), one or more antennas 2714 coupled with the one or more radios, one or more speakers 2704 or similar transducers for generating sound in response to an applied signal 2704c (e.g., from an amplifier), a display 2703 (e.g., touch screen, OLED, LCD, etc.) for displaying information such as a GUI or an application running on device 2701, data storage (e.g., Flash memory) for storing an OS, application software, APPS, algorithms, data, media files, content C, etc., and one or more controllers or processors (e.g., SoC, Baseband processor, DSP, μP, μC, ASIC, etc.), just to name a few, for example.
As described above, wireless user device 2701 may include APP 225 configured for use (e.g., communication, command, control, content handling, etc.) with one or more wireless media devices 100. APP 225 may have access to content C that may reside on the device 2701, external to the device 2701 or both. APP 225 may be one or more algorithms and/or data embodied in a non-transitory computer readable medium, such as a data storage system of device 2701, for example. Access to content C by APP 225 may include managing and/or presenting the content C on display 2703 in a form the user 201 may interact with, such as the GUI or other form of displaying information. The GUI of the device 2701 or a GUI generated by APP 225 may display content C in various formats. Here, the GUI displays at least a portion of the content C as one or more playlists P1-P3, with each playlist comprised of one or more songs or other media type. For example, playlist P3 includes a plurality of songs denoted as S1-S7. There may be more or fewer playlists and/or songs as denoted by 2711 and 2713. APP 225, via the GUI, may display one or more wireless media devices that the user device 2701 is wirelessly linked with and/or has been previously wirelessly linked with, as denoted by WMD's 100-100vi. There may be more or fewer wireless media devices than depicted as denoted by 2715. User 201 may have commanded the device 2701 to display the content C depicted in the GUI or the display may be controlled by APP 225 or other algorithm and/or system of device 2701.
Wireless media device 100 may include a plurality of systems as described above in reference to
Now referring back to flow 2500 of
The wireless communications link may be one or more of acoustic, RF, or optical and the mode of wireless communication may reversibly switch between one or more of the RF, acoustic, or optical links during interaction between user device 2701 and media device 100. The wireless communications link may be established between one or more wireless user devices and one or more wireless media devices even thou
After establishing the wireless link, user device 2710 may access content C (e.g., at the stage 2504) which may be internal, external of both to the user device 2710. For example, user 201 may have selected preferences that are stored or otherwise coded in APP 225, that want content C to be handled by media device 100 when both devices are disposed in ENV 198 (e.g., are in close proximity of each other). As one example, if the user 201 was currently playing song S7 in playlist P3 when the wireless link was established (e.g., at the stage 2502), then the content C that comprises S7 would be accessed (e.g., via a read operation) by the user device 2701. The user device 2701 may then access (e.g., at the stage 2506) descriptive data DD about song S7 from a data source that may be internal, external or both to user device 2701. The DD may comprise the location (e.g., address, file folder, URI, URL or other descriptor) of the song S7, playing time of S7, song title for S7, artist or group that performed S7, and a time index, if any, to begin playback of S7, for example. The DD may then be encoded into a format that may be decoded by the wireless media device 100 (e.g., at the stage 2508). Decoding may be done using hardware (e.g., 101), software (e.g., CFG 125 or other algorithms) or both. The encoding may be in a format that is proprietary to wireless media devices 100. Decoding of the encoded DD may be accomplished using processing in the analog domain, digital domain or both. Circuitry including but not limited to a DSP, an analog-to-digital-converter (ADC) or a digital-to-analog-converter (DAC) may be used in the decoding process. The DSP or other compute engine may execute one or more algorithms to effectuate the decoding of the encoded DD.
The encoded DD may be embedded or otherwise linked or associated with the content C that was accessed (e.g., at the stage 2510). For example, the encoded DD may be embedded into a file that comprises S7, included in one or more field of a data packet in which S7 will be transmitted to media device 100, may be concatenated into a file that comprises S7 (e.g., as a header or footer), may be included in a wrapper file or object that includes S7, or may be wirelessly transmitted in some sequence that includes data for the encoded DD and data for S7, for example. As one example, the encoded DD may be wirelessly transmitted first, followed by wireless transmission of the accessed content C associated with the encoded DD, such as S7. Although a single item of content C (S7) is described, the user device 2701 may access as the content a plurality of items (e.g., a plurality of songs and/or playlists, etc.) that are all described in the DD and included in the encoded DD. As one example, the accessed content C may comprise one or more of the playlists P1-P3 and all of the songs in those playlists. The DD may comprise information about the playlists, their respective songs, and the locations of the playlists and songs, for example. The encoded DD that is embedded or otherwise associated with the accessed content C would include that information as well. After embedding or otherwise associating the encoded DD with the content C, the content may be referred to as encoded content (EC) that may comprise a single datum or a plurality of datum that are wirelessly communicated to the wireless media device 100 either directly from the user device 2701 using one of the aforementioned wireless links, from an external system (e.g., 2750, 2760) or both. In
A single datum for the EC may comprise the encoded DD embedded in the same file, data structure, or packet as the accessed content C. For example, S7-EC may be a single file or data structure that includes the content for song S7 plus the encoded DD for song S7. As another example, S7-EC may comprise a packet formatted to include one of more fields for the S7's content C (e.g., a data payload) and one or more fields for the encoded DD for S7, as well as other fields used in packets for communicating data, such as error correction, check sums, headers, footers, etc.
The plurality of datum for the EC may comprise multiple datum's that are wirelessly transmitted to the media device 100 or a first subset of the plurality of datum that are wirelessly transmitted to the media device 100 and a second subset of datum that are accessed by the wireless media device 100 based on information contained in the first subset. For example, the first subset may include the encoded DD that upon being decoded by the media device 100, may include information the media device 100 uses to access the datum in the second subset, which may comprise the content C to be accessed and optionally handled by the media device 100. The first subset may include data for a web page, Internet address, URI, URL or the like where the content C in the second subset can be accessed by the media device 100. For example, the encoded DD in the first subset may include a URL 2758 that links to a web site or other address in resource 2750 (e.g., the Internet or Cloud) where the content C in the second subset may be accessed from, such as from a data storage system 2757.
In some examples, the EC may be acted on (e.g., handled) by the wireless media device 100 such as denoted by the stage 2514-2516 of flow 2500. Handling of the EC may broadly include the media device 100 or other media devices 100 in communication with media device 100 and/or wireless user device 2701 performing one or more actions on the EC. The actions taken may be determined in whole or in part by one or more of the CFG's 125 of one or more of the media devices 100, the APP 225 on user device 2701, a command by user 201 (e.g., via the GUI, voice command, etc.), hardware, or algorithms, for example. As one example, the user 201 may have selected song S7 for playback on media device 100 and the handling of the subsequent EC may be to initiate playback of S7 on media device 100 (e.g., via SPK's 170) and/or on one or more other wireless media devices 100 in wireless communication with media device 100 (e.g., via BT link, WiFi link, AdHoc WiFi link, etc.). As another example, if S7 is a multi-channel media file (e.g., surround sound, DTS®, Dolby®, etc.), then the various encoded channels of sound (left-front, right-front, center, left-rear, right-rear, subwoofer, etc.) may be assigned (e.g., via the CFG's 125) to a plurality of different wireless media devices 100 in the same ecosystem and/or disposed in ENV 198. As yet another example, if the EC comprise video, images, or audio-video content, handling by media device 100 may comprise playback of the image or video content on display 180 and audio content (if any) over SPK's 170. In some examples, handling of EC by media device 100 may not be immediate, may be delayed, may be queued, or may be stored for later use. In other examples, EC may be a link, pointer, or address to other content to be accessed or handled by the media device(s) 100 and handling the EC may comprise acting on the link, pointer, or address and accessing and/or handling the content C there according to data in the EC, the CFG's 125, etc. For example, the EC that is wirelessly communicated (e.g., at the stage 2512) to the media device 100, upon decoding may reveal a location on NAS 2765 where the content C to be accessed resides and the media device 100 may wirelessly stream the content C for playback over the media device 100 or other media devices 100. Here, wireless media device 100 and wireless network/router 2760 may be wirelessly linked (e.g., via WiFi, IEEE 802.1 or other). The content C to be accessed may reside in more than one location specified by the EC, such as in NAS 2765, server 2762, and data storage 2754 of resource 2750, for example. NAS 2765 and server 2762 may be in communication (2763, 2764) with router 2760 and the content C on NAS 2765 and server 2762 may be wirelessly communicated 2730 to the media device 100 for handling. Similarly, content C in data storage 2754 of resource 2750 may be wirelessly communicated 2720 (e.g., using cellular tower 2756) from resource 2750 to media device 100 for handling. Content C being handled may be wirelessly transferred in total to the media device(s) 100, be streamed, buffered, stored, or handled in chunks or portions that may be determined by factors including but not limited to wireless bandwidth, download times, a data size (e.g., in megabytes, gigabytes, etc.) of the content C, data storage capacity of media device 100 (e.g., in DS 103), copyright and/or digital media rights, persistence of the content C, the type of content C, just to name a few.
The wireless communication of the EC (e.g., at the stage 2512) may comprise one or more acoustic signals 2776 generated by SPK 2704 of user device 2701 that are received 2776 by MIC 160 of media device 100. Signals 160c generated by MIC 160 may be decoded 2772 to extract data from the encoded DD that is included the EC. The wireless communication of the EC (e.g., at the stage 2512) may comprise one or more RF signals 2710 transmitted by user device 2701 and received by Tx/Rx 2777 of media device 100. The RF signal may be decoded 2778 to extract data from the encoded DD that is included the EC. The wireless communication of the EC (e.g., at the stage 2512) may comprise one or more wireless signals 2710 and one or more acoustic signals 2776 that may be transmitted in some sequence or simultaneously by user device 2701. For example, the encoded DD portion of the EC may be acoustically transmitted, followed by wireless RF transmission of the content C associated with the EC. This sequence may be used when the data that comprises the content C is large in size and a higher bandwidth and/or error correction capabilities of the wireless protocol used for the RF transmission may make it more ideal than acoustic transmission of the content C. Moreover, if ambient noise AN 2799 in ENV 198 is of sufficient amplitude (e.g., in dB's) to prevent MIC 160 from accurately receiving 2776 the acoustic transmission 2776 from SPK 2704, then user device 2701, media device 100 or both may act to switch from acoustic to RF wireless transmission of the EC and/or its associated content C.
In other examples, at least a portion of the EC may be optically wirelessly transmitted (e.g., at the stage 2512) using optical systems of the user device 2701 and media device 100. For example, OPT 185 in I/O 105 may be used to receive 185r optical signals from user device 2701 or to transmit 185t optical signals to the user device 2701. User device 2701 may include an optical transmit 185t and receive 185r system that may be similar to that of media device 100 and/or communicates using a wireless protocol (e.g., IrDA or other) that is compatible with or identical to those used by media device 100. For example, infrared LED's may be used in conjunction with an opto-electronic device such as a photo diode, PIN diode, or the like for receiving the optical signals and converting them into signals to be decoded 2782 or otherwise processed in the devices 2701 and 100. RF wireless and/or acoustic wireless communications between media device 100 and user device 100 may supplement and/or replace the optical wireless communications.
In another example, the EC may comprise a bar code, TAG, or other image based symbol that is encoded with information that may be captured by the media device 100 (e.g., via 190), processed, and output as a decoded signal. As one example, the stages 2506-2510 may result in an encoded image (e.g., a TAG or other) denoted as EC1 being displayed on display 2703 of user device 2710. The user device 2710 and media device 100 may be positioned 2792 relative to each other such that image capture device 190 may image 190i the encoded image EC1 off of the display 2703 and generate a signal that is decoded 2781 to extract the encoded DD from EC1. For example, EC1 may include data that describes a location where the content C associated with EC1 may be accessed by the media device 100, such as NAS 2765, data storage system 2757 and/or 2754 in resource 2750, or the wireless user device 2701. EC1 may be generated (e.g., via flow 2500 or 2600) by user device 2701, server 2762, compute engine 2752 in resource 2750 or some combination of the foregoing, for example. As another example, the captured image 190i of EC1 upon being decoded by media device 100 may include data instructing media device 100 to access song S7 from playlist P3 on wireless user device 2701 using one or more of the wireless RF links between those two wireless devices (e.g., WiFi via router 2760 or directly using a BT link).
Moving on to
In
Turning now to
Although the foregoing examples have been described in some detail for purposes of clarity of understanding, the above-described conceptual techniques are not limited to the details provided. There are many alternative ways of implementing the above-described conceptual techniques. The disclosed examples are illustrative and not restrictive.
Claims
1. A method for proximity-based control of content on a device, comprising:
- acoustically detecting a user device using a proximity system, an audio/video (A/V) system or both of a media device;
- establishing an acoustic communications link between the user device and the media device;
- receiving on the media device, using the link, an acoustic signal from the user device;
- harvesting user content, data or both from the acoustic signal; and
- transferring content handling of the user content, the data or both from the user device to the media device.
2. The method of claim 1 and further comprising: queuing the user content relative to other content currently being handled by the media device.
3. The method of claim 2, wherein the queuing comprises a preferential queuing of the user content relative to the other content.
4. The method of claim 1 and further comprising: recording, using the media device, the user content, the data or both.
5. The method of claim 4, wherein the recording includes storing the user content, the data or both in memory internal to the media device.
6. The method of claim 4, wherein the recording includes storing the user content, the data or both in memory external to the media device.
7. The method of claim 1 and further comprising: modifying a playlist on the media device based on the user content, the data or both.
8. (canceled)
9. The method of claim 1, wherein the transferring comprises initiating playback of the user content on the media device.
10. The method of claim 1, wherein the harvesting, the transferring or both include wirelessly establishing a radio frequency (RF) communication link between the user device and a RF system of the media device.
11. The method of claim 1, wherein the harvesting, the transferring or both are wirelessly accomplished by using the acoustic communications link between the user device and the media device.
12. The method of claim 1, wherein the proximity system includes at least one proximity detection island configured to detect the user device.
13. The method of claim 1, wherein the receiving comprises using a microphone included in the A/V system to receive the acoustic signal from the user device.
14.-15. (canceled)
16. A wireless device including wireless detection of users and user devices, comprising:
- a controller in electrical communication with a data storage system, a radio frequency (RF) system including at least one RF antenna electrically coupled with a plurality of RF transceivers, an audio/video (AN) system including a speaker for producing sound, a microphone for capturing sound, a proximity detection system configured to wirelessly detect presence of a user, a user device or both,
- wherein the RF system is configured to detect a RF signal from the user device, to establish a wireless communications link with the user device, to wirelessly access user content, data or both from the user device or a location specified by the user device using the wireless communications link,
- wherein the A/V system is configured to detect an acoustic signal from the user device using the microphone, to establish an acoustic communications link with the user device using the speaker and the microphone, to wirelessly access the user content, the data or both using the acoustic communications link, and
- wherein the controller is configured to harvest the user content, the data or both that was accessed using the RF system, the A/V system or both, and configured to take over handling of the user content, the data or both from the user device.
17. The device of claim 16, wherein the handling comprises playback or queuing of the user content, the data or both.
18. The device of claim 16, wherein the handling comprises recording or buffering of the user content, the data or both.
19. The device of claim 16, wherein the data includes information used by the RF system to establish the wireless communications link with the user device, and the user content, the data or both are wirelessly accessed using the wireless communications link.
20. The device of claim 16, wherein the proximity detection system includes a plurality of proximity detection islands.
21. The device of claim 16, wherein the A/V system is configured to process the acoustic signal in a frequency range that is outside a range for human hearing.
22. (canceled)
23. The device of claim 16, wherein the microphone is configured to capture the acoustic signal in a frequency range that is outside a range for human hearing.
24. The device of claim 16, wherein the speaker is configured to produce the acoustic signal in a frequency range that is outside a range for human hearing.
Type: Application
Filed: Dec 12, 2013
Publication Date: Jun 18, 2015
Applicant: ALIPHCOM (San Francisco, CA)
Inventor: Michael Edward Smith Luna (San Jose, CA)
Application Number: 14/105,127