WO2015153640A1 - Entertainment environment remote control and audio/video streaming method and system - Google Patents

Entertainment environment remote control and audio/video streaming method and system Download PDF

Info

Publication number
WO2015153640A1
WO2015153640A1 PCT/US2015/023634 US2015023634W WO2015153640A1 WO 2015153640 A1 WO2015153640 A1 WO 2015153640A1 US 2015023634 W US2015023634 W US 2015023634W WO 2015153640 A1 WO2015153640 A1 WO 2015153640A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
content
ota
program
commands
Prior art date
Application number
PCT/US2015/023634
Other languages
French (fr)
Inventor
Mark J. VOGT
Jason Carman
Original Assignee
Flyover Innovations, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US14/251,027 external-priority patent/US20150042447A1/en
Application filed by Flyover Innovations, Inc. filed Critical Flyover Innovations, Inc.
Publication of WO2015153640A1 publication Critical patent/WO2015153640A1/en

Links

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C23/00Non-electrical signal transmission systems, e.g. optical systems
    • G08C23/04Non-electrical signal transmission systems, e.g. optical systems using light waves, e.g. infrared

Definitions

  • aspects of the present disclosure are generally related to proximity based wireless remote control of audio systems. More specifically, aspects of the present disclosure relate to an interface to enable smart devices to remotely control and stream audio and video to audio/video devices within an
  • Modern day hand-held devices are also becoming increasingly powerful. Examples of these smart devices include smart phones, music players, electronic tablets, etc. More specifically, these devices include iOS products like the iPhoneTM, iPod TouchTM and iPadTM devices (manufactured and sold by Apple Inc.), smart phones and tablets by BlackberryTM, AndroidTMphones and tablets, and touch screen devices by Motorola, Samsung and others. These devices include processors capable of performing multiple tasks and supporting many different "applications". Some such applications enable these smart handheld devices to be used as remote control devices. With the increasing use of smart hand-held devices as remote control devices, we are starting to face situations where there are multiple devices for the same remote control. There is a need for a system and interface to identify the nearby controllable devices close to the remote control device. The present disclosure addresses such a need in audio and video systems.
  • aspects of the present disclosure generally relate to proximity based wireless control delivery from multiple service providers. More specifically, aspects of the present disclosure relate to an interface to enable smart devices to remotely select and manage streaming of audio and video to various audio/video devices within an entertainment environment. Further, the present disclosure relates to an integrated intelligent device system that is configured to, among other things, select over the air (OTA) content and/or non- OTA content, and record/playback OTA and non-OTA content.
  • OTA over the air
  • entertainment environments include multiple A/V devices that are functionally segregated from one another.
  • the A/V devices required physical cables to interconnection and control.
  • each service provider provides a separate device that must be independently operated to access that SP's content.
  • the multiple devices are expensive and difficult to interconnect with cables during installation.
  • users hire third parties to install the equipment and run large amounts of wire throughout a home.
  • the prior equipment may not be compatible therewith and thus old equipment is discarded.
  • a need remains for a system and method that permit users to remove dependence on physical cable connections between A/V devices in the home. Further, a need remains for a system and method that afford the user more flexibility in selecting and quicker access to content of interest, independent of the service provider program guide environment.
  • Embodiments herein concern methods and systems for devices to remotely control and stream audio and/or video signals to nearby audio and/or video devices in a wireless network based audio/video system.
  • the system comprises an infrared (IR) transmitter panel holding a plurality of IR LEDs formed in a LED array and at least one transceiver configured to maintain an IR transmitter panel.
  • IR infrared
  • the system also comprises a processor configured to identify remote control (RC) commands received over the administration link, the processor configured to direct the LED array to generate an IR signal having a select IR pulse sequence based on the RC commands.
  • the LED array is configured to transmit the IR signal in a reflective-deflective pattern across the entertainment environment until reaching at least one remotely controlled (RC) device within the entertainment
  • the RC device is positioned in a non-line of sight relation with the LED array.
  • the system may further comprise an audio output component configured to generate an audio signal, the processor configured to identify audio data received over the streaming link, the processor configured to direct the audio output component to generate the audio signal based on the audio data.
  • the system may be configured wherein the IR signals are configured to reflect off objects in the entertainment environment in multiple directions.
  • the system may be configured wherein the IR LEDs are arranged in a two dimensional array on the IR transmitter panel.
  • the system may be configured wherein the LED array includes first and second LEDs having corresponding different first and second propagation directions and different first and second propagation envelopes, respectively.
  • the system may be configured wherein the first propagation envelope has a narrow beamwidth and the second propagation envelope has a wide beamwidth relative to the narrow beamwidth.
  • the system may be configured wherein the first and second propagation directions project at different first and second angles from a front surface of the IR transmitter panel such that the first and second IR LEDs transmit IR signals having a common IR code from the IR transmitter panel at the different first and second angles.
  • system may be configured wherein the
  • transceiver is configured to establish a temporary low energy administration link between the home unit and at least one smart handheld device in connection with conveying remote control related command(s) to the home unit.
  • the system may be configured wherein the transceiver is configured to communicate with the smart handheld device using a Bluetooth Low Energy (BLE) communications protocol, in connection with the administrative link, to remotely control one or more A/V remotely controllable devices.
  • BLE Bluetooth Low Energy
  • the system may be configured wherein the processor is configured to determine whether an RC command is received with data received over the administration link and to convert the RCD command to an associated select IR pulse sequence.
  • the system may be configured wherein the LED array is arranged such that the IR signals 36 propagate in multiple directions and at multiple angles from the LED array, the IR signals contacting other structures within the entertainment environment and be redirected or reflected in other directions such that the IR signals bounce off multiple structures in the entertainment environment before reaching the RC device, wherein redirection/reflection of the IR signals increases a likelihood that one or more of the IR signals 36 is received by each of the RC device.
  • Embodiments herein concern methods and systems for selecting and managing streaming content from multiple service providers, the system comprising: at least one transceiver configured to maintain a bidirectional administration link with a smart handheld device and configured to maintain a separate streaming link with entertainment devices; and a processor configured to identify user entries designating content of interest, the processor configured access program information for multiple service provides and search for matches between programs offered by the service providers and the content of interest, the processor configured to present a program list to the user of programs that potentially match the content of interest, where the program list includes at least two potential matches that are from different first and second service providers, the processor configured to receive a selection from the smart handheld device designating one of the potential matches, the processor configured to access the program from the service provider corresponding to the selection and stream the selection to an entertainment device.
  • the system further comprises an app configured to operate on a smart handheld device, the processor conveying the program list to be displayed on the smart handheld device, the program list including multiple entries for a common program but from the different first and second service providers.
  • Figure 1 illustrates a block diagram of a system formed in accordance with embodiments herein.
  • Figure 2 illustrates a block diagram of the IR transmitter subsystem provided within the mobile unit in accordance with an embodiment.
  • Figure 3 illustrates multiple alternative or complentary configurations in which the LED array may be arranged in accordance with alternative embodiments.
  • Figure 4 illustrates an alternative configuration for the IR transmitter subsystem.
  • Figure 5 illustrates an alternative configuration for the IR transmitter subsystem.
  • Figure 6A illustrates a top plan view of the IR transmitter
  • Figure 6B illustrates a side perspective view of the IR transmitter sub-system of Figure 6A.
  • Figure 7 illustrates a schematic representation of the system for AndroidTM smart handheld devices.
  • Figure 8 illustrates a representation of the system where a GATT protocol may be used instead of the SSP protocol in connection with the bidirectional administration link.
  • Figure 9 illustrates a schematic representation of an embodiment showing simultaneous connections with multiple SD.
  • Figure 10 illustrates a flowchart of a process for managing audio/video streaming communications exchange and priority for multiple SD in accordance with an embodiment.
  • Figure 1 1 illustrates an example of a bidirectional administration communications protocol utilized with the administration link in accordance with an embodiment.
  • Figure 12 illustrates a format that may be utilized in connection with individual user configurations associated with an individual HU.
  • Figure 13A illustrates a block diagram of a distributed networking environment implemented in accordance with an embodiment.
  • Figure 13B illustrates a method for the network of Figure 13A to manage user configurations for smart handheld devices that communicate through home units to corresponding entertainment environments.
  • Figure 14 illustrates a block diagram of a process for managing transfer of communications between multiple SDs and a common home unit.
  • Figure 15 illustrates a process implemented in accordance with an embodiment to learn unknown new IR sequences in connection with select commands.
  • Figure 16 illustrates a method for collecting viewer behavior information, developing viewer profiles and providing recommendations based on the viewer profile.
  • Figure 17 illustrates a block diagram of a system formed in accordance with embodiments herein.
  • Figure 18 illustrates a block diagram of the various functional components utilized in accordance with an embodiment to select content between the multiple service providers.
  • Figure 19 illustrates a flowchart process carried out in accordance with an embodiment to provide content management and selection.
  • Figure 20 illustrates an exemplary screenshot on the SD in accordance with an embodiment.
  • Figure 21 illustrates a block diagram of a portion of the system with a more detailed illustration of the smart AHU as formed in accordance with an embodiment.
  • Figure 22 illustrates a functional block diagram of a browse recording/DVR (BR) app, within the UCSM app, formed in accordance with an embodiment.
  • Figure 23 illustrates a logical flow for tasks implemented within the BR app and the smart AHU.
  • Figure 24 illustrates a functional block diagram of a settings change (SC) app, within the UCSM app, formed in accordance with an embodiment.
  • SC settings change
  • Figure 25A illustrates an initial setup (IS) app, within the UCSM app, that may be implemented on the SD, the HU, the AHU or another computing device.
  • IS initial setup
  • Figure 25B illustrates a logical flow for the IS app.
  • Figure 26 illustrates a show discover (SD) app, within the UCSM app, that may be implemented on the SD, the HU, the AHU or another computing device.
  • SD show discover
  • Figure 27 illustrates a channel guide (CG) app, within the UCSM app, that may be implemented on the SD, the HU, the AHU or another computing device.
  • CG channel guide
  • Figure 28A illustrates a channel selection (CS) app that may be implemented on one or more of an SD, AHU, HU or other computing device.
  • CS channel selection
  • Figure 28B illustrates a logical flow for the channel selection process of Figure 28A.
  • Figure 29 illustrates a logical flow implemented in connection with playback options.
  • Figure 30 illustrates a multi-user scenario in which multiple users each have individual SDs that interact with the AHU.
  • Figure 31 illustrates a voice control subsystem implemented in accordance with embodiments herein.
  • Figure 32 illustrates an array of microphones that may be
  • FIG. 1 illustrates a block diagram of a system 2 formed in accordance with an embodiment.
  • the system 2 includes one or more smart handheld devices (also referred to as SDs or mobile devices (MDs)).
  • the SD 10 communicates with one or more home units (HU) 20, which in turn communicate with one or more audio and/or video remotely controllable devices (RCDs) 30-32.
  • the SD 10 includes a user interface 52 having inputs and a display.
  • the user interface 52 is configured to permit the user to enter commands to, among other things, remotely control the RCDs 30-32.
  • the SD 10 and/or HU 20 may be configured to communicate, through a cellular network 3 over the Internet 9 with cloud computing services (CCS) 1 1 and/or dedicated enterprise server(s) (ES) 13.
  • CCS cloud computing services
  • ES dedicated enterprise server(s)
  • Data storage 15 is provided over the Internet 9 for storage and access by the CCS 1 1 and/or ES 13.
  • the CCS 1 1 and ES 13 perform various functions, analysis, management and the like as explained in connection with various embodiments herein (such as in connection with Figures 12-16).
  • the SD 10 may access, download information from and upload information to the CCS 1 1 , ES 13 and data storage 15 through a cellular network connection, a wifi network connection or otherwise.
  • the HU 20 may access, download information from and upload information to the CCS 1 1 , ES 13 and data storage 15 through a cellular network connection, a wifi network connection or otherwise.
  • the HU 20 may be configured to include a cellular chip set (e.g., cellular chip set 7) and assigned a cellular phone number in order to afforded a cellular network connection with a subscription cellular network (e.g., ATT, Sprint, Verizon), similar to the cellular chip sets offered in iPAD devices, iTouch devices, and the like.
  • a subscription cellular network e.g., ATT, Sprint, Verizon
  • the HU 20 may include Internet connectivity components (ICC) 5, such as a chip set configured to operate as a gateway, router, a network access point and the like.
  • ICC Internet connectivity components
  • the SD 10 uploads a streaming and entertainment environment control (SEEC) application 16, such as from an Apple or Google service.
  • SEEC streaming and entertainment environment control
  • the SEEC APP 16 enables the SD 10 to communicate with the home unit 20 over at least two communications links 12 and 14 that exhibit different basic
  • one communications link 12 may be referred to as an administration link, and is configured to support unidirectional or bidirectional communication of non-streaming data content, while utilizing limited power, and affording quick or short connect and disconnect sequences to be followed in accordance with establishing a data connection session over one or more data channels.
  • an administration link may be referred to as an administration link, and is configured to support unidirectional or bidirectional communication of non-streaming data content, while utilizing limited power, and affording quick or short connect and disconnect sequences to be followed in accordance with establishing a data connection session over one or more data channels.
  • One example of a protocol that affords bi-directional, low power, quick connect/disconnect characteristics is the Bluetooth low-energy protocol.
  • the other communications link 14 may be referred to as a streaming link 14, and is configured to support at least unidirectional data streaming, with a level of power demand that may be higher than the level of power demand utilized by the administration link 12.
  • the streaming link 14 may also exhibit a more involved connection sequence followed to establish a data connection session over one or more data channels, as compared to the connection sequence followed the administration link 12.
  • the streaming link 14 also exhibits robust data transfer to allow reliable data streaming over mid-range distances.
  • One example of a protocol that supports data streaming with the select network characteristics is the classic Bluetooth protocol.
  • the communications links 12 and 14 are utilized in connection with different types of data transmission between the SD 10 and HU 20.
  • the SD 10 establishes a temporary low energy BLE administration link 12 with the HU 20 in connection with conveying the remote control related connnnand(s) to the HU 20.
  • the SD 10 establishes a classic Bluetooth streaming link 14 in connection with streaming audio and/or video content from the SD 10 to the HU 20.
  • the HU 20 includes at least one transceiver 22 that supports one or both of the administration and streaming links 12 and 14.
  • a Bluetooth transceiver 22 may be used to establish a BLE administration link 12 in connection with remote control related operations.
  • the Bluetooth transceiver 22 receives data packets over the link 12, and extracts data from the data packets.
  • the Bluetooth transceiver 22 then passes the data to the microprocessor 24.
  • the microprocessor 24 "unpacks" the data and determines whether the data includes remote control (RC) commands intended for the A/V RCDs 30-32.
  • RC remote control
  • the microprocessor converts the RC commands to a corresponding IR code designating a select IR pulse sequence.
  • the HU 20 includes, within an IR transmitter subsystem 26, an optical IR transmitter 35, such as single LED or an LED array.
  • the optical IR transmitter 35 comprises LEDs arranged in at least one row and/or at least one column and is discussed in more detail below in connection with Figures 2, 3, 4, 5 and 6.
  • the IR code is conveyed from the microprocessor 24 to the IR transmitter subsystem 26.
  • the IR transmitter subsystem 26 drives the optical IR transmitter 35 to cause the LEDs to generate IR signals including the
  • the optical IR transmitter 35 transmits a corresponding number of IR signals 36 as an IR cluster 34 having the
  • the IR signals 36 propagate in multiple directions and at multiple angles from the optical IR transmitter 35.
  • the IR signals 36 may propagate in a direct line of sight to an IR receiver at one or more of the AV RCDs 30-32.
  • one or more of the IR signals 36 may contact other structures within the entertainment environment and be redirected or reflected in other directions such that the IR signals 36 bounce off multiple structures in the entertainment environment before reaching an RCD 30-32.
  • the redirection/reflection of the IR signals 36 increases the likelihood that one or more of the IR signals 36 is received by each of the AV RCDs 30-32.
  • the HU 20 also includes a stereo audio and/or video (AA/) output 28 coupled to an audio and/or video system 40 over in AV line 44.
  • the audio/video system 40 is coupled to one or more speakers 42 and/or a television or other display.
  • the SD 10 conveys streaming audio and/or video content over the classic Bluetooth streaming link 14 to the Bluetooth transceiver 22.
  • Bluetooth transceiver 22 receives the streaming audio/video data and passes the AA/ data to the microprocessor 24.
  • the microprocessor 24 then unpacks and routes the audio/video data to the AA/ output 28 that then passes the audio/video data to the system 40 for presentation to the user.
  • the SEEC APP 52 When the SEEC APP is loaded by the SD 10, the SEEC APP 52 enables the SD 10 to communicate the RC commands to the processor that directs the optical IR transmitter to transmit the IR pulse sequences to RC devices based on the RC commands.
  • the SEEC APP 52 maintains, on the SD 10, a customized user configuration associated with the corresponding entertainment environment. The user configuration is set up by a user through the SEEC APP based on individual user preferences.
  • the user configuration comprises a set of input indicia associated with a select RC device, at least a portion of the input indicia indicative of commands for the select RC device, RC commands associated with the input indicia wherein the RC commands identify IR pulse sequences to be transmitted from the optical IR transmitter to the RC device to instruct the RC device to perform one or more associated actions; and a user-designated presentation of the input indicia on the user interface of the SD.
  • the HU 20 also includes an IR sensor 33 that is configured to sense IR signals.
  • the SEEC APP 52 is configured to learn RC commands for a select RC device, when in a learn mode, by sensing, at the IR sensor, a new IR pulse sequence that is generated by a handheld remote control that is associated with the select RC device; receiving an input indicating a new RC command; and storing the new IR pulse sequence with the new RC command.
  • FIG. 2 illustrates a block diagram of the IR transmitter subsystem 26 provided within the mobile unit 20 in accordance with an embodiment.
  • the IR transmitter subsystem 26 includes one or more IR drivers 122 that are coupled, over line 130, to an optical IR transmitter 35.
  • the IR driver 122 is controlled by the microprocessor 24 ( Figure 1 ).
  • the LEDs 124 align with one or more corresponding filter elements 126 and one or more lens components 128.
  • a separate filter element 126 and a lens component 128 may be provided in connection with each LED 124.
  • clusters or groups of LEDs 124 may be aligned with a common filter 126 and/or lens component 128.
  • the LEDs 124 and filter elements 126 are chosen to provide IR signals at one or more select wavelengths.
  • the LEDs 124 and filter elements 126 are divided into at least two groups, such that one group of LEDs 124 and filter elements 126 produce infrared signals at a first distinct wavelength (e.g. 830um) and a second group of LEDs 124 and filter elements 126 produce infrared signals at a different second distinct wavelength (e.g., 940um).
  • the LEDs 124 and filter elements 126 may be chosen such that more than two wavelengths of infrared signals may be produced. Alternatively, the entire LEDs 124 may produce only a single wavelength of IR signals.
  • the wavelengths of the IR signals produced are chosen based on the types of audio/video RCDs 30-32 with which the home unit 20 is intended for use. For example, audio/video RCD 30 may be from one manufacturer and respond only to IR signals having a wavelength of 940 urn. Audio/video RCD 31 may be from a different manufacturer respond only to IR signals having a wavelength of 830 ⁇ .
  • a separate lens component 128 maybe aligned with each filter element 126.
  • multiple filter elements and LEDs 124 maybe aligned with a single lens component 128.
  • multiple lens components 128 maybe aligned with a single filter element 126 and/or LEDs 124.
  • the lens components 128 are positioned and configured to direct the infrared signals outward from the IR transmitter subsystem 26 at select propagation envelopes where each propagation envelope is directed at a select angle and has a select beamwidth.
  • the propagation envelope, associated with an individual LED 124 has a central longitudinal axis of focus that extends at a select angle from a corresponding lens component 128 (when present).
  • the axis of focus is determined and controlled by the type, shape, position and orientation of the lens. When no lens components are used, the axis of focus extends from the corresponding filter element 126 and/or LED 124.
  • the propagation envelope associated with an individual LED 124, has a beamwidth that is defined by outer beam limits.
  • the beam limits extend at a flared angle (or are maintained parallel to one another) as is determined and controlled by the type, shape, position and orientation of the lens. When no lens components are used, the beam limits flare (or extend parallel) at an angle determined by the type, shape, position and orientation of the filter 126 and LED 124.
  • FIG 3 illustrates multiple alternative or complementary configurations in which the LED array 124 may be arranged in accordance with alternative embodiments.
  • a square array 134 is illustrated in which a substrate panel 132 is provided with a square arrangement of LEDs 124 mounted on the panel 132.
  • the LEDs 124 are arranged in rows 133 and columns 135.
  • a curved or L-shaped array 136 is illustrated.
  • the panel 132 has at least a first set of LEDs 124 mounted on the panel 132 and arranged in a horizontal leg 138.
  • the panel 132 also holds at least a second set of LEDs 124 arranged in a vertical leg 140.
  • more than one column or row of LEDs 124 maybe utilized to form the horizontal leg 138 and/or the vertical leg 140.
  • the horizontal and vertical directions represent general orientations of reference relative to a manner in which the HU 20 is positioned when placed in the entertainment environment.
  • the HU 20 may include a base on which the HU is configured to sit/rest, such as when placed on a shelf, end table, floor, wall mount, RCD, and the like.
  • a T-shaped array 142 may be used in place of or in addition to the L-shaped array 136 and/or square array 134.
  • the T-shaped array 142 includes LEDs 124 arranged in a first set aligned to form an arm 146 and in a second set aligned to form a base 144.
  • more than one row of LEDs 124 may be used to form the arm 146.
  • only one column (or more than two columns) of LEDs 124 may be used to form the base 144.
  • a tubular array 152 may be provided to be used alone or in combination with other array
  • the tubular array 152 comprises a curved panel 150 with LEDs 124 provided there on.
  • the curved panel 150 is shaped with a select radius 156 extending outward from a longitudinal axis 158.
  • the LEDs 124 are arranged in columns 154 about (and face outward from) the exterior surface of the curve panel 150.
  • the panel 150 is curved in approximately a half semi-circular shape such that opposed columns 154 of LEDs 124 face in substantially opposite directions at approximately 180° apart from one another.
  • LEDs 124 may be provided and oriented to face in alternative and additional directions.
  • FIG. 4 illustrates an alternative configuration for the IR transmitter subsystem 160.
  • the IR transmitter subsystem 160 is provided upon a three dimensional (3D) spherically shaped panel 162 having LEDs 124 distributed about the spherical panel 162.
  • the LEDs 124 are positioned to face outward in multiple directions from the panel 162.
  • a portion of the LEDs 124 are shown in dashed lines to indicate LEDs 124 that are facing in an opposite direction (away from the drawing sheet) from the LEDs shown in solid line.
  • FIG. 5 illustrates an alternative configuration for the IR transmitter subsystem 170.
  • the IR transmitter subsystem 170 is provided with a collection of panels 172-175 arranged to form a 3D pyramid shape with a rectangular base.
  • the LEDs 124 provided on panels 173 and 174 are shown in dashed lines.
  • the LEDs 124 provided on the panels 172 and 175 are shown in solid lines.
  • additional and alternative two-dimensional and three- dimensional shapes maybe utilized for the IR transmitter subsystem, as well as additional and alternative arrangements for the LED arrangements.
  • different surfaces of the IR transmitter subsystem 160 may include different combinations and different arrangements of LEDs.
  • a single LED may be used to transmit all IR signals.
  • a single LED may be used in connection with multiple filters and lens that filters the signals emitted by the LED into different select wavelengths.
  • a single LED may emit a signal having multiple wavelength components.
  • a first filter may pass only a first select wavelength/wavelength range, while a second filter may pass only a second select wavelength/wavelength range, while a third first filter may pass only a third select wavelength/wavelength range.
  • the single LED may be joined to multiple lenses that are configured to have different select directionality.
  • a first lens may be configured to emit a narrow beamwidth, highly directional signal, while a second lens is configured to emit a wider beamwidth, low directionality signal.
  • Figure 6A illustrates a top plan view of the IR transmitter subsystem 136.
  • the IR panel 132 has a plurality of LEDs, filters and lenses 124, 126 and 128 provided there on.
  • the lenses 128 are configured to provide different propagation envelopes 180-181 .
  • a first subset of LEDs 124 e.g. outer and central
  • a second subset of LEDs 124 (alternating between the elements of the first subset) maybe coupled to lenses 128 that provide a second propagation envelope 181 having high directionality and a narrow beamwidth (relative to the beamwidth of the first propagation envelope 180).
  • the second propagation envelope 181 is denoted by beam limits 185.
  • the beam limits 184,185 may be varied for select LEDs, and may vary laterally as well as vertically.
  • the lateral (e.g. horizontal) beam limits 184, 185 may be relatively wide and equally dispensed about a central axis perpendicular to the face of the panel.
  • vertical beamwidth limits 184, 185 may differ from one another such that the IR signals propagate outward and upward, and do not necessarily propagate downward in an equal amount, (e.g., uneven vertical directionality).
  • Figure 6B illustrates a side perspective view of the IR transmitter sub-system of Figure 6A.
  • the LEDs 124 may be located at an intermediate point on the IR panel 132 and arranged in a single row or column.
  • the LEDs 124 may be oriented to transmit outward from a surface plane of the IR panel 132 at a select angle. For example, when the IR panel 132 is oriented to extend along a longitudinal axis 133, the LEDs 124 may be arranged in a row to traverse the axis 133 laterally.
  • the LEDs 124 with low directionality may be configured to exhibit a beamwidth with longitudinal limits 135, 137, while the LEDs 124 with high directionality may be configured to exhibit a beamwidth with longitudinal limits 139, 141 .
  • the longitudinal limits 133- 141 are measured at an angle relative to the surface plane of the IR panel 132 along the longitudinal axis.
  • the LEDs 124 with low directionality may be configured to exhibit a beamwidth with lateral limits 143, 145 ( Figure 6A), while the LEDs 124 with high directionality may be configured to exhibit a beamwidth with lateral limits 147, 149.
  • the longitudinal limits 143-149 are measured at an angle relative to the surface plane of the IR panel 132 and at a perpendicular (transverse) relative to the longitudinal axis.
  • the LEDs 124 may be configured to transmit across all or any portion of a predetermined IR wavelength range (e.g., 700um to 1 mm).
  • the processor 24 controls the blinking pattern of the IR LEDs in the first and second subsets in a common manner.
  • the first and second subsets of LEDs transmit a common IR pulse sequence (IR code) associated with a common RC command.
  • IR code IR pulse sequence
  • beamwidth and directionality create an inter leaved or mesh pattern of IR signals that cross, reflect and re-cross an entertainment environment.
  • the first and second subsets of LEDs 124 may be duplicated, but at different IR wavelengths.
  • RCDs 30 may be responsive to IR signals at a first wavelength (e.g., 830 ⁇ ) while other RCDs 31 are responsive to IR signals at a second wavelength (e.g., 940 ⁇ ).
  • the LED array 136 may include first and second subsets of LEDs 124 that operate at 830 ⁇ , and the LED array may further comprise third and fourth subsets of LEDs that operate at 940 ⁇ .
  • the third and fourth subsets of LEDs would have similar directionality, angular directions, and beamwidth as the first and second subsets of LEDs.
  • more subsets may be defined with separate directions, directionality, beamwidths, wavelengths and the like. Hence, more than two subsets of LEDs may be provided for each wavelength.
  • An easy-to-use graphic interface on the smart handheld device 10 provides the configurations and choices concerning the operation of the system.
  • a software application referred to as an "SEEC APP," 16 is designed to run on smart handheld devices.
  • the SEEC APP 16 provides easy, user-friendly graphic interface screens for users to indicate their control choices, to view status and to give and receive feedback from the wireless audio receiver.
  • One mode represents a unidirectional or bidirectional administration link 12 with the wireless receiver and the other mode represents an audio and/or video streaming link 14, over which A/V signals may be sent to the audio and/or video RCDs 30-32 and/or audio/video system 40.
  • Variations in the SEEC APP are available to conform the SEEC APP to the requirements of the different smart handheld device 10 platforms.
  • the smart handheld device 10 uses the stored SEEC APP 16, the smart handheld device 10 sends wireless signals to the processor 24.
  • the processor 24 coordinates the signals coming from smart handheld device 10 in order to provide the control functions desired, and to provide overall coordination for the system.
  • the processor 24 then sends the appropriate instructions to controlled RCD 30-32 and/or audio/video system 40 based on the received commands from the smart handheld device 10.
  • the smart handheld device 10 may utilize various communications protocols to provide the links 12 and 14, where such protocols afford certain functionality and performance levels.
  • the Bluetooth Low Energy (BLE) communications protocol is utilized by the smart devices 10, in connection with the communications link 12, to remotely control one or more A/V RCDs 30-32 and for audio and/or video streaming to the audio/video system 40.
  • BLE Bluetooth Low Energy
  • FIG. 7 shows a schematic representation of the system for AndroidTM smart handheld devices 210.
  • the system uses the Bluetooth SPP profile and A2DP profile.
  • the SPP profile is used for a bidirectional
  • administration link 212 between the home unit 220 and the smart handheld device 210.
  • the administration link 212 conveys SPP or GATT messages include firmware updates, IR codes, and access requests.
  • the SPP profile permits the home unit 220 to be connected to multiple smart handheld devices 210 simultaneously.
  • the devices 210 may use the GATT profile for the administration link.
  • the streaming link 214 utilizes the A2DP profile to stream audio and the video distribution profile (VDP) to stream video from the smart handheld device 210.
  • the A2DP and VDP profiles represent unidirectional profiles and allow only one smart handheld device 210 to be connected to the home unit 220 at one time.
  • the system 202 seeks to offer the streaming A/V functionality from more than one SD 210 with a single HU 220, the system 202 uses the A2DP and/or VDP profiles and the communications link 212 to negotiate a transition from one SD 210 to a new SD 210 for streaming A/V over the streaming link 214.
  • FIG 8 illustrates a representation of the system where a GATT protocol may be used instead of the SSP protocol in connection with the bidirectional administration link 1 17 between the SDs 1 16 and BUs 1 14.
  • the GATT protocol may be used with SDs 1 16 that utilize the iOS and Android operating system.
  • GATT is one of the core protocols of Bluetooth 4.0 Low Energy specification.
  • the HU 1 14 is connected to an audio system 1 15.
  • FIG. 1 illustrates an example of a message sequence chart to establish a bidirectional administration link.
  • a BLE enabled smart device can operate - master device mode, slave device mode, advertising mode, and scanning mode.
  • An advertising mode is used by the HU 20 to periodically advertise information that can be used to establish a link.
  • the HU 20 periodically transmits advertisement packets 1 102 over the advertising channel(s).
  • the SEEC APP 16 on the smart devices 10 is opened or when a user enters a remote control command 1 104
  • the SD 10 initiates an advertisement search sequence 1 106.
  • the SD 10 begins monitoring the advertisement channels for advertisement packets from a HU 20.
  • the SD 10 sees/detects an advertisement packet 1 102 from a HU 20 associated with the SD 10
  • the SD 10 responds by transmitting an advertisement acknowledgement 1 108 over the advertising channels.
  • the HU 20 detects the advertisement acknowledgement.
  • the HU 20 transmits advertising packets over of the available designated, advertising channels in a predetermined channel hopping manner and at a predetermined rate, such as at a rate from 20ms to every 10 seconds depending on the configuration.
  • the scanner SD 10 is configured to search for advertising packets in scan windows 1 1 10 (e.g., the amount of time that the HU 20 or SD 10 looks for advertisement packets) and a scan interval (how often in between scans).
  • the scanner HU 20 detects an advertisement acknowledgement 1 108, the scanner HU 20 supplies the advertiser SD 10 with connection related information 1 1 12, namely the connection interval and slave latency.
  • the connection interval is used to determine the start time of connection events 1 1 14.
  • a connection event 1 1 14 is the exchange sequence of data packets.
  • the slave latency is the amount of connection interval a slave device can ignore without losing the connection. This is done to improve power consumption.
  • the HU 20 also informs the SD 10 of which data channel(s) to begin data packet exchange over to establish a communications connection link. After the link is established, communication is carried out over the 37 data channels.
  • Each data packet represents a packet data unit that comprises up to 37 bytes of payload, along with a packet header, and a Message Integrity Check.
  • a communications event is initiated by a master device (SD or BU) with communications alternating between master/slave until one of them stops transmitting.
  • the HU 20 can also use the advertise mode to respond to additional queries from another smart device.
  • Scanning mode is used by the HU 20 to capture advertise packets transmitted from the one or more SDs 10.
  • Slave and Master Modes are used once a link has been established between one SD 10 and a HU 20, and allow the SD 10 and HU 20 to read, write, and query each other.
  • the HU 20 that starts out in Advertise Mode may assume the slave device mode and conversely the SD 10 that is initially in the scanning mode may assume the master device mode.
  • the data packets may comprise an 8 bit preamble, 32 bit access codes that are defined by the RF channel used, a variable PDU ranging from 2-39 bytes and a 24 bit CRC.
  • a data packet may be as small as 80 bits or as long as 376 bits.
  • the transmission time also changes. For example, a transmission time may range from 80microseconds to 0.3milliseconds.
  • Advertise packets on the other hand, have PDU containing a 16 bit header and up to 31 bytes of data.
  • the HU 20 and SD 10, or multiple SDs 10 may associate with one another in three different manners, generally referred to as Just Works, Out of Band, and Passkey Entry.
  • An advertising SD transmits packets on the advertise channels with a packet data unit (PDU) containing the device address and up to 31 bytes of additional information.
  • PDU packet data unit
  • a scanning HU 20 is able to see the address, within the
  • the HU 20 may request additional information that is then sent from the MD 20. Accordingly, in optional embodiments, the system may exchange large amount of information from the SDs 10 to the HU 20 through the advertisement channel without establishing a communications connection session over the data channels.
  • the BLE protocol stack is partitioned into a controller and a host.
  • the controller handles the lower layers of the stack responsible for capturing physical packets and the RF used by the radio.
  • the host handles the upper layers of the stack; they include the application, attribute protocol, and L2CAP.
  • the host and controller can be either collocated or the host can run in the application processor with the application.
  • a hardware controller Interface (HCI) is used by the controller and host to communicate.
  • the controller communicates with the Logical Link Control and Adaptation Layer (L2CAP) protocol via the HCI or directly if collocated.
  • L2CAP Logical Link Control and Adaptation Layer
  • the main function of the HCI is to provide data services to the upper level layers and for multiplexing and segmenting packets into fragments for the controller.
  • the HCI also reassembles packets from the controller before they are routed to the upper level layers.
  • the Generic Access Profile is responsible for defining generic procedures that are used in the pairing and linking of the HU and MD.
  • the GAP is the interface for the application layer to implement the different Bluetooth modes (Advertising, Scanning, etc.).
  • the Security Manager is used for authentication and encryption and uses AES- 128 bit encryption engine to do so and is also responsible for pairing and key distribution. This component is used by the Master device to ease the computing demands of security on the Slave device.
  • the Attribute protocol is a communication method designed to optimize transmission of small packets. ATT are pairs of attributes and values that can be used to read, write, or discover by other devices.
  • GATT Generic Attribute Profile
  • GATT Generic Attribute Profile
  • the BLE or similar protocol, utilized to communicate between the SDs 10 and HU 20 achieves increased power efficiency.
  • a lower duty cycle is used, such that the SDs 10 go to sleep for longer periods of time and wake up less frequently to send or receive packets as compared to classic Bluetooth and other protocols.
  • Second, using the GATT profiles allows the SDs 10 to send smaller data packets (expose state) (relative to classic Bluetooth) in short bursts to save on power.
  • Data transmission sessions can be triggered by a local event, such as an input by the user of the SD 10, and is available for an SD user to access at any time.
  • the administration link utilizes communications sessions having a data transfer defined length. The length of each communications session is dependent and defined by an amount of active data transfer.
  • the SDs 10 do not maintain communications sessions or links with the HU 20 or other SDs 10 whenever the SD 10 is not actively performing exchange of data.
  • the SD 10 ceases to transmit or receive data packets for a predetermined period of time (e.g., 5 sec, 20 sec, 30 sec)
  • the SD 10 goes to sleep and ends the communications session or link.
  • a link is rapidly re-established upon the next communication exchange (e.g., when the user opens the SEEC APP or selects an RC command.
  • Figure 9 is a schematic representation of an embodiment showing simultaneous connections with multiple SD 410A-410C.
  • the SD 410A-410C may utilize the same or different operating systems.
  • a subset of the SD 410A-410C may utilize the iOS operating system, and another subset of the SD 410A-410C may utilize the AndroidTM operating system.
  • the SD 410A- 410C that utilize the iOS use a GATT protocol for the bidirectional link 412, while the SD 410A-410C that utilize the AndroidTM OS use the SSP protocol for the bidirectional link 412.
  • the GATT (iOS) and SPP (AndroidTM) wireless communication technologies used in the embodiment are representative of types of communication that may be applied. A wide variety of other wireless communication technologies may be applied in alternative embodiments.
  • the system 402 is configured to permit easily switching the remote control and audio streaming operation from one SD 410A-410C to another by utilizing a setting feature in the SEEC APP 416A-C.
  • the SEEC APP 416A may operate in automatic mode or in a responsible.
  • any requesting idle SD 410A-410C is automatically accepted and connected to the home unit 420.
  • the idle smart device 420 sends a request to stream audio to the wireless HU 420 which in turn forwards the request to the active smart device.
  • the wireless HU 420 sends a denial message to the requesting idle smart device 410 and the active smart device 410 continues to stream music to the wireless HU 420 and finally to the audio system 440.
  • FIGURE 10 illustrates a flowchart 500 of a process for managing audio/video streaming communications exchange and priority for multiple SD 410A-410C in accordance with an embodiment.
  • bidirectional communication e.g. over an administration link 412A-412C
  • an audio streaming link 414B with the HU 420 in order to stream music or other
  • administration link 412A seeking to establish a streaming A/V communications link 414 with the HU 420.
  • the HU 420 sends a streaming transfer permission request (over the administration link 412B) to the active SD 410B to request (from the SD 410B) permission to transfer A/V streaming functionality to the SD 41 OA.
  • the active SD 410B determines whether to grant permission to transfer the streaming functionality from the SD 410B to another SD, such as SD 41 OA.
  • the determination may be performed automatically or manually.
  • the SD 410B may have a user-entered setting chosen within the SEEC APP 416B such that the SD 410B will automatically grant or deny requests to transfer streaming functionality.
  • the user may change the setting through the SEEC APP 416B.
  • the SEEC APP 416B may prompt the user, each time a request is made at 508, with the user deciding whether to grant the transfer.
  • Figure 14 illustrates a message sequence chart for managing transfer of communications between multiple SDs 410B-C and a common home unit 420.
  • the vertical lines denote the source/destination (e.g, SD 410B, SD 410C, HU 420) with time progressing from top to bottom in Figure 14. Breaks are illustrated in each vertical line to denote different communications sessions or alternative methods for managing transfer.
  • the SD410B and home unit maintain an administrative link 1412 and streaming link 1414.
  • the home unit 420 ceases/terminates
  • the SD 410B may be streaming audio/video to the home unit 420 over the streaming link 1414, without maintaining an administration link.
  • the home unit 420 periodically transmits advertisements 1416 over the advertising channels.
  • the SD 410C receives the advertisement 1416 and replies with an advertisement acknowledgment and request 1418 to initiate an administration link with the HU 420.
  • the HU 420 coordinates with the SD 410C to initiate administration link 1422. In this manner, during session 1420, the HU 420 maintains a streaming link 1414 with SD 410B and an administration link 1422 with SD 410C.
  • the SD 410B and home unit 420 maintain an administration link 1432 and streaming link 1434.
  • the home unit 420 may be configured to broadcast advertisements 1436, even while maintaining administration and streaming links 1432 and 1434.
  • the SD 410C is able to find the home unit 420, even while the home unit 420 maintains administration and streaming links 1432 and 1434.
  • the SD 410C receives advertisement 1436, the SD 410C returns an advertisement acknowledgment and request 1438 seeking to initiate an administration and/or streaming link.
  • the HU 420 may handle the acknowledgment and request 1438 in various manners. For example, the home unit 420 may ignore the
  • the home unit 420 may automatically grant the acknowledgment and request 1438 by terminating the administration and streaming links 1432 and 1434 with SD 410B.
  • the dashed line 1433 denotes termination of the links 1432 and 1434 to end session 1430.
  • the home unit 420 may query the user of SD 410B to determine whether to grant permission to transfer the communication session to SD 410C. When the user of SD 410B grants permission to transfer
  • the session 1430 is terminated by the HU 420 and session 1440 is initiated in which the home unit 420 begins to receive streaming audio/video over link 1444 from the SD 410C.
  • the home unit 420 and SD 410C also pair to initiate administration link 1442.
  • the administration link protocol utilizes very low power as compared to classic Bluetooth.
  • the power consumption at the SD is dependent on the SD transmit time and number of sessions.
  • SD's may utilize a transmit time of up to 50ms, and more preferably approximately 10-25ms, to establish a communications session, transmit user selected remote control instructions, and after a select period of time disconnect the communications session.
  • the SDs 10 and HU 20 may be configured to encrypt communications there between over the communications link 12 and/or streaming link 14.
  • Various encryption methods may be used. For example, when the BLE or classic Bluetooth protocols are utilized, the encryption methods provided within BLE or classic Bluetooth may be used.
  • encryption may be an upgrade offered through a firmware upgrade after installation of the HU 20.
  • the HU 20 and SEEC APP on one or more SDs 10 may be set up in a home and at a later date, it may become desirable to add encryption. To do so, a firmware upgrade may be pushed to the SD 10 (or sent by email to a user). The SD 10 that in turn ports the upgrade to the HU 20.
  • the SD 10 and/or HU 20 may
  • An upgrade then may be downloaded.
  • Figure 12 illustrates a format that may be utilized in connection with setting and maintaining individual user configurations.
  • user configurations 1208 are programmed by the user.
  • the user enters the different types of audio/video equipment within the environment, among other things.
  • the user has the option to customize the presentation of the input indicia (e.g., slide bars, buttons) displayed on the SD in connection with each audio/video device.
  • the user may desire certain input indicia, such as buttons to be displayed on the user interface of the SD in a select presentation, such as in a select combination, arrangement and
  • buttons and/or different arrangement or orientation of buttons may be displayed on the user interface of the SD in connection with an audio receiver, as well as a different combination, arrangement or layout of buttons for a television. Further, different users within a single entertainment environment may prefer different
  • buttons for a common RCD For example, a left-handed person may desire one configuration of buttons, while a right-handed person desires a different configuration. As a further example, a parent may desire one combination, while children desire a different
  • husbands and wife may desire different configurations of buttons.
  • a display of the SD is virtually segmented into a table having rows and columns were each cell within the table of rows and columns defines an associated area on the display of a smart phone. For example, if the display is divided into five virtual columns and eight virtual rows, then 40 potential discrete cells exist on the display at which input or output indicia may be displayed.
  • the input indicia may include virtual or soft buttons and slider bars associated with select commands or macros; icons associated with RCDs, macros or service providers (e.g., iTunes, Netflix, etc.), other functional operations (music library, etc.) and the like.
  • the output indicia may include information regarding RCDs, the HU, the SD and the like.
  • the output indicia may present video or text in windows, graphs, program lists, program related information (e.g., description of program, length, actors, etc.), and the like.
  • cell number 1 may represent the upper left-hand corner of the display, while cell number 5 represents the upper right-hand corner, cell number 35 represents the lower left-hand corner and cell number 40 represents the lower right-hand corner.
  • the user may select various combinations
  • a unique IR code is associated with each input indicia based upon the type and function assigned to the button relative to the device to be remotely controlled.
  • a macro may include a series of instructions to turn on multiple remotely controlled devices in a select order. For example, by pressing a single button, the user may activate a macro that turns on a TV, a Cable set top box and an stereo receiver. The macro may also instruct the receiver to turn its input to the connection coupled to the cable box or TV, and instruct the TV to turn its input to the cable output.
  • each home unit 20 is assigned a unique MAC address 1203, and user login (username and password).
  • Each MAC address 1203 and/or username and password is uniquely associated with a record that stores various types of information associated with the corresponding home unit 20.
  • the record may be stored locally on the home unit 20, within one or more SD, on a remote server, or at a storage location within the cloud.
  • Records are stored for every home unit 20 once a user has configured the home unit 20.
  • the records may be stored at a common remote data storage, warehouse, network or within the cloud, and the like.
  • the records may be stored locally, such as on the home unit 20, locally on another network computer within the home entertainment environment, on the users SD and the like.
  • the application When a user activates the application on an SD, the application first pairs with an HU and receives the MAC address of the HU. The SD then determines whether a user configuration is loaded in the SD associated with the MAC address of home unit 20 with which the SD has paired. When the SD does not have the user configuration associated with the home unit 20, with which the SD is paired, the SEEC APP seeks a correct user configuration set-up for the home unit 20 from a management server or other destination (e.g., over the Internet, Cloud, on the home unit 20 or elsewhere). To locate a valid user configuration, the SEEC APP sends a request that includes the MAC address of the home unit 20 to the appropriate destination (server, HU, cloud).
  • server HU, cloud
  • a record 1202 is stored in connection with each MAC address.
  • the record 1202 includes one or more user configurations 1204.
  • Each user configuration 1204 may include information associated with the user for which the configuration was set up, such as the username, viewer profile, program guides and other demographics.
  • the user configuration 1204 also includes button specific information 1206 in connection with each input indicia programmed by the user for each device to be remotely controlled.
  • the buttons for user configuration #1 are only shown for a single device. Multiple sets of button specific information maybe stored in the user configuration #1 depending upon the number of devices that the user has configured the smart phone to control.
  • the user configuration includes button specific information 1206, such as the button name, button type, color, IR code to be transmitted when the button is selected, button shape and location on the smart phone virtual grid.
  • the button specific information 1206 may also include one or more macros to be implemented when the button is activated.
  • the location information may indicate the row and column of the cell or cells in which the input indicia is to be displayed. The same types of information, as illustrated for button number #1 may also be recorded for any desired number of additional input indicia #P.
  • the program guide and other entertainment environment specific information may be stored in the user configuration, or elsewhere.
  • a separate user configuration maybe set up for different members of the household, such as one configuration for the wife, one configuration for the husband, one configuration for various kids. Also, a separate configuration maybe set up for left-handed people, as well as for right- handed people. Inappropriate configuration is loaded when the corresponding smart phone is paired with the home unit 20. When multiple user configurations are recorded in connection with a single home unit, each user configuration may be associated with a particular smart phone, a particular user ID and the like.
  • FIG. 13A illustrates a block diagram of a network 1300 for a distributed networking entertainment environment implemented in accordance with an embodiment.
  • multiple home units 20 are illustrated, each of which has an associated entertainment environment 1320-1321 .
  • the home units 20 represent a collection of home units that are sold throughout the United States and/or outside of United States to various independent individuals, businesses and the like.
  • one or more cloud-based computing services 1302, workstations 1309, and/or enterprise servers 1303 may be established in connection with an install base of home units 20.
  • the region 1304 generally denotes the Internet or Cloud.
  • the cloud computing services 1302 and/or enterprise server 1303 perform all or any portion of the storage, user configuration and analysis functions described herein in connection with various embodiments.
  • the storage, user configuration and analysis functions described herein may be divided between multiple servers, workstations, home units and the like.
  • the network illustrated in Figure 13A may represent a metropolitan area or geographic region in which home units 20 and the SD application are provided.
  • the metropolitan area or geographic area is serviced by one or more cloud computing services 1302 and/or enterprise server 1303.
  • the home units 20 maybe located within different zones of a single residence or business.
  • the cloud computing services 1302 and/or enterprise server 1303 communicate with one or more data storages 1306 that record various information that is utilized in connection with implementing embodiments herein. It is understood that the data storages 1306 are not limited to any particular structure, but instead merely refer to memories that are accessible from the internet and may store the various information described herein and that are searchable for the functions described herein.
  • the data storage 1306 stores catalogues 1321 of IR codes for any known type/model of RCD, user profiles 131 1 , viewing traits 1315, and the like.
  • the data storage 1306 stores records 1308 that may include, among other things, user configurations 1310, program guides 1319, and other information specific to individual home units and users.
  • the data storage 1306 may store records 1308 that include universal or general template information 1317 (e.g, a universal set up template for a user interface, commonly used macros or functional sequences, and the like).
  • the universal or general template information 1317 may be accessed by individuals (e.g., do-it-yourself) when setting up a new home unit 20, or may be used by service/installation professionals, such as in connection with installation of home units 20.
  • a separate record 1308 maybe maintained in connection with each home unit 20.
  • the record 1308 includes, among other things, customized user configurations 1310 that have been defined by users in connection with use of the corresponding home unit 20.
  • a home unit #1 communicates simultaneously or at different times with smart devices SD1 -SD3.
  • Home unit #2 communicates with SD4-5, while home unit #3 communicates with SD6.
  • the network 1300 saves, in data storage 1306, user configurations associated with SD1 -SD6.
  • SD1 and SD2 pair with HU1 at different times and utilize a common user configuration, while SD3 pairs with HU6 and uses a separate unique user configuration.
  • Each user configuration is stored in the cloud, associated with a unique MAC address, or username and password (for the related HU) and a unique ID associated with the SD of the corresponding user.
  • the SD2 determines whether the SD2 has, saved therein, a user configuration associated with HU2. If not, the SD2 or HU1 access the cloud, provide the HU1 and SD2 unique IDs and request a corresponding user configuration.
  • the cloud computer services 1302 accesses the associated data storage 1306 based on the HU and SD IDs and returns the corresponding user configuration, and optionally other information such as viewing profile and the program guide. The returned user configuration, program guide, etc. are uploaded to the SD2.
  • a similar pairing operation is performed in connection with each SD when the SEEC APP is activated within range of a home unit.
  • an SD moves from one entertainment environment to another entertainment
  • the SD pairs with a corresponding home unit when the SEEC APP is activated. For example, if SD2 moves from the environment 1320 associated with home unit #1 to the environment 1321 associated with home unit #2 (as denoted by the dashed lines in Figure 12), and the user opens the SEEC APP, a new pairing and user configuration download operation occurs.
  • the SD2 and/or HU2 requests the user configuration information associated with HU2. If more than one user configuration exists in connection with HU2 (and environment 1321 ), the cloud computing services 1302 and/or server 1303 may query the SD2 user to select one of the user configurations. If only one user configuration exists for environment 1321 , the server downloads the single user configuration to SD2.
  • Each SD may maintain a current user configuration until the user configuration is replaced with a new user configuration.
  • the SD When an SD moves outside of an entertainment environment, the SD maintains the last or most recently downloaded user configuration.
  • An SD only uploads a new user configuration when entering a new environment 1320-1322.
  • an SD may store multiple user configurations, but only activate one user configuration at a time.
  • the SD would maintain a limited local data storage, similar to data storage 1306, having a subset of user configurations for entertainment environments in which the SD has paired with HUs.
  • the HU may include a data storage storing multiple user configurations for the HU, as well as for entertainment environments associated with other HUs.
  • Figure 13B illustrates a method for the network 1300 of Figure 13A to manage user configurations for smart handheld devices that communicate through home units to corresponding entertainment environments. At 1350, the method waits for a SEEC APP to be activated.
  • the method provides the SEEC APP to be loaded by smart handheld devices (SDs), where the SEEC APP enables the SDs to communicate remote control (RC) commands to corresponding home units that transmit IR codes to remotely controlled (RC) devices based on the RC
  • the SD upon activation of the SEEC APP, the SD begins to search for advertisements on the advertising channels from an HU.
  • the SD and HU pair with one another as explained herein or in accordance with existing networking protocols.
  • the data storage 1306 maintain customized user configurations each associated with a corresponding home unit, the user configurations being set up by users based on individual user preferences. As explained in
  • the user configurations comprise, among other things, a set of input indicia associated with a select RCD, at least a portion of the input indicia indicative of commands for the RCD; RC commands associated with the input indicia wherein the RC commands identify IR codes to be transmitted from the home unit to the RCD to instruct the RCD to perform one or more associated actions; and a user-designated presentation of the input indicia on the user interface of the SD.
  • the SD and/or HU determine whether the first SD has, stored therein, a first user configuration (UC) associated with the first home unit.
  • UC user configuration
  • the SD or HU sends a request for the first UC to an appropriate destination. For example, when the UCs are saved on the Cloud or an enterprise server, the request is sent to server 1303 and/or CCS 1302.
  • the request may include a unique ID for the requesting SD and the HU (e.g., the HU MAC address).
  • the method determines whether the server 1303 and/or CCS 1302 returns a UC corresponding to the HU. When a UC for the requesting HU does not exist, flow moves along branch 1357 to 1360. At 1360, the method loads the first SD with the first user configuration associated with the first home unit based on the determining operation. When a UC does not exist for the HU, flow moves along branch 1359 to 1362.
  • the method enters a programming mode to permit the user to create a new user configuration associated with the associated HU and the SD.
  • the method forwards the UC, and HU MAC address and SD ID, to the data storage for indexing and storage.
  • the method returns to the initial point where the method waits for the user to re-activate the SEEC APP.
  • the method further comprises, when the first SD moves to an entertainment environment associated with a second home unit and pairs with the second home unit, determining whether the first SD has, stored therein, a second user configuration associated with the second home unit; and loading the first SD with the second user configuration associated with the second home unit based on the
  • the method further comprises storing the user configurations in a data storage in the Cloud and uniquely associating each of the user configurations with a MAC address of a corresponding home unit, requesting one of the user configurations based on the MAC address of the corresponding home unit.
  • the method further comprises replacing the first user configuration with a new configuration each time the first SD moves to an entertainment environment associated with a new home unit and pairs with the new home unit.
  • the loading operation is skipped when the determining operation determines that the first SD already has stored therein the first user configuration associated with the first home unit.
  • the method further comprises, during setup, creating a plurality of first user configurations associated with the first home unit, each of the plurality of first user configurations associated with corresponding SDs from an equal plurality of SDs.
  • the method comprises, during set up, entering a separate user interface for each of a plurality of different RCDs within the environment; and affording the user the option to customize the presentation of the input indicia displayed on the plurality of SDs in connection with each of the RCDs.
  • the user-designated presentation may include a user designated combination and arrangement of the input indicia.
  • the input indicia may include button specific commands and the first user configuration includes, for the button specific commands, at least two of button name, button type, color, IR code to be transmitted when the button is selected, button shape and location on the SD virtual grid, and one or more macros to be implemented when the button is activated.
  • Separate user configurations may be set up for different members of a household, left-handed people, or right-handed people. Multiple user configurations may be recorded in connection with a single home unit, each user configuration may be associated with a particular smart phone.
  • Figure 15 illustrates a process implemented in accordance with an embodiment to learn unknown new IR sequences in connection with select commands.
  • a particular remote control device may have commands associated there with, for which the IR sequences or codes are unknown.
  • the remote control device may be a very new type of TV, stereo, cable box and the like.
  • the remote control device may be relatively old and the IR codes associated there with may not be readily available in known data storages. In these and other scenarios, it may be desirable for the home unit to learn additional IR sequences or codes.
  • the user direction the home unit to enter a learning mode.
  • the user designates the device to which the new code will apply, as well as the type, name and the like for the command associated with the new code. For example, the user may indicate that the new code is to instruct the particular model of television to switch its input source to a select input.
  • the user points the device specific remote control (DSR C) at the home unit IR panel.
  • the user presses or otherwise activates the button on the DS RC that corresponds to the select command.
  • the user may press a series of buttons or commands to be associated with a single select command. For example, during the learning mode, the user may turn on the television, change the input to HDMI three, adjust the volume to a desired level, as well as additional operations, all to be associated with a single command.
  • the home unit senses the infrared sequence or sequences emitted by the DS RC.
  • the home unit stores the infrared sequence or sequences in memory.
  • the home unit analyzes the infrared sequence that was sentenced to identify characteristic information about the IR code therein.
  • the home unit records the IR code that was identified locally in the home unit memory.
  • the home unit links DIR code to the corresponding select command.
  • the home unit may catalog the IR code and command with a larger group of IR codes/commands.
  • the home unit may transmit the IR code and command remotely over a network, such as the Internet or cloud for storage and use with other home units.
  • the user designates a button to be associated with the newly learned IR code and command.
  • the home unit adds the IR code and command with an associated button to the user configuration of the SD currently paired with the home unit.
  • the SD may also add the IR code and command and associated button to the user configuration saved on the SD.
  • Figure 16 illustrates a method for collecting viewer behavior information, developing viewer profiles and providing recommendations based on the viewer profile. Beginning at 1602, the user activates the SEEC APP on the SD 10 and enters a series of commands sufficient to select a program for listening and/or viewing.
  • the method records the user's selection in a local data storage maintained on the SD 10 and/or HU 20.
  • the method may open a viewer log to viewer behavior related information.
  • the viewer behavior related information includes program related information such as, the program name, service provider, program type, genre, actor, director, and the like.
  • the viewer behavior related information includes when the user begins to watch the program, stops watching the program, whether the user changes channels during the program, how long the user watches the program, how frequently the user watches/listens to the program (e.g., for series type programs), how often the user watches similar programs, whether the user records the program, and other behavior related actions of the user.
  • the viewer behavior related information may also include information indicating an amount of attention the user affords to the program, such as whether the user performs other functions on his/her phone during the program.
  • information indicating an amount of attention the user affords to the program such as whether the user performs other functions on his/her phone during the program.
  • a user performs other functions e.g. checks email, holds a phone call, performs text messaging
  • this may indicate a lower or medium level of interest in the program.
  • the method stores the viewer log in one or more locations.
  • the viewer log may be stored locally on the home unit, on the SD, and/or uploaded to a network server (in the cloud or elsewhere).
  • the method analyzes the viewer behavior related information.
  • the analysis at 1606 may occur in near real time shortly after the user stops watching/listening to the program. Alternatively or in addition, the analysis at 1606 may occur at a later time.
  • the analysis at 1606 may be performed by the SD, the home unit, by a remote server, a cloud based analytic module or elsewhere.
  • the analysis at 1606 studies the viewer's behavior based on the viewer related information and the program related information to develop viewing preference traits. For example, the analysis at 1606 may seek to identify program traits that are common to recent programs viewed/listened to by the user.
  • the traits may include genre, actor, director, year, and the like.
  • the traits may be weighted based on a number or percentage of past programs that satisfy the particular trait. For example, when the programs viewed are distributed between action, westerns, war movies or other genre, but 90% of the programs viewed star John Wayne, the actor trait may be weighted more heavily relative to the genre trait which may be weighted less heavily.
  • the common traits are grouped, ranked and stored for form a corresponding viewer profile. In the event that an individual already has a viewer profile, then each time a new program is viewed, the viewer profile is updated with the new viewer trait information.
  • the method may provide one or more recommendations for potential programs of interest based on the viewer profile.
  • the user activates the SEEC APP on the SD 10.
  • recommendation(s) may be provided automatically upon activation of the app.
  • the method may first receive a selection from the user and then provide more recommendations based on the current selection and the viewer profile. For example, if the user enters an indication of a desire to watch an action movie, the method may access a viewer profile associated with the user and action movies to provide recommendations for action movies that meet the viewer profile.
  • the methods described herein may implement various techniques for analyzing the program information and viewing behavior related information, including but not limited to the techniques described in US Patent App. Pub. 2013/0061259 A1 , titled Dynamic user interface rendering based on usage analytics data in a media content distribution system; US Patent App. Pub. 2013/006912 A1 , titled Streaming-Content Analytics; USP 8549550 B2, titled Method and apparatus for passively monitoring online video viewing and viewer behavior; US Patent App. Pub.
  • 2012/0304209 A1 titled System and method to increase efficiency and speed of analytics report generation in audience measurement systems
  • USP 8577996 B2 titled Method and apparatus for tracing users of online video web sites
  • USP 8457475 B2 titled Systems and methods for interactive program guides with personal video recording features
  • US Patent App. Pub. 2013/0014137 A1 titled User impression media analytics platform apparatuses and systems, all of which the complete subject matter is expressly incorporated herein by reference in their entireties.
  • FIG. 17 illustrates a block diagram of a system 1702 formed in accordance with an embodiment.
  • the system 1702 includes one or more smart handheld devices (also referred to as SDs or mobile devices (MDs)).
  • the SD 1710 communicates with one or more home units (HU) 1720, which in turn communicate with one or more audio and/or video remotely controllable devices (RCDs) 1730.
  • the SD 1710 includes a user interface 1752 having inputs and a display.
  • the user interface 1752 is configured to permit the user to enter commands to, among other things, remotely control the RCDs 1730.
  • the SD 1710 communicates with the home unit 1720 over at least two communications channels or links 1712 and 1714 that exhibit different basic characteristics.
  • one communications link 1728 may be referred to as an administration link, and is configured to support bidirectional
  • the other communications link may be referred to as a streaming link, and is configured to support at least unidirectional data streaming, with a level of power demand that may be higher than the level of power demand utilized by the administration link 1728.
  • the streaming link 1714 may also exhibit a more involved connection sequence followed to establish a data connection session over one or more data channels, as compared to the connection sequence followed the administration link 1728.
  • the streaming link 1714 also exhibits robust data transfer to allow reliable data streaming over mid-range distances.
  • One example of a protocol that supports data streaming with the select network characteristics is the classic Bluetooth protocol.
  • the communications links 1712 and 1714 are utilized in connection with different types of data transmission between the SD 1710 and HU 1720.
  • the SD 1710 establishes a classic Bluetooth streaming link 1714 in connection with streaming audio and/or video content from the SD 1710 to the HU 1720.
  • the SD 1710 establishes a temporary low energy BLE administration link 1712 with the HU 1720 in connection with conveying the remote control related command(s) to the HU 1720.
  • the administration link 1712 may also be used to enter commands, selections, management instructions, and otherwise information related to selecting content from multiple service providers and directing the system 1702 to stream the content to one or more RCDs 1730.
  • the administration link 1712 may be used to indicate the content of interest, select a provider from which the content should be obtained, and designate one or more televisions on which the content is to be displayed.
  • the user may enter search criteria, select specific content (e.g., programs, games, video, songs), navigate between search or command windows through touch gestures on the SD 1726, through voice commands entered to the SD 1726, through motion gestures of the SD 1710 and the like.
  • the user may say “Find the movie 'McLintock'” or “Find movies that star "John Wayne””.
  • the voice command is passed over one of the links 1728, 1714 to the HU 1720.
  • the HU 1720 then conducts a search of multiple service providers for the select movie or movies starring the select actor, such as True Grit, The Cowboys, etc. In the event that the select movie or movies starring the select actor, such as True Grit, The Cowboys, etc.
  • TV/Stereo was playing when the user desired to enter a voice command, the user optionally may push a "mute" button on the SD 1726, the HU 1720 or elsewhere, after which the user may state a desired search criteria or selection from a list of program options.
  • the HU 1720 includes at least one transceiver 1722 that supports one or both of the administration and streaming links 1712 and 1714.
  • a Bluetooth transceiver 1722 may be used to establish a BLE administration link 1712 in connection with remote control related operations.
  • the Bluetooth transceiver 1722 receives data packets over the link 1728, and extracts data from the data packets.
  • the Bluetooth transceiver 1722 then passes the data to the microprocessor 1724.
  • the microprocessor 1724 "unpacks" the data and determines whether the data includes remote control (RC) commands intended for the A/V RCDs 1730.
  • RC remote control
  • the microprocessor converts the RC commands to a corresponding IR code designating a select IR pulse sequence.
  • the HU 1720 includes, within an IR transmitter subsystem 1726, an LED array 1735.
  • the LED array 1735 comprises LEDs arranged in at least one row and/or at least one column.
  • the IR code is conveyed from the microprocessor 1724 to the IR transmitter subsystem 1726.
  • the IR transmitter subsystem 1726 drives the LED array 1735 to cause the LEDs to generate IR signals including the corresponding IR pulse sequence.
  • the LED array 1735 transmits a corresponding number of IR signals 1736 as an IR cluster 1734 having the common/same select IR pulse sequence.
  • the IR signals 1736 propagate in multiple directions and at multiple angles from the LED array 1735.
  • the IR signals 1736 may propagate in a direct line of sight to an IR receiver at one or more of the AV RCDs 1730-1732.
  • one or more of the IR signals 1736 may contact other structures within the entertainment environment and be redirected or reflected in other directions such that the IR signals 1736 bounce off multiple structures in the entertainment environment before reaching an RCD 1730.
  • the redirection/reflection of the IR signals 1736 increases the likelihood that one or more of the IR signals 1736 is received by each of the AV RCDs 1730-1732.
  • the HU 1720 also includes a stereo audio and/or video (A/V) output coupled to an audio and/or video system 1740 over in AV line 1744.
  • the audio/video system 1740 is coupled to one or more speakers 1742 and/or a television or other display.
  • the SD 1710 conveys streaming audio and/or video content over the classic Bluetooth streaming link 1714 to the Bluetooth transceiver 1722.
  • the Bluetooth transceiver 1722 receives and unpacks the streaming audio/video data and passes such data to the microprocessor 1724.
  • the microprocessor 1724 then routes the audio/video data to the A/V output 1728 that then passes the audio/video data to the system for presentation to the user.
  • the structure and functionality of the HU 1720 may be integrated into one or more RCD 1730.
  • the system 1702 is configured to facilitate user selection of content of interest from multiple service providers.
  • the service providers may include local and/or national broadcast networks that are available through an over the air network and one or more RF antenna (e.g., NBC, CBS, ABC, PBS, etc.), cable providers (e.g., Charter, Comcast, Time Warner, MediaCom, AT&T, DirectTV, Dish Network, etc.), on-line service providers (e.g., Hulu, Netflix) and on-line subscription services offering on-demand streaming video.
  • Video content may include, but is not limited to, TV shows, movies, webisodes and other new media, trailers, clips, and behind-the-scenes footage, and the like.
  • the HU 1720 further includes one or more transceivers 1776, memory 1778, a service provider (S/P) input/output interface 1780 and one or more RF antenna 1782.
  • the antenna 1782 may be a high definition (HD) antenna.
  • the antenna 1782 transmit and receive OTA content at the direction of the transceiver(s) 1776.
  • the S/P interface 1780 affords a wired or wireless access point to one or more different types of service providers. For example, for service providers that provide content over the Internet, the S/P interface 1780 represents a link to the Internet (e.g., a gateway, router, etc.).
  • the S/P interface 1780 represents a connector configured to be coupled to the cable provider's cable set top box and/or cable modem.
  • the S/P interface 1780 represents a connector configured to be coupled to the satellite company's equipment coupled to the local satellite dish.
  • the S/P interface 1780 may represent a coaxial cable connector, an RJ-45 connector and the like.
  • the HU 1720 may include a microphone 1783 to facilitate entry of voice controls, a user interface 1785 to permit the user to directly enter commands, search criteria, selections and the like.
  • the HU 1720 may also include imaging sensors 1787 directed into an area proximate the HU 1720 to detect motion, such as motion gestures.
  • the motion gestures may be sensed by sensors 1787, similar to offered by an Xbox Kinect system, to permit a user to control the HU 1720 without using an SD 1710 or the user interface 1785.
  • a user may make predefined gestures, in combination with information/feedback displayed on a TV or other RCD 1730.
  • the user may move his/her hands in open space in view of the imaging sensors 1787 such as to virtually type search criteria that are displayed on a TV or other RCD 1730, select menu entries, "swipe" windows to the left/right, "scroll” through a list of potential matching candidates and the like.
  • the gestures may be sensed and processed in accordance with the processes described in one or more of the following: US Patent 8,657,863 titled “Action selection gesturing”; and/or USSN 20100199228 titled “Gesture Keyboarding", the complete subject matter from both of which are expressly incorporated herein in their entireties.
  • FIG 17 further illustrates an "active" over-the-air (OTA) intelligent antenna home unit (smart AHU) 1784 that is configured to receive over-the-air broadcast transmissions, such as from local or national over-the-air broadcast networks (e.g., ABC, CBS, NBC), as well as non-OTA content.
  • the OTA antenna may be a high definition (HD) antenna.
  • the smart AHU 1784 is permanently or detachably coupled to a transceiver (also referred to as an adapter), which represents a distribution hub 1775.
  • the Smart AHU 1784 includes a controller 1786 and memory 1788.
  • the controller 1786 may manage reception and reformatting of incoming OTA content.
  • the memory 1788 may temporarily store the OTA content while being reformatted into a data packet format for
  • the HU 1720 may communicate bi- directionally with the controller 1786 over the wireless communications link established between the WNA 1774 and the transceiver 1776.
  • the Smart AHU 1784 provides a wireless connection with the HU 1720, the SDs 1726, router 1732 and RCDs 1730, and as such may be easily located anywhere in the home within the wireless range of the transceivers 1776 and the distribution hub transceiver(s) 1775.
  • the Smart AHU 1784 may be located in an attic, an upstairs room, in a different building from the HU 1720 and/or RCDs 1730, in the same room as the HU 1720 and/or RCDs 1730 and the like.
  • the Smart AHU 1784 may have a power cord to be plugged into an outlet, or alternatively maybe battery powered.
  • the transceiver(s) 1776 and 1775 provide wireless communication with the WNAs 1774 in order to stream audio and/or video content to the RCDs 1730.
  • the memory 1778, 1788 stores, among other things, audio and video OTA and non-OTA content before wireless transmission to the select one or more RCDs 1730.
  • the memory 1778, 1788 may also store program guides for various service providers, as well as user analytics such as user past choices and/or preferences, user viewing history and/or behavior, and the like.
  • the transceiver(s) 1776, 1775 convey content to one or more select RCDs 1730. For example, the user may designate a first TV to receive a sporting event, and designate a second TV to receive a movie.
  • the HU 1720 and/or AHU 1784 may simultaneously stream content from multiple service providers.
  • the HU 1720 and/or AHU 1784 may receive a movie from Netflix and stream the movie to a select first TV, while simultaneously receiving a sporting event from a broadcast network (e.g. CBS) and streaming the sporting event to a second TV, while simultaneously receiving another event from a cable or satellite provider (e.g. Dish Network or Charter) and streaming the event to a third TV.
  • a broadcast network e.g. CBS
  • a cable or satellite provider e.g. Dish Network or Charter
  • the RCDs 1730 may represent home entertainment receivers, cable set top boxes, televisions (smart or traditional), electronic gaming systems (e.g., Xbox, Wii, PS3, PlayStation, etc.), Blu-ray players, DVD players, active speakers (e.g., speakers with a power amplifier therein) and the like.
  • electronic gaming systems e.g., Xbox, Wii, PS3, PlayStation, etc.
  • Blu-ray players e.g., speakers with a power amplifier therein
  • DVD players e.g., DVD players with a power amplifier therein
  • active speakers e.g., speakers with a power amplifier therein
  • FIG. 1 particular components, such as an active speaker, TVs and an audio system are shown as examples, in addition to generic RCDs 1730. It is recognized that for non-powered speakers, an RCD 1730 may be attached thereto.
  • the RCDs 1730 have a wireless networking adapter (WNA) 1774 attached thereto.
  • the WNA 1774 may be formed as a detachable device that is plugged into a port on the RCDs 1730.
  • the WNA 1774 may have the form factor of a USB stick that is plugged into a USB port on the RCDs 1730.
  • the WNA 1774 may be formatted to plug into an SD port, HDMI port, A/V RCA jack ports, RGB component ports, an S-Video port, a fire-wire port, a Thunderbolt port, a DB-9 pin connector port, and the like.
  • the WNA 1774 may be built within and integrated into the RCDs 1730 (e.g., a smart television), active antenna 1784, smart light 1774 and the like.
  • the WNA 1774 may be permanently secured to the RCDs 1730, active antenna 1784, smart light 1774 and the like.
  • the HU 1720, AHU 1784, router 1732 and WNAs 1774 may establish a master slave relationship with one of the HU 1720, AHU 1784, router 1732 and WNAs 1774 being designated as the master device.
  • the WNAs 1774, HU 1720, router 1732 and AHU 1784 each have a unique ID that may be dynamically assigned by the network or the master device (e.g. one of the HU 1720, AHU 1784, router 1732 and WNAs 1774) at the time the HU 1720, AHU 1784, router 1732 and WNAs 1774 are registered with the system 1702.
  • the IDs may be assigned at the time of manufacture.
  • the master device undertakes a registration sequence to identify each WNA 1774 within the entertainment environment.
  • the HU 1720 or AHU 1784 may under take the registration sequence as a master device.
  • the WNA 1774 may inform the HU 1720 or AHU 1784 of additional information regarding the RCD 1730 to which the WNA 1774 is connected.
  • the WNA 1774 may convey, to the HU 1720 or AHU 1784, the corresponding adapter ID, along with the type and/or model of RCD 1730 connected thereto.
  • the HU 1720 and/or AHU 1784 may define a separate data- streaming channel with each RCD 1730 to receive content.
  • the HU 1720 and/or AHU 1784 may communicate uni-directionally or bi-directionally with the controllers in the RCDs 1730 over wireless communications links established between the WNAs 1774 and the transceiver(s) 1776 and/or 2196.
  • the HU 1720 may use common or separate transceivers 1776 for each content streaming channel.
  • the AHU 1784 may use common or separate transceivers for each content streaming channel.
  • the HU 1720 may still define a separate content streaming channel with each RCD 1730 to receive content.
  • the HU 1720 and/or AHU 1784 may define a multi-casting session in which multiple WNAs 1774 receive content over a common channel.
  • AHU 1784 The structure and functions described herein for the AHU 1784 may be wholly or partially implemented within one or more HU 1720, and/or one or more AHU 1784.
  • the system 1702 further includes "smart" lighting devices 1790 that include a light illumination element 1792 housed in combination with an WNA 1774.
  • the WNA 1774 permits the user through the HU 1720 to provide any functionality supported by the smart light, such as ON/OFF, dimming, color change, flashing and the like.
  • the system 1702 is configured to permit the user to locate and select content without navigating any particular SP program guide or SP hierarchical menu structure. Instead, the system 1702 affords a SP diagnostic, content-based graphical user interface that combines and presents content options from multiple SP in a common window for viewing and selection.
  • the HU 1720 and/or AHU 1784 may be coupled to one or more RCD's 1730 through cables that facilitate bidirectional communication.
  • the HU 1720 and/or AHU 1784 may supply commands to the RCD 1730 along the cable, while the RCD 1730 provides feedback in connection with device status (e.g., ON/OFF, states for certain features (Audio channel #1 Selected, Speakers A ON, etc.) and the like.
  • device status e.g., ON/OFF, states for certain features (Audio channel #1 Selected, Speakers A ON, etc.
  • Figure 18 illustrates a block diagram of the various functional components utilized in accordance with embodiments to select content between the multiple service providers.
  • the system 1702 formed in accordance with embodiments herein, interacts with multiple service providers 1802.
  • the system 1702 accesses and obtains OTA and non-OTA content from the service providers 1802 over various distribution medium 1804.
  • the distribution medium 1804 may represent RF transmissions (OTA networks), Internet or cable company infrastructures, satellite broadcast transmissions and the like.
  • the home unit 1720 and/or AHU 1784 interacts, over the various distribution medium 1804 to obtain program listings of the content available from each service provider 1802.
  • the user enters information (also referred to as content search criteria) identifying content of interest at the user interface, such as the smart handheld device 1726.
  • the user may enter information and selections that are provided to the HU 1720 and/or AHU 1784 through SDs 1726, voice commands, gesture commands and the like.
  • An app 1732 running on the SD 1710 permits the user to enter the content search criteria.
  • the content search criteria are conveyed to the HU 1720 and/or AHU 1784.
  • the HU 1720 and/or AHU 1784 perform queries and searches of the various service providers 1802 for matches.
  • examples of potential matches are denoted at1812.
  • the HU 1720 and/or AHU 1784 may identify a potential matching show 1814 that is offered by service provider #2.
  • the HU 1720 and/or AHU 1784 may identify a potential matching game 1816 offered by SP #1 .
  • the HU 1720 and/or AHU 1784 may identify a potential matching song, album, concert, etc. offered by SP #6.
  • the HU 1720 and/or AHU 1784 filters and sorts potential matches 1812 and formats the potential matches 1812 in a manner for presentation to the user.
  • the potential matches may represent channels or an "in-app" purchase of a program from a per-per-view or on-demand service.
  • the potential matches may be presented as a list, thumbnails, icons or in another manner on the display of the SD 1726.
  • the HU 1720 and/or AHU 1784 establishes a communications link with the corresponding service provider and a streaming channel between the HU 1720 and/or AHU 1784 (and any intervening network components such as a router) and a designated audio or video device to present the content to the user (e.g.
  • the HU 1720 and/or AHU 1784 implements a payment sub- process.
  • the HU 1720 and/or AHU 1784 accesses prerecorded billing information provided by the user (e.g., credit card information, a PayPal account, etc.) in order to pay the SP 1802 for the select program.
  • prerecorded billing information provided by the user (e.g., credit card information, a PayPal account, etc.) in order to pay the SP 1802 for the select program.
  • the system 1702 affords an easy mechanism for paying the multiple service providers through a common interface.
  • the system 1702 provides a shortcut for delivering content to the user, without the user needing to navigate a program guide for menu structure specific to each service provider.
  • the SD 1726, HU 1720 and/or AHU 1784 may be integrated into an RCD 1730.
  • Figure 19 illustrates a flowchart process carried out in accordance with an embodiment to provide content management and selection.
  • the operations of Figure 19 may be implemented on an SD 1726, an HU 1720, an AHU 1784, as well as within an RCD that integrates the functionality of the SD 1726, HU 1720 and/or AHU 1784.
  • the user enters the name or other content search criteria of desired content of interest at an SD 1726. For example, the user may enter a beginning portion of, all of, or select keywords from a name of a program that the user desires to watch.
  • the user may enter all or a portion of the title, when the user desires to watch a select sporting event, the user may enter the team names, type of event and/or location of the event, among other things.
  • the user would enter a portion of the song name and the like.
  • the user may also enter a designation of one or more RCDs 1730 to display or otherwise present the content of interest.
  • the user may enter other information (at an SD 1710 or other device that offers input functionality) to designate the desired content of interest.
  • the user may enter a type of movie, actors' names, a director or other information generally describing the movie or sporting event that the user desires to watch.
  • the user may enter, as search criteria, information related to the user's past viewing history in order to
  • the user may indicate a desire to view more movies like The Matrix or The Bourne Identity, more movies that star a select actor, and the like.
  • the user may also designate series to watch, such as "30-FOR-30", The Americans, House of Cards and the like.
  • the SD 1726, HU 1720 and/or AHU 1784 may maintain analytics regarding a user's history, such as the names of programs viewed, types of programming preferred and the like.
  • the SD 1726, HU 1720 and/or AHU 1784 may maintain a list of past episodes already viewed, and in future searches present the next un-viewed episode as the option for the user.
  • the SD 1726, HU 1720 and/or AHU 1784 may maintain a record of prior episodes viewed and locate the next episode not yet viewed by the user.
  • the SD 1726, HU 1720 and/or AHU 1784 may store a viewing history and based thereon the SD 1726, HU 1720 and/or AHU 1784 may offer recommendations.
  • the SD 1726, HU 1720 and/or AHU 1784 may also store input from the user as to programs that the user likes and dislikes. Based on the likes and dislikes, the SD 1726, HU 1720 and/or AHU 1784 may offer recommendations.
  • the method accesses one or more program guides of service providers.
  • the method may also access other sources indicating programs available at various service providers for streaming to the user. For example, when Netflix or Hulu represent service providers, the method would access the related program guides, catalogs or other list designating the content available through Netflix and Hulu.
  • the service providers include a cable company, satellite broadcast company, over the air broadcast company and the like, the methods similarly access corresponding program guides, catalogs or other lists provided by each service provider.
  • the method searches the program guides, catalogs, Internet meta-data, tags and list (herein collectively and inter-changeably referred to as programs, program lists, or program guides) for information that matches or correlates to the search criteria entered by the user at 1902.
  • the search may represent a simple term search of titles for a program the user desires to view, relative to the titles, actors, directors, genre and the like, within the program guides, catalogs and list of the service providers.
  • the search may include a search of metadata or other tags associated with the program guides, catalogs and list.
  • the searches for internet content may be conducted in accordance with the search processes described in one or more of the following patents and applications: US 7305380 titled “Systems and methods for performing in-context searching”; US 8032508 titled “System and method for URL based query for retrieving data related to a context”; US 8090723 titled “Index server architecture using tiered and sharded phrase posting lists”; US 7984035 titled “Context-based document search”; and/or USSN 20120265779 titled “Interactive semantic query suggestion for content search", the complete subject matter of which are all incorporated herein by reference in their entireties.
  • the method determines whether a match (or multiple matches) has been identified between the service provider programs, catalogs and list and the information entered by the user. Multiple matches may exist when different service providers provide the same program, but at different times, on different stations or through different delivery medium (e.g. different cable providers, satellite versus over the air, streaming over the Internet and the like). Multiple matches may be found within the catalog of a single service provider, such as when a program is displayed at multiple times, in standard definition and high-definition, and the like. When the matches include content provided over the internet, multiple matches may arise from different service providers offering competing products.
  • the multiple matches may represent alternative or potential matches of different programs. For example, when the user enters a request for an action movie from a certain timeframe, multiple matches may arise, related to different movies. When the user designates a desire to view a sporting event between certain cities or colleges, the multiple matches may represent prior games between such teams, or games from different types of sports.
  • the method displays the potential matches to the user, such as on the SD 1726, an RCD 1730 or other display.
  • the potential matches may be displayed as a list that the user may scroll through.
  • the list displayed may include the title, the service provider offering the program, the channel, the time at which the program starts (when the service provider presents the program at a select time) and the like.
  • the amount of the charge may also be displayed along with the title and an indication that the program must be purchased.
  • the method may rank or prioritize the different matches. For example, if the user enters a partial movie title, the method may prioritize different potential matching movie titles based on a similarity to the partial title entered by the user.
  • the user selects an option from the display, such as selecting the service provider, channel and time for the program that
  • the user may enter the selection by touching a corresponding item on a list displayed on their smart phone and the like.
  • the method determines whether the selected program requires an additional payment from the user before the service provider will provide access to the content.
  • the method may again query the user to confirm that the user desires to pay for the program. Optionally, this additional query may be skipped. Once the user agrees to pay for the content, flow close to 1914.
  • the method accesses a payment record maintained for the user and submits the appropriate payment information to the service provider.
  • the SD 1710 may maintain a record with select credit card information, PayPal account information and the like.
  • the method accesses this credit card or PayPal information and provides it to the service provider.
  • the method (e.g., SD 1726, an HU 1720 and/or AHU 1784) sends the request to the service provider (along with the corresponding payment information) and designates the select program to be viewed.
  • the request may be constructed in various forms and include multiple iterative interactions between the method and the service provider or a single request, depending upon the service providers particular request protocol.
  • the method establishes a streaming channel with the RCD 1730 that has been designated by the user and the HU 1720.
  • the HU 1720 begins to stream the program from the designated service provider to one or more designated RCDs 1730.
  • a sporting event may be streamed from an Internet website to one or more TVs.
  • a movie may be selected from Netflix and streamed to one or more TVs, one or more computer monitors, iPads and the like.
  • Music may be selected from Pandora, Spotify or another music provider and streamed to a speaker or home stereo system.
  • Figure 20 illustrates an exemplary screenshot on the SD 1710 or RCD 1730 in accordance with an embodiment.
  • the screenshot 2000 may be presented once the HU 1720 and/or AHU 1784 identifies potential matches to the search criteria.
  • five potential matches 2002 have been identified and illustrated in a list format.
  • the list includes all or a portion of each movie title 2004, an indicator designating the source service provider 2006 (e.g., DirectTV, Charter, FOX, Netflix), a time at which the program begins 2008.
  • an indication is provided in the column 2008.
  • the payment indicia 2014 may be presented on a subsequent screen when the user selects the corresponding program entry.
  • an additional icon 2016 is provided (on this screen or a follow up screen).
  • the icon 2016 is selected by the user to confirm their desire to buy the program.
  • the user may also be presented with options (on this screen or a later screen), to designate the payment source, such as a credit card on file, a PayPal account or otherwise.
  • a quality indicator 2018 is provided to inform the user that the program quality of the transmission may be relatively low.
  • quality identifiers may be indicated in connection with every source (e.g. low, medium and high).
  • the window 2000 also includes other icons, such as a home icon 2020 to permit the user to return to a master home screen.
  • the window may also include volume buttons 2022 and 2024 to turn the volume up and down for the RCD 1730 presently being controlled.
  • the window 2000 may also include icons 2026 associated with specific RCDs 1730. The user may select one of the icons 2026 to designate a particular RCD 1730 on which the program should be presented. Optionally, the user may select multiple icons 2026 to designate that a common program be displayed on multiple corresponding RCDs 1730.
  • the SDs 1726, HUs 1720 and/or AHU 1784 may communicate using various protocols (e.g., WiFi, BLE, Classic Bluetooth and other protocols that support transmission of the commands, data and content of interest).
  • various protocols e.g., WiFi, BLE, Classic Bluetooth and other protocols that support transmission of the commands, data and content of interest.
  • the SDs 1726, HU 1720 and AHU 1784 may communicate all or certain types of information there between using a WiFi protocol and utilize the
  • Bluetooth or BLE protocol to communicate all or certain types of information there between.
  • the BLE or similar protocol may be utilized to communicate command type data between the SDs 1726, AHU 1784 and/or HU 1720 to achieve increased power efficiency.
  • a lower duty cycle is used, such that the SDs 1710 go to sleep for longer periods of time and wake up less frequently to send or receive packets as compared to classic Bluetooth and other protocols.
  • the GATT profile may be used to allow the SDs 1710 to send smaller data packets (exposed state) (relative to classic Bluetooth) in short bursts to save on power.
  • Data transmission sessions can be triggered by a local event, such as an input by the user of the SD 1726, and is available for an SD user to access at any time.
  • the administration link utilizes communications sessions having a data transfer defined length. The length of each
  • the communications session is dependent and defined by an amount of active data transfer.
  • the SDs 1710 do not maintain communications sessions or links with the HU 1720 or other SDs 1710 whenever the SD 1710 is not actively performing exchange of data.
  • the SD 1710 ceases to transmit or receive data packets for a predetermined period of time (e.g., 5 sec, 1720 sec, 1735 sec)
  • the SD 1710 goes to sleep and ends the communications session or link.
  • a link is rapidly re-established upon the next communication exchange (e.g., when the user opens the App or selects an RC command.
  • FIG. 21 illustrates a block diagram of a portion of the system 1702 of Figure 17 with a more detailed illustration of the smart AHU 1784 as formed in accordance with an embodiment.
  • the SMART AHU 1784 enables users to remove dependence on physical cables as sources of entertainment content, also referred to as "cable cutters".
  • the SMART AHU 1784 represents a wireless unit that includes one or more antenna 2193, a corresponding number of tuners 2195, a digital video recorder (DVR) 2197, a distribution hub 2175, a controller 2188 (corresponding to controller 1788) and memory 2186
  • the smart AHU 1784 enables reception and relay of OTA (Over-the-air) and non-OTA content. Examples of non-OTA content include but are not limited to Over-the-top or OTT content, internet protocol television (IPTV) content and the like.
  • the memory 2186 may include an integrated hard drive for media storage.
  • the SMART AHU 1784 represents an integrated solution, held within a single housing 2191 . [00198] In the embodiment of Figure 21 , the Smart AHU 1784 represents a stand-alone device that may be located anywhere within an entertainment environment within wireless communication range of the other devices (SD, HU, RCD) discussed herein.
  • the structure, hardware, software, circuits, features and functionality of the AHU 1784 may be implemented entirely within an SD 1726, HU 1720 and/or RCD 1730, or partially within one or more SD 1726, HU 1720 and/or RCD 1730.
  • the SMART AHU 1784 includes one or more low power, multichannel, high definition (HD) antenna, embedded with the ability to store, time shift, replay, watch (locally or remotely), and stream audio and video content received from broadcast (over-the-air OTA) or internet (OTT or IPTV) sources.
  • the SMART AHU 1784 includes local and/or cloud-based content storage.
  • the SMART AHU 1784 streams broadcast and/or internet content to RCDs 1730 such as exiting TV and home entertainment infrastructure.
  • the SMART AHU 1784 maintains robust connectivity with the infrastructure (TV's & A/V equip) through one or more local wireless communications links, such as WiFi network.
  • the distribution hub 2175 maintains a wireless connection to the local router 2132 located in the home.
  • the SMART AHU 1784 can be placed anywhere in the entertainment environment as the SMART AHU 1784 does not require a wired connection to an A/V device such as to be hooked directly to a TV. Users will be able to access the content on any of numerous interfaces, including but not limited to the following: iOS/Android - phone and tablet apps, Google Chrome Cast, Web browser, Apple TV, Roku, Amazon Fire, Samsung Smart TV, and the like.
  • the transceiver(s) 2196 provide wireless communication with the WNAs 1774 ( Figure 1 ) in order to stream audio and/or video content to the RCDs 1730.
  • the DVR 2197 stores, among other things, audio and video OTA and non-OTA content before wireless transmission to the select one or more RCDs 1730.
  • the DVR 2197 may also store program guides for various service providers, as well as user analytics such as user past choices and/or
  • the transceiver 2196 conveys content to one or more select RCDs 1730.
  • the user may designate a first TV to receive a sporting event, and designate a second TV to receive a movie.
  • the AHU 1784 may simultaneously stream content from multiple service providers. For example, the AHU 1784 may receive a movie from Netflix and stream the movie to a select first TV, while simultaneously receiving a sporting event from a broadcast network (e.g. CBS) and streaming the sporting event to a second TV, while simultaneously receiving another event from a cable or satellite provider (e.g. Dish Network or Charter) and streaming the event to a third TV.
  • a broadcast network e.g. CBS
  • a cable or satellite provider e.g. Dish Network or Charter
  • the SD 1710 communicates with the smart AHU 1784 over at least one communications channel or link 2192.
  • the communication link 2192 may be referred to as a streaming link, and is configured to support at least unidirectional data streaming.
  • the link 2192 exhibits robust data transfer to allow reliable data streaming over mid-range distances.
  • One example of a protocol that supports data streaming with the select network characteristics is the classic WiFi protocol.
  • other communications links may be utilized in connection with different types of data transmission between the SD 1710 and SMART AHU 1784, the SD 1710 and the RCDs 1730 and the smart AHU 1784 and the RCDs 1730.
  • the communications link 2192 may also be used to enter commands, selections, management instructions, and otherwise information related to selecting content from multiple service providers and directing the AHU 1784, router 1732 or HU 1720 to stream the content to one or more RCDs 1730.
  • the communication link 2192 may be used to indicate the content of interest, select a provider from which the content should be obtained, and designate one or more televisions on which the content is to be displayed.
  • the user may enter search criteria, select specific content (e.g., programs, games, video, songs), navigate between search or command windows through touch gestures on the SD 1726, through voice commands entered to the SD 1726, through motion gestures of the SD 1710 and the like.
  • the distribution hub 2175 includes at least one transceiver 2196 that supports one or more communication links.
  • a WiFi transceiver 2196 may be used to establish a WiFi communication link 2192.
  • the SMART AHU 1784 includes one or more antenna 2193 and one or more associated tuners 2195.
  • the SD 1710 conveys streaming audio and/or video content over the WiFi streaming link 2192 to the WiFi transceiver 2196.
  • the WiFi transceiver 2196 receives and unpacks the streaming audio/video data and passes such data to the controller 2188, memory 2186 and/or DVR 2197.
  • the controller 2188 then routes the audio/video data to one or more RCDs 1730 for presentation to the user.
  • the system 1702 may utilize a "freemium" model, whereby basic features will be available for free and premium features such as local storage on SDs 1726, remote access etc. would be optional for a recurring subscription fee.
  • a user content selection/management application operates on one or more SDs 1710 and is configured to operate the smart AHU 1784 to allow users to view OTA and non-OTA content on RCDs 1730 such as a TV, computer or mobile device.
  • the UCSM app 171 1 includes a configuration process that walks the user through an initial setup. Part of the setup includes providing feedback to the user to help the user position the smart AHU 1784 within the entertainment environment that affords select signal strength to SDs 1710 through the entertainment environment.
  • the UCSM app 171 1 includes a user tutorial process that includes a splash screen showing the user how to use the features in the UCSM app 171 1 .
  • the UCSM app 171 1 further includes a traditional style (grid format and/or tile style format) TV guide, for which the TV guide data is provided by a guide service provided (e.g. Rovi).
  • the UCSM app 171 1 provides various other features such as a custom content guide based on the user's favorites, one click channel changing, scrolling forward and back in time, the feature to sort based movies, genre, favorites, type (sports, drama) etc., and a search feature.
  • the UCSM app 171 1 includes a content manager that affords the user the ability to manage recordings a select period of time in advance (e.g., at least 2 weeks in advance). For a "series" recording, the content manager performs management functions based on how far into the future content timeline, the content manager has access. Optionally, the content manage may run content search scripts periodically (e.g., weekly) as future content becomes available.
  • the content manager schedules recordings (single shows, series etc.) - from anywhere, facilitates playback of recordings (e.g., on a television, the a portable computer, a SD 1710 and the like), facilitates watching of live TV (OTA or OTT) (e.g., on a television, the a portable computer, a SD 1710 and the like), renders A/V content available offline for mobile devices (e.g., stored within the app so content is protected), redirects the content from the DVR to any other location designated by the user (e.g., to allow the user to access shows while traveling) and other features.
  • OTA or OTT live TV
  • the UCSM app 171 1 includes a DVR manager that manages DVR settings (e.g., recording start and end times), limits for keeping shows etc., manages device settings (e.g., permitting the user to set content limits for children, etc.), that permits remote enablement/disablement of features (e.g., turn on/off features based on freemium model).
  • DVR settings e.g., recording start and end times
  • manages device settings e.g., permitting the user to set content limits for children, etc.
  • features e.g., turn on/off features based on freemium model
  • the UCSM app 171 1 includes universal remote integration with a home unit as described in patent applications 14/489,085, filed September 17, 2014, entitled “METHOD FOR PROXIMITY BASED AUDIO DEVICE SELECTION", which is a continuation of 14/099,965, filed December 8, 2013, entitled “METHOD FOR PROXIMITY BASED AUDIO DEVICE SELECTION”; 14/489,21 1 , filed September 17, 2014, entitled
  • OTT channels examples include, but are not limited to, Bloomberg (http://www.bloomberg.com/); C-SPAN 2 (http://www.c- span.org/live/); HSN (http://www.hsn.com/watch/live); NASA
  • the UCSM app 171 1 supports HU 1720 functionality for universal remotes so that the user can seamlessly integrate HU 1720 and the AHU 1784 with one app.
  • the AHU 1784 provides a simple and direct version of the HU 1720 functionality.
  • the UCSM app 171 1 enables the user to create a custom remote with the buttons the user wants for any of the users devices. The user is able to add as many buttons as the user wants.
  • Directional pads, rocker buttons and standard buttons are provided on the SD 1710 through the UCSM app 171 1 .
  • the AHU 1784 enables users to save shows locally on mobile devices (for trips, commutes etc.), watch live TV on up to multiple devices simultaneously, access content from a WiFi connection while traveling, recommend shows to users based on user history, one touch show recording, quick content sorting, and other features.
  • the integration of the HU 1720 functionality with the AHU 1784 allows the user to easily add all of the user's entertainment devices, to reliable WiFi connection, to setup multiple rooms (e.g., for people with more than one HU 1720), to quickly add all the buttons that users want on the remote from any of the devices, lets the user add as many buttons as the user wants from any of the previously picked and verified devices, allows the user to organize, rename and make macros out of these buttons.
  • FIG. 22 illustrates a functional block diagram of a browse recording/DVR (BR) app, within the UCSM app 171 1 , formed in accordance with an embodiment.
  • the BR app 2200 may be implemented on an SD 1726, HU 1720, a smart AHU 1784 and/or another device to enable the user to manage the DVR within the smart AHU 1784.
  • the BR app 2200 implements various tasks based on user input 2202. For example, the BR app 2200 supports a watch task 2204 whereby the user is permitted to select content to be viewed either from the DVR or from an external source through the smart AHU 1784.
  • the BR app 2200 further provides an edit recording settings task 2206, through which the user may edit various settings in connection with DVR recording.
  • the user may edit settings for selecting a television series, a channel, storage options, a number of episode a show, start and end times, synchronizing settings and/or content between the DVR and an SD 1726.
  • the BR app further includes a scheduled/conflicts task 2208 that may, among other things, coordinate conflicts between schedule settings.
  • a delete recordings task 2210 permits a user to delete content from the DVR.
  • a storage information task 2212 monitors various conditions of the smart AHU 1784. For example, the task 2212 may monitor hard drive free space, full space, a percentage/number/time of "keep forever" recordings, a percentage/number/time of unwatched recordings held on the DVR a percentage/number/time of watched recordings held on the DVR, and the like.
  • a download show task 2214 upon request from the user, downloads content from the smart AHU 1784 to the users SD 1710 or another mobile device (e.g., a laptop computer, tablet device).
  • the SD 1710 may store the content temporarily, such as for the user to view while traveling.
  • Figure 23 illustrates a logical flow for tasks implemented within the BR app 2200 and the smart AHU 1784.
  • operations implemented by the BR app are denoted in the column at 2301 and operations performed by the smart AHU 1784 are denoted in the column at 2303.
  • the smart AHU 1784 processes the request at 2306 to access the select content from the memory of the DVR and the list of content is displayed at 2308.
  • the user decides whether to watch content at 2310, after which the BR app determines at 2312 whether a recording is in progress.
  • playback is started at a current location in content being broadcast (e.g., at a current point in a live TV program).
  • playback is started at the beginning of the select content.
  • the BR app determines whether playback has already started (e.g., when the user previously selected the content, then stopped playback and is now reentering the BR app). If not, flow moves to 2318 where playback is started from the beginning of the content. If playback has already started at 2320, flow moves to 2322 where playback is continued/resumed.
  • the BR app opens an A/V output device (e.g., a player window on an SD 1710 or computer, a data streaming channel to a select RCD, a data streaming channel through a router to a select RCD and the like).
  • the BR app then waits for the select content at 2328.
  • the smart AHU 1784 accesses the select content at 2324.
  • the smart AHU 1784 begins to stream data defining the select content to the BR app.
  • the streaming data content is displayed.
  • the user may instead choose other tasks, such as to edit the recording settings (at 2332) or to delete one or more recorded content (at 2334).
  • the BR app opens one or more windows to permit the user to edit various record settings (e.g., the recording settings available at task 2206).
  • the BR app passed the updated record settings to the smart AHU 1784.
  • the smart AHU 1784 updates the DVR record settings at 2336.
  • the BR app passed a delete command and an identification of the content to be deleted to the smart AHU 1784.
  • the smart AHU 1784 checks the state of a current program (e.g., a current program being recorded or played back).
  • the smart AHU 1784 determines whether the content to be deleted is currently being played back. If so, the delete request is denied and a "failure" notification is passed to the BR app and displayed at 2342 to the user.
  • the delete request is accepted, the select content is deleted and a "success" notification is passed to the BR app and displayed at 2342 to the user.
  • Figure 24 illustrates a functional block diagram of a settings change (SC) app, within the UCSM app 171 1 , formed in accordance with an
  • the SC app 2400 may be implemented on an SD 1726, the smart AHU 1784 and/or another device to enable the user to manage the DVR 257 and/or other aspects of the smart AHU 1784.
  • the SC app 2400 receives inputs 2402 from the user and provides associated instructions and data exchange with the smart AHU 1784.
  • the SC app 2400 allows the user to set various settings, such as the country designator and/or zip code(s) 2404 which are then used to identify service providers for content, and wireless communications settings 2406 (e.g., WiFi settings).
  • a channel discovery scan (CDS) task 2408 performs a scan through one or more available broadcast service providers to identify broadcast channels that are available.
  • the CDS task 2408 also automatically determines a level of gain to be used by the automatic gain controller 254 in the tuner 255 in connection each broadcast channel.
  • a user settings recording quality (USRQ) task 2410 allows the user to set a quality level (high, medium, low) to be used in connection with recording content. For example, the user may direct the USRQ task 2410 to set a high level for recording quality for certain types of content, while setting a different level of recording quality for other types of content. It may be desirable to adjust the recording quality such as to utilize more/less storage space within the DVR 257 and/or to shorten/lengthen an amount of time utilized to complete a recording.
  • the SC app 2400 includes a storage information task 2412 that operates to change the settings associated with managing storage on the DVR 257.
  • the task 2412 may instruct the DVR 257 to only maintain a select percentage or number of recordings as "keep forever" or for an extended period of time.
  • the task 2412 may instruct the DVR 257 to only maintain unwatched recordings until a select percentage/number/time of the storage space on the DVR 257 is full, and the like.
  • the task 2412 may instruct the DVR 257 to only maintain watched recordings so long as a select
  • a premium service configuration (PSC) task 2414 maintains configuration settings that are enabled when a user subscribes to a premium service (e.g., pays for a subscription that offers added features).
  • the subscription services may represent access to OTT service providers, provide functionality to redirect stored content to a remote location or remote playback device and the like.
  • a version task 2416 maintains the version information for the app, any app operating on the SD 1726, and for the software/firmware operating on the smart AHU 1784.
  • FIG. 25A illustrates an initial setup (IS) app 2500, within the UCSM app 171 1 , that may be implemented on the SD 1726, the HU 1720, the AHU 1784 or another computing device.
  • the IS app 2500 includes various tasks, such as a location entry task 2503, a WiFi setting task 2505, a channel discovery scan (CDS) task 2507 and a premium service setup task 251 1 .
  • CDS channel discovery scan
  • the location entry task 2503 enables the user to enter location information such as country, zip code, address and the like.
  • the location entry task 2503 uses the location information for, among other things, to identify service providers that provide OTA content and/or non-OTA content to the geographic area in which the system 1702 is located.
  • the WiFi settings task 2505 manages network connection information used to access any local area network(s) (LAN) and wide area network (WAN).
  • LAN local area network
  • WAN wide area network
  • the WiFi settings task 2505 enables the user to enter SSID(s) and passwords associated with a LAN for an entertainment environment.
  • the CDS task 2507 manages operation of the AHU 1784 in connection with performing scans for available OTA channels of the OTA broadcast network(s) within range of the AHU 1784.
  • the premium service setup task 251 1 performs setup of premium services and manages the services available through the premium service. For example, the task 251 1 may identify additional service providers such as OTT and IPTV service providers.
  • FIG. 25B illustrates a logical flow for the IS app 2500.
  • operations implemented by a setup app are denoted at 2502
  • operations performed by the smart AHU 1784 are denoted at 2504, and operations performed by the app operating on the HU 1720 are denoted at 2506.
  • a scan is performed at 2508 to located one or more smart AHU 1784.
  • the IS app 2500 determines whether sufficient information is already stored in the IS app 2500 to complete a connection to the AHU 1784. If sufficient information is already stored in the IS app 2500 to connect, then no further initial setup is warranted and flow moves along branch 251 1 to the home screen of the main application operating on the SD 1726. Otherwise flow moves to 2512.
  • the user is prompted to connect to the AHU 1784, such as through the transceiver in the distribution hub.
  • the user is prompted to enter at 2514 network entry information, such as the WiFi SSID and a password.
  • the IS app 2500 waits for the AHU 1784 to connect, while at 2518, the distribution hub directs the transceiver to connect to the local area network.
  • the IS app 2500 instructs the AHU 1784 to perform an automatic channel scan of the OTA broadcast to identify available channels within range of the antenna.
  • a channel search is performed, in which the controller and/or the AHU 1784 manage the antenna and tuner to scan through all or a select range of the OTA broadcast frequency range.
  • the tuner may begin by tuning to a select potential frequency/channel and listening for a receive signal. When no receive signal is detected at the current potential frequency/channel, the tuner changes to a different potential frequency/channel (e.g., by decrementing or incrementing the receive frequency by a select increment).
  • the tuner may begin at one end (or a select intermediate channel) of a range of potential frequencies/channels.
  • the tuner may then step through a series of potential frequencies/channels in even (or uneven) increments, while listening for a receive signal.
  • the tuner may listen for a receive signal for a select period of time, and then tune to a new potential frequency/channel.
  • the tuner or controller records each frequency/channel for which a receive signal is detected with sufficient signal strength to indicate an available channel over the OTA broadcast network.
  • the AGC may cycle through a range of potential gain levels until a receive signal strength or signal quality achieves a select level. For example, at each new potential frequency/channel, the automatic gain control may first set the receive gain at a relatively high level in order to detect relatively weak receive signals. When a receive signal is detected, the AGC then decreases the gain by select increments while listening to the receive signal at each gain level. Optionally, the AGC may adjust the receive gain upward and downward while monitoring the signal strength of the received signal. When a signal is received with a desired signal strength or signal quality, the
  • the tuner and/or controller records, in a list of OTA channel settings, each available channel and the corresponding gain level that affords a designed signal strength or signal quality. Once the channel scan is complete at 2524, the list of available channels is returned to the IS app 2500.
  • the IS app 2500 displays to the user on the SD 1726, the results of the channel scan.
  • the results returned may include the list of available channels, the signal strength associated with each channel and the like.
  • the IS app 2500 determines whether the channel scan was successful. For example, at 2526, the user may be prompted to indicate whether the available channels are acceptable, or instead whether the user wants to repeat the channel scan. At 2528, if the channel scan is not
  • the IS app 2500 begins the initial setup of the HU 1720.
  • the HU 1720 is set up as explained herein and in the related
  • the IS app 2500 sets up any premium services for which the user has paid to subscribe.
  • Figure 26 illustrates a show discover (SD) app 2602, within the UCSM app 171 1 , that may be implemented on the SD 1726, the HU 1720, the AHU 1784 or another computing device.
  • the SD app 2602 includes various tasks related to identifying content of interest, such as a genre task 2604, an actor search task 2606 and a recommendations task 2608.
  • the genre task 2604 receives user inputs indicating a genre of interest and searches the program listings of available content in connection with each available service provider.
  • the genre task 2604 identifies programs that match the genre of interest and displays a list of the genre matching programs.
  • the genre task 2604 may also save, based on past user selections, genre preferences of the user.
  • the actor search task 2606 receives user inputs indicating one or more actor of interest parameters and searches the program listings of available content in connection with each available service provider.
  • the genre task 2606 identifies programs that match the actor of interest parameter and displays a list of the programs that match the actor of interest parameter.
  • the actor search task 2604 may also save, based on past user selections, actor preferences of the user.
  • the recommendation task 2608 monitors one or more users past program selections, past search parameters, viewing behavior and other information regarding the user's viewing preferences.
  • the recommendation task 2608 searches the program listings of available content in connection with each available service provider.
  • the recommendation task 2608 provides
  • the SD app 2602 communicates with the AHU 1784 to provide stored, live OTA content, live non-OTA content and the like.
  • the SD app 2602 communicates with one or more content listing services 2610 that maintain listings of programs on the various service providers.
  • the content listing services 2610 stores a program list for each OTA broadcast service provider, each non-OTA content service provider and the like.
  • Figure 27 illustrates a channel guide (CG) app 2702, within the UCSM app 171 1 that may be implemented on the SD 1726, the HU 1720, the AHU 1784 or another computing device.
  • the SD app 1726 includes various tasks related to enabling the user to view a channel guide and select a channel to view.
  • the CG app 2702 includes a channel guide task 2704 that interacts with the user through the user interface of the SD 1710 to receive input from the user and present information to the user.
  • the channel guide task 2704 collects channel guide data 2714 from one or more a content listing service 2712, such as Rovi Corporation.
  • the content listing service 2712 provides entertainment data, such as lists of programs available from various service providers, as well as data analytics regarding user viewing behavior and preferences.
  • the channel guide 2704 uses the guide data 2714 to inform the user of various options. Based on user selections, the channel guide task 2704 provides instructions and/or receives input from other tasks within the CG app 2702, such as from the custom guide task 2706, display live content task 2708 and DVR menu task 2710.
  • the custom guide task 2706 performs operations based upon inputs from the user to form one or more custom program guides in connection with one or more user profiles. For example, one user may enter information in connection with a custom guide, from which the custom guide task 2706 generates a guide having only certain programs, certain genre of programs or programs from certain actors. For example, one viewer may wish to only see sports options, while a different viewer may only wish to view movies.
  • the custom guide task 2706 generates a custom guide in connection with each user and associates the guide with the corresponding user profile.
  • the display live content task 2708 manages interconnection of a channel selected by the user to one or more audio/video devices to play back the content (CG one or more RCDs 1730).
  • the display live content task 2708 receives a selection of a channel from the channel guide task 2704 and bidirectionally communicates with the AHU 1784 to establish a connection to the chosen channel. For example, when the selection represents an OTA channel, the AHU 1784 tunes the antenna to the corresponding channel and the transceiver streams the incoming OTA content either to an SD 1726, a router, one or more RCDs 1730 or another computing device of interest.
  • instructions 2720 are passed to the AHU 1784 to direct the AHU 1784 to establish a streaming link to the corresponding non-OTA channel.
  • the transceiver may establish a streaming link with an OTT service provider, an IPTV service provider and the like.
  • the AHU 1784 then conveys the non-OTA content to the SD 1726, router and/or RCDs 1730.
  • the AHU 1784 may direct the router to directly receive the non-OTA content and pass the non-OTA content directly to a destination audio/video device for display, namely one or more SDs 1726, RCDs 1730 and/or other computing devices.
  • a destination audio/video device for display namely one or more SDs 1726, RCDs 1730 and/or other computing devices.
  • the streaming non-OTA content does not necessarily stream through the AHU 1784 when being routed to the destination audio/video device.
  • the DVR menu task 2710 manages operation of the DVR, such as providing information to the channel guide 2704 concerning stored programs, settings for recordings and the like.
  • the DVR menu task 2710 instructs the AHU 1784 to begin or continue streaming the stored content from the DVR through the transceiver to one or more of an SD 1726, RCD 1730 and router.
  • the DVR menu task 2710 provides an interface between the channel guide 2704 and the DVR to enable management of the DVR.
  • the AHU 1784 may also interact with the content listings service 2712 to collect guide data 2716 in connection with scheduled recordings to be stored by the DVR.
  • Figure 28A illustrates a channel selection (CS) app 2802 that may be implemented on one or more of an SD 1726, AHU 1784, HU 1720 or other computing device.
  • the channel selection app 2802 receives an open channel guide instruction 2810 from the user which directs a channel guide task 2804 to present the channel guide to the user.
  • the channel guide includes program listing information from the various sources and organized in the various manners as discussed above in connection with the channel guide 2804 of Figure 171 1 and elsewhere in the present application.
  • the channel guide 2804 receives guide data 2814 which is similar to the guide data 2714 discussed above in connection with Figure 27, as well as other guide data discussed herein.
  • the guide data 2814 is provided from a content listing service 2812.
  • the channel guide 2804 might also receive channel guide information 2820 from non-OTA service providers 2815.
  • the channel guide information is presented on a display to the user and the user enters a channel selection 2812.
  • the channel selection 2812 is provided to a channel selected task 2806 which interacts with one or more of a non-OTA service provider 2815, and/or the AHU 1784 to establish a channel connection.
  • the channel task 2806 sends a channel request 2822 to the service provider 2815 requesting to establish a streaming non-OTA channel for the select content.
  • the channel task 2806 may send a channel selection request 2824 to the AHU 1784 requesting a channel link to be established through the AHU 1784.
  • the channel request 2824 sent to the AHU 1784 may request an OTA channel or a non-OTA channel available through the AHU 1784.
  • streaming channels are established at 2818 and/or 2826, respectively.
  • the AHU 1784 streams the select content at 2818 to a display channel content task 2808.
  • the service provider 2815 similarly streams select non-OTA content 2826 to the display channel content task 2808.
  • the display channel content task 2808 interacts with the corresponding audio/video device to present the content to the user.
  • the display channel content task 2808 may directly display the content on the device operating the app 2802.
  • the task 2808 may manage a link between the source of the streaming content and another audio/video device in the entertainment environment.
  • Figure 28B illustrates a logical flow for the channel selection process of 28A.
  • the operations implemented by the channel select app 2802 are denoted in one column, while the operations implemented by the AHU 1784 are denoted at 2850.
  • the channel guide task 2804 ( Figure 28A) allows the user to browse the user guide at 2854.
  • the channel guide 2804 permits the user, while browsing, to view particular program or show information 2856, to select a show description 2858, to back up to a prior level in the channel guide 2860, and the like.
  • the user selects the channel at 2812 (corresponding to the input 2812 in Figure 28A).
  • the channel watch task 2806 is implemented at 2862 in Figure 28B.
  • the watch task 2806 opens a link to the audio/video device to play back the content at 2864.
  • the AHU 1784 checks at 2866 for a tuner that is available to tune to the select channel. When no tuner is available to tune to the select channel at 2868, an error message is returned to resolve a tuner conflict at 2870.
  • all of the tuners may be already selected to convey other channels/content to corresponding audio/video devices, such that when an additional watch request is made, no further tuners are available to tune yet a third or fourth channel to an additional audio/video device.
  • the AHU 1784 determines whether to save the streaming content on the DVR 257 at 2876.
  • the DVR saves the streaming content at 2876.
  • the content is streamed at 2874 and saved at 2876 until the program ends at 2878, after which the tuner is freed at 2880 and any appropriate cleanup operations are implemented.
  • the select audio/video device is open to receive content at 2864, the device enters a data wait mode at 2865 to wait for the streaming content from 2874. When content is received at 2865, the content is then displayed at 2867 until the program ends at 2869.
  • Figure 29 illustrates a logical flow implemented in connection with playback options.
  • Figure 29 illustrates a playback (PB) application 2902 that may be implemented on an SD 1726, HU 1720, AHU 1784 or other computing device.
  • PB playback
  • the user enters various playback commands 2904 which are processed at 2906 by the PB app 2902. Examples of commands may include pause 2910, play 2912, rewind 2914, fast forward 2916, replay 2918 and skip 2920.
  • the AHU 1784 When the AHU 1784 receives a corresponding command 2910- 2920, the AHU 1784 performs the corresponding task, such as to pause a data stream 2930 from the DVR, resume a paused stream 2932, rewind a data stream 2934, fast forward a data stream 2936, replay a data stream 2938 or skip through a data stream 2940.
  • the tasks 2930-2940 are implemented by the DVR under the control of the AHU 1784 in response to the corresponding commands from the PB app 2902.
  • Figure 30 illustrates a multi-user scenario in which multiple users 3002-3005 each have individual SDs 1710 that interact with the AHU 1784.
  • Each of the users 3002-3005 may provide separate instructions to the AHU 1784 simultaneously, during overlapping programs, or at independent points in time.
  • the first user 3002 may desire to watch a live television program on channel A
  • the second user 3003 may desire to watch a separate program on channel B.
  • a third user 3004 may desire to watch a third program live on channel C.
  • the users 3002-3004 independently and separately communicate with the AHU 1784 which establishes channel links to corresponding audio/video devices for each of channels A, B and C, simultaneously, at partially overlapping intervals in time, or at independent non- overlapping intervals in time.
  • a fourth user 3005 may desire to watch a program on a fourth channel D.
  • the AHU 1784 may not be able to support simultaneously display of the fourth channel D while already streaming OTA content for channels A, B and C. Accordingly, the AHU 1784 notifies the user of the tuner conflict at 3007.
  • the AHU 1784 may then begin to display the channel D to the fourth user 3005.
  • FIG. 31 illustrates a voice control subsystem implemented in accordance with embodiments herein.
  • the VC sub-system 3102 may be implemented with the SD 1726, HU 1720, RCD 1730, smart light 1792 and/or AHU 1784.
  • the voice control (VC) sub-system 3102 includes one or more processors 3104, one or more microphones 3106, signal processing (SP) circuit 3108, memory 31 10 and a software-implemented VC module 31 12.
  • the VC module 31 12 represents a software module stored in the memory 31 10 which represents memory of one or more of the SD 1726, HU 1720, RCD 1730 and/or AHU 1784.
  • the VC module 31 12 is implemented by one or more processors 3104 that are located within the SD 1726, HU 1720, RCD 1730 and/or AHU 1784.
  • the microphone 3106 may represent one or multiple microphones that may be located entirely within the HU 1720. Alternatively, the microphone 3106 may be located in one or more of the SD 1726, HU 1720, RCD 1730 and/or AHU 1784. For example, the user may be able to speak directly into his/her SD 1710 (e.g. where a distance between the users face and the SD 1710 is a few inches, 1 - 3 feet, arm's length, etc.). Additionally or alternatively, the user may be able to speak into open space where the user space is located more than 2 or 3 feet from the microphone 3106 within an entertainment environment. The speech may be detected by a single microphone 3106 or by multiple
  • microphones within a single device may be detected by microphones located in separate devices, such as when a single statement of speech is simultaneously detected by two or more of an SD 1726, HU 1720, RCD 1730 and/or AHU 1784.
  • the microphone may be positioned in the remote control, provided as a stand-alone device connected to the HU 1720 and/or AHU 1784.
  • Multiple microphones 3106 may be constructed in a
  • the SP circuit 3108 is adjusted to provide a select level of sensitivity, filtering, directionality and the like.
  • the speech sensed/recorded at microphone 3106 is converted to an electrical signal that is passed to the signal processing circuit 3108 connected to the microphone.
  • the electrical signal output from the microphone 3106 may be an analog or digital signal.
  • the SP circuit 3108 may receive analog or digital signals representative of the sensed speech.
  • the SP circuit 3108 may convert received speech signals from an incoming analog format to a digital signal.
  • the SP circuit 3108 may receive analog signals and perform analog signal
  • the SP circuit 3108 may receive digital signals and perform digital signal processing upon the signals to output a processed digital speech signal.
  • the processed speech signals may be passed directly to the processor 3104 in a streaming manner to be analyzed.
  • the processed speech signals may be recorded/stored in memory 31 10 as recorded speech content 31 14, to be quickly accessed and analyzed by the processor 3104.
  • the subsystem 3102 By storing the recorded speech content 31 14, the subsystem 3102 enables speech signals to be received and recorded by the microphone 3106 at one rate, yet be processed by the processor 3104 at a different second rate.
  • the recorded speech content 31 14 may be saved for later reference and analysis in connection with various analytics, such as to learn new commands, learn the user's voice inflections and dialect, learn to distinguish speech commands from background noise, entertainment audio content and the like.
  • the processor 3104 analyzes the speech signals, in connection with implementing the VC module 31 12 to perform various operations explained hereafter.
  • the VC module 31 12 may analyze the speech signal in accordance with various command recognition techniques.
  • the memory 31 10 stores a list of commands 3130 corresponding to instructions/actions or sets of instructions/actions to be implemented by one or more SD 1726, AHU 1720, RCD 1730 and/or AHU 1784.
  • the list of commands 3130 may be predetermined from an initial database based on prior users and the functionality offered by the overall system. Additionally or alternatively, a user may be afforded the feature to create individualized or tailored commands 3130 in connection with particular actions or sets of actions the individual user desires.
  • the list of commands 3130 may also store one or more voice activation (VA) terms that are predetermined or defined by the individual user.
  • VA voice activation
  • the VC module 31 12 includes a macro-conversion (MC) module 3126, a voice analysis module 3132, and a learn module 3120.
  • MC macro-conversion
  • the voice analysis module 3132 analyzes the speech signals recorded by the microphone 3106, and/or stored speech content 31 14, in order to identify VA terms, followed by voice commands that match the commands on the list of commands 3120.
  • voice analysis algorithms are known and may be used in connection with embodiments herein.
  • the voice analysis module 3132 may convert the recorded speech content 31 14 (or speech signals) into text, followed by an analysis of the text words that match text words on the list of commands 3130 and VA terms.
  • audio signals may be stored in connection with each VA term and/or command on the list of commands 3130, where segments of the speech content 31 14 (and recorded speech) are compared to the audio signals (e.g. through various correlation techniques).
  • the voice control subsystem 3102 direct the RCD 1730 to display text corresponding to the speech content.
  • the text may be displayed along the lower portion of a television, similar to subtitle in a movie.
  • the subsystem 3102 may automatically act upon the speech content, in parallel with display as a subtitle.
  • the subsystem 3102 may first display the speech content and wait for the user to indicate approval, such as by saying "yes BluMoo",
  • the voice analysis module 3132 may operate based upon a predetermined spoken instruction protocol or format.
  • the predetermined spoken instruction protocol may include one or more predefined "voice activation" terms (or VA terms) to be initially stated to inform the VC module 31 12 that the user desires to enter a spoken command.
  • VA term is then followed by one or more spoken commands.
  • the VA term indicates that the words or sounds following the VA term are to be treated by the VC module 31 12 as a spoken command.
  • one or more uncommon words may be chosen as the VA term (e.g., "Blumoo", "Home Stereo", "XYX").
  • the voice analysis module 3132 may continuously divide the speech signal (or speech content 31 14) into segments and analyze the content of each segment for the VA term.
  • the voice analysis module 3132 identifies a VA term in a statement of the speech signal
  • the VC module 31 12 analyzes a remainder of the segment (and one or more subsequent segments) of the speech content following the VA term in search of one or more spoken commands.
  • the voice analysis module 3132 may utilize various speech recognition techniques.
  • the segment of the speech signal may be compared to a collection of reference speech segments corresponding to commands available to the system 1702.
  • the commands may represent any of various operations and functions that the system 1702 is capable of performing.
  • the reference speech segments may be derived from various users over time to form a general library. Additionally or alternatively, the reference speech segments may be generated, in whole or in part, in connection with an individual user, such as during a learning or command entry mode.
  • the voice analysis module 3132 identifies one or more spoken commands
  • the corresponding system command is passed to one or more of SD 1726, HU 1720, and/or AHU 1784, to be processed in accordance with various embodiments described herein.
  • the SD 1710 may implement any action that the SD 1710 offers in response to user inputs through the user interface of the SD 1726.
  • the HU 1720 may transmit one or more IR codes to instruct an RCD 1730 to take various actions as explained herein.
  • the voice analysis module 3132 may access a secondary voice recognition system.
  • the voice analysis module 3132 may pass the segment of speech content to a third-party voice recognition system over the Internet and request a text translation in return.
  • the learn module 3120 performs actions in connection with setting up the voice control subsystem 3102 for a particular user.
  • the learn module 3120 may be implemented during an initial system set up. Additionally or alternatively, the learn module 3120 may be implemented periodically throughout the operative life of the system 1702 to continuously learn and improve the ability to accurately understand a user's spoken commands. Additionally or
  • the learn module 3120 may be implemented each time a new user is added to the system 1702.
  • the learn module 3120 may be activated by the user or automatically periodically by the system 1702.
  • the learn module 3120 may determine the type of microphone 3106 connected thereto and in response adjust the operations performed by the SP circuit 3108.
  • the microphone 3106 may be a separate device that is connected to the HU 1720.
  • the microphone 3106 may be integrated into an RCD 1730, an SD 1726, HU 1720 and the like.
  • the VC module 31 12 may learn a user's voice by displaying a series of commands on an RCD 1730, SD 1726, etc., and directing the user to state each of the commands while the VC module 31 12 records and "learns" the user's voice.
  • the VC module 31 12 may adjust the SP circuit 3108 to account for various sensitivity and directionality characteristics of the microphone 3106.
  • the learn module 3120 may undergo a background monitoring operation whereby the learn module 3120 listens and records sounds within the entertainment environment, such as street noise, audio from movies/television programs played by the system 1702 or from another system, music played by the entertainment system 1702 or by another system, kitchen noise, conversations from multiple people talking in the room, and the like.
  • the learn module 3120 may store segments of the background noise as background content 3122. Additionally or alternatively, the learn module 3120 may process the background noise to identify characteristics of interest that describe the background noise, and save the characteristics of interest alone or in combination with the background noise. The characteristics of interest may describe the background noise and be used by the voice analysis module 3132 to separate the background noise from recorded speech.
  • the learn module 3120 may then step through display (e.g. on an RCD 1730, SD 1710 or other display) of one or more VA terms and/or
  • the learn module 3120 records the user's speech and associates the speech with each command to form a collection of reference speech segments, wherein each reference speech segment is linked in memory to one or more corresponding VA terms and/or commands.
  • the individualized reference speech segments 3124 are saved in memory 31 10 alone or in combination with general reference speech segments from a collection or data base derived from other users.
  • the individualized reference speech segments 3124 may be conveyed to a remote collection or database to add to the general collection of reference speech segments.
  • Each of the commands may be associated with a single instruction or a set of instructions.
  • Single instructions may represent a single RCD related action, a single HU related action and the like.
  • the single RCD related action may be to change channel, turn the volume up/down, turn the stereo on/off, etc.
  • HU related actions may be to stream music from the HU 1720 to the RCD 1730, enter an administrative mode, learn a macro for a set of instructions, etc.
  • the MC module 3126 may be included within the VC module 31 12.
  • the MC module 3126 recognizes voice commands that correspond to sets of instructions. For example, a command may be "Play Blues Music".
  • the MC module 3126 may direct the HU 1720 to perform a set of actions, such as to turn on the stereo, set the input to a source capable of streaming content from the Internet, set the volume to an initial level, set the stereo features to "surround sound", etc.
  • the set of actions may also include instructions of the source streaming the desired type of music, such as a computer.
  • the instructions may direct the computer to open a browser and access an online streaming content provider (e.g., Pandora, Spotify).
  • an online streaming content provider e.g., Pandora, Spotify
  • the instructions would also direct the computer to enter a selection for a type of music or channel designated in the command (e.g., select a Blues channel), and set the computer's output to a channel communicatively coupled to the HU 1720 (e.g., a WiFi link, a wired output channel).
  • a selection for a type of music or channel designated in the command e.g., select a Blues channel
  • a channel communicatively coupled to the HU 1720 e.g., a WiFi link, a wired output channel.
  • macros may be when the user desires to watch a movie.
  • a macro may turn on the corresponding RCD 1730, set the input to a corresponding video source, change the audio input of a receiver to correspond to the audio output of a television and the like.
  • the user may desire to listen to music.
  • a macro may direct a receiver to a radio station, and turn on a select combination of speakers.
  • the MC module 3126 may include a macro-programming mode in which the user is afforded the opportunity to enter the instructions to be performed during the macro. For example, the user may speak each command to be performed. Optionally, the user may enter the commands through a user interface on a computer, the SD 1726, the HU 1720, the RCD 1730. Once the user enters the set of instructions, the MC module 3126 may also prompt the user for a macro command name to be spoken (e.g., "Play Blues Music"). The macro command is saved in memory 31 10 as a spoken macro command 3128.
  • a macro command name e.g., "Play Blues Music"
  • the macro commands set up by the user in connection with other embodiments herein, may be appended with a spoken macro command name such that, when a macro command is spoken, the MC module 3126 cross references the command with a collection of macros stored in the SD 1710 and/or HU 1720 (as described in connection with embodiments herein).
  • the spoken macro commands 3128 may include templates that are commonly used by other users.
  • the MC module 3126 may display the templates to the user and prompt the user to select one or more or all of the templates.
  • the templates may include predetermined names to be spoken in order to activate/implement the macro instruction set. Additionally or alternatively, the user may be prompted to state the predetermined names or assign a new name of the user's choice and state the new name of the user's choice.
  • the name associated with each macro instruction set is saved in the spoken macro commands 3128 as a macro name.
  • one or more action/instructions from a macro instruction set may be skipped, such as when the action/instruction is not needed.
  • the MC module 3126 will skip the instruction to the HU 1720 to transmit an optical code associated with turning on the RCD 1730.
  • the HU 1720 (and MC module 3120) may know a current status of the RCD 1730 such as when an HDMI cable is connected there between, or when another communications link exists between the HU 1720 and the RCD 1730 that supports transmission of device status information from the RCD 1730 to the HU 1720.
  • the HU 1720 may already know that the RCD 1730 is ON, and accordingly would skip the instruction to carry out the "turn on" action.
  • the MC module 3126 may track a command or button history entered by the user in order to maintain a record of whether each RCD 1730 is on or off, as well as other device state that may be tracked based on command/button history. Based upon the command/button history, the MC module 3126 may skip one or more instructions/actions within the macro when such instruction/action is not appropriate.
  • the MC module 3126 may automatically construct certain macros based upon the types of RCD 1730 that are detected in connection thereto.
  • the MC module 3126 may offer the automatically constructed macros to the user to be maintained or deleted.
  • the VC module 31 12 may maintain the microphone 3106 in an "always active" state such that the microphone 3106 is always listening for speech.
  • the VC module 31 12 would continuously review the content recorded by the microphone 3106 in search of a voice activation term.
  • the VC module 31 12 retains the speech content following the VA term and analyzes the speech content to attempt to match the speech content to a known command.
  • any network or protocol may be used therein including, but not limited to, 2402.1 1 a/b/g/n (WiFi); IEEE 1901 , 1905 (Power line Networks); SONET; as well as Device to Device networks such as Wireless USB; Zigbee; Bluetooth; Wireless HD; as well as Mobile Networks such as LTE, GSM, HSPA, 2G/3G/4G and the like.
  • Figure 32 illustrates an array of microphones that may be implemented in accordance with embodiments.
  • the array 3205 of microphones 3206 A-D may be positioned on a PC board or other substrate 3203 in the housing of the HU 20, HU 1720, AHU 1784, AHU 84, RCD 30, RCD 1730 etc., where each of the microphones is directed in a different direction and/or assigned a different sensitivity, passband, directionality, and the like.
  • the microphones 3206 A, and microphones B, D are connected to SP circuit 3208B.
  • the SP circuit 3208A may be set to exhibit background sensitivity such that the SP circuit 3208A outputs a signal dominated by background noise.
  • the SP circuit 3208B may be set to exhibit command sensitivity such that the SP circuit 3208B outputs a signal dominated by speech from the user.
  • the background noise may be subtracted from the speech signal to increase isolation of the speech of the user.
  • the SP circuits 3208A, B may change sensitivity, passbands, directionality and other characteristics to obtain signals that differ and enable removal of background sounds.
  • the combiner circuit 3209 may combine the outputs of the SP circuits 3208A, B in various manners. For example, the combiner circuit 3209 may sum the incoming signals, subtract the incoming signals from one another and the like.
  • the microphones 3206A-D and SP circuits 3208A, B may have common or the same sensing characteristics, such that all or most of the microphones 3206A-D listen for spoken commands.
  • the outputs of the SP circuits 3208A, B are summed to increase sensitivity.
  • microphones 3206A, and SP circuit 3208A may be adjusted to have near field sensitivity (e.g., sensitive to speech within 1 -5 feet of the array 3205) ; while microphones 3206B, D and SP circuit 3208B are adjusted to have far field sensitivity (e.g., more than 5 feet from the array 3205).
  • the microphones with near field sensitivity may have a wider sensitivity range (less directional), relative to the microphones with far field sensitivity (e.g., have a narrow sensitivity range or be more directional).
  • the directionality may be switched such that far field microphones are less directional and near field microphones are more directional.
  • cloud or “cloud computing” represent a model for delivering information technology services in which resources are retrieved from the Internet through web-based tools and applications, rather than a direct connection to a server and in which data and software packages are stored in one or more servers interconnected over the Internet.
  • audio/video and AN are not limited to content or devices that include both audio and video, but instead shall mean any audio only device, combined audio and video device, video only device, any audio only content, combined audio and video content, and video only content.
  • record and "file” are not limited to any particular data structure, but instead generally refer to any form of managed interconnection between various data items, such as a unique identifier (e.g. Mac address) and a collection of data items (e.g., user configurations, program directories, Macros, etc.).
  • a unique identifier e.g. Mac address
  • data items e.g., user configurations, program directories, Macros, etc.
  • customize when used in connection with user configurations, is used to indicate that a user provides at least limited input into the content of the user configuration. It is understood that a majority of the user configuration may be common or generic to numerous user configurations.
  • audio/visual equipment is used throughout this disclosure, and is intended to describe any audio and/or visual equipment for delivering audio and/or visual images to a user.
  • Such equipment may include, merely by way of example, a television, image projection device, stereo, audio and/or visual receiver, satellite television receiver, cable television receiver, digital video recorder, digital video disc (DVD) player/recorder, Blue-rayTM Disc player/recorder, video cassette player/recorder, entertainment device, multimedia or other computer, streaming media device, multimedia or other tablet, multimedia or other handheld device, multimedia or other personal data assistant, and/or multimedia or other mobile phone.
  • a television, image projection device, stereo, audio and/or visual receiver satellite television receiver, cable television receiver, digital video recorder, digital video disc (DVD) player/recorder, Blue-rayTM Disc player/recorder, video cassette player/recorder, entertainment device, multimedia or other computer, streaming media device, multimedia or other tablet, multimedia or other handheld device, multimedia or other personal data assistant, and/or multimedia or other mobile phone
  • the transmitter may include any device that transmits signals remotely to audio/visual equipment.
  • such transmitters may include RF transmission antennas/devices, infrared transmission devices, and/or any other non-wired data transmission device.
  • the transmitter may transmit data representative of user input received by the input device, such that the audio/video equipment may act on such directions when received.
  • OTT Over-The-Top
  • ISP internet service provider
  • the term "service provider” shall refer to any source of audio and/or video content, whether the source provides the content for free or charges for the content.
  • the service providers include over the air (OTA) broadcast service providers and non-OTA service providers.
  • OTA over the air
  • Non-limiting examples of non- OTA service providers include internet service providers (e.g., Charter, Comcast, AT&T), OTT service providers (e.g., Amazon, Apple, Hulu, Netflix, Google, Microsoft, Yahoo!), internet protocol television (IPTV) service providers (e.g., AT&T Uverse, Century Link, Cablevision, Comcast) and the like.
  • IPTV internet protocol television
  • systems and method are provided that allow a home unit to be installed that is readily compatible with existing equipment.
  • systems and method are provided that allow users to select content of interest from a single common environment without regard for which service provider is providing the content, and without the need to navigate one or more specific SP program guide environments to look for the content.
  • systems and method are provided that permit removal of cables for equipment, speakers, antenna, controllers and the like.
  • any network or protocol may be used therein including, but not limited to, 802.1 1 a/b/g/n (WiFi); IEEE 1901 , 1905 (Power line Networks); SONET; as well as Device to Device networks such as Wireless USB; Zigbee; Bluetooth; Wireless HD; as well as Mobile Networks such as LTE, GSM, HSPA, 2G/3G/4G and the like.
  • the embodiments described herein relate to remote control of audio and/or video devices
  • the HUs, SDs, and SEEC APPs described herein may be used to describe any device that is remotely controllable through an IR pulse sequence.
  • the RC devices may include home appliances, heating and ventilation air conditioning systems, home security systems, door locks, window locks and the like.

Abstract

A remote control and streaming interface for an entertainment environment. The system includes an infrared (IR) transmitter panel holding a plurality of IR LEDs formed in an LED array. The system also includes at least one transceiver configured to maintain a bidirectional administration link with a smart handheld device and configured to maintain a separate streaming link with the smart handheld device. The system includes a processor configured to identify remote control (RC) commands received over the administration link, the processor configured to direct the LED array to generate an IR signal having a select IR pulse sequence based on the RC commands.

Description

ENTERTAINMENT ENVIRONMENT REMOTE CONTROL AND AUDIOA/IDEO STREAMING METHOD AND SYSTEM
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application relates to and claims priority from provisional U.S. patent application 61/973,564, filed April 1 , 2014, and titled "METHOD AND SYSTEM FOR MANAGING STREAMING CONTENT FROM MULITPLE PROVIDERS"; and provisional U.S. patent application 62/076,379, filed April 1 1 , 2014, and titled "METHOD AND SYSTEM FOR MANAGING STREAMING CONTENT FROM MULITPLE PROVIDERS". Each of the above referenced provisional applications are expressly hereby incorporated by reference in their entirety.
[0002] This application relates to and claims priority from non-provisional patent application 14/489,085, filed September 17, 2014, entitled "METHOD FOR PROXIMITY BASED AUDIO DEVICE SELECTION", which is a continuation of 14/099,965, filed December 8, 2013, entitled "METHOD FOR PROXIMITY BASED AUDIO DEVICE SELECTION". This application relates to and claims priority from non-provisional patent application 14/489,21 1 , filed September 17, 2014, entitled "METHOD FOR AUDIO RECEIVER TO SELECT AUDIO
SOURCE FROM MULTIPLE TRANSMITTERS", which is a continuation of application 13/964,012, filed August 9, 2013, entitled "METHOD FOR AUDIO RECEIVER TO SELECT AUDIO SOURCE FROM MULTIPLE TRANSMITTERS". This application relates to and claims priority from non- provisional patent application 14/251 ,027, filed April 1 1 , 2014, entitled
"ENTERTAINMENT ENVIRONMENT REMOTE CONTROL AND AUDIOA/IDEO STREAMING METHOD AND SYSTEM", which is a continuation in part of applications 14/099,965 and 13/964,012. Each of the above referenced non- provisional applications are expressly hereby incorporated by reference in their entirety. BACKGROUND OF THE INVENTION
[0003] Aspects of the present disclosure are generally related to proximity based wireless remote control of audio systems. More specifically, aspects of the present disclosure relate to an interface to enable smart devices to remotely control and stream audio and video to audio/video devices within an
entertainment environment.
[0004] In recent years, more and more audio/video devices are being used at various locations in and around homes. This leads to the presence of a multitude of remote control devices in our lives. Remote control devices are becoming more sophisticated with additional capabilities and features. Home audio/video systems are getting more complicated and harder to control. They typically do not have a means to select audio/video devices close to the user.
[0005] Modern day hand-held devices are also becoming increasingly powerful. Examples of these smart devices include smart phones, music players, electronic tablets, etc. More specifically, these devices include iOS products like the iPhoneTM, iPod TouchTM and iPadTM devices (manufactured and sold by Apple Inc.), smart phones and tablets by BlackberryTM, AndroidTMphones and tablets, and touch screen devices by Motorola, Samsung and others. These devices include processors capable of performing multiple tasks and supporting many different "applications". Some such applications enable these smart handheld devices to be used as remote control devices. With the increasing use of smart hand-held devices as remote control devices, we are starting to face situations where there are multiple devices for the same remote control. There is a need for a system and interface to identify the nearby controllable devices close to the remote control device. The present disclosure addresses such a need in audio and video systems.
[0006] Moreover, aspects of the present disclosure generally relate to proximity based wireless control delivery from multiple service providers. More specifically, aspects of the present disclosure relate to an interface to enable smart devices to remotely select and manage streaming of audio and video to various audio/video devices within an entertainment environment. Further, the present disclosure relates to an integrated intelligent device system that is configured to, among other things, select over the air (OTA) content and/or non- OTA content, and record/playback OTA and non-OTA content.
[0007] Heretofore, entertainment environments include multiple A/V devices that are functionally segregated from one another. The A/V devices required physical cables to interconnection and control.
[0008] Further, today each service provider (SP) provides a separate device that must be independently operated to access that SP's content. The multiple devices are expensive and difficult to interconnect with cables during installation. Often, users hire third parties to install the equipment and run large amounts of wire throughout a home. Often, when a new equipment is installed, the prior equipment may not be compatible therewith and thus old equipment is discarded.
[0009] Also, in order to access particular content of interest, users must have knowledge of which service provider offers the content and when the content is available. Otherwise, the user must conduct a time consuming and tedious search for content of interest. Once the user decides which service provider has the content of interest, the user then must enter the chosen service provider's program guide environment (e.g. online or through the providers set top box). The user steps through a series of windows and options within the chosen SP program guide environment (also referred to as a SP hierarchical menu structure) until reaching the appropriate window and field, within the SP program guide environment, that permits the user to choose specific content (e.g. a program, movie, game, video, song, etc.). Each SP provides a different SP program guide environment or hierarchical menu structure, and thus the user must be familiar with each SP program guide environment or menu structure. Otherwise, navigation can be slow and cumbersome. [0010] A need remains for a system and method that permit users to remove dependence on physical cable connections between A/V devices in the home. Further, a need remains for a system and method that afford the user more flexibility in selecting and quicker access to content of interest, independent of the service provider program guide environment.
BRIEF SUMMARY OF THE INVENTION
[0011] Embodiments herein concern methods and systems for devices to remotely control and stream audio and/or video signals to nearby audio and/or video devices in a wireless network based audio/video system. The system comprises an infrared (IR) transmitter panel holding a plurality of IR LEDs formed in a LED array and at least one transceiver configured to maintain an
administration link with a smart handheld device and configured to maintain a separate streaming link with the smart handheld device. The system also comprises a processor configured to identify remote control (RC) commands received over the administration link, the processor configured to direct the LED array to generate an IR signal having a select IR pulse sequence based on the RC commands. The LED array is configured to transmit the IR signal in a reflective-deflective pattern across the entertainment environment until reaching at least one remotely controlled (RC) device within the entertainment
environment, wherein the RC device is positioned in a non-line of sight relation with the LED array.
[0012] Optionally, the system may further comprise an audio output component configured to generate an audio signal, the processor configured to identify audio data received over the streaming link, the processor configured to direct the audio output component to generate the audio signal based on the audio data. Alternatively, the system may be configured wherein the IR signals are configured to reflect off objects in the entertainment environment in multiple directions. [0013] Optionally, the system may be configured wherein the IR LEDs are arranged in a two dimensional array on the IR transmitter panel. Alternatively, the system may be configured wherein the LED array includes first and second LEDs having corresponding different first and second propagation directions and different first and second propagation envelopes, respectively. Alternatively, the system may be configured wherein the first propagation envelope has a narrow beamwidth and the second propagation envelope has a wide beamwidth relative to the narrow beamwidth. Optionally, the system may be configured wherein the first and second propagation directions project at different first and second angles from a front surface of the IR transmitter panel such that the first and second IR LEDs transmit IR signals having a common IR code from the IR transmitter panel at the different first and second angles.
[0014] Alternatively, the system may be configured wherein the
transceiver is configured to establish a temporary low energy administration link between the home unit and at least one smart handheld device in connection with conveying remote control related command(s) to the home unit. Optionally, the system may be configured wherein the transceiver is configured to communicate with the smart handheld device using a Bluetooth Low Energy (BLE) communications protocol, in connection with the administrative link, to remotely control one or more A/V remotely controllable devices. Alternatively, the system may be configured wherein the processor is configured to determine whether an RC command is received with data received over the administration link and to convert the RCD command to an associated select IR pulse sequence. Optionally, the system may be configured wherein the LED array is arranged such that the IR signals 36 propagate in multiple directions and at multiple angles from the LED array, the IR signals contacting other structures within the entertainment environment and be redirected or reflected in other directions such that the IR signals bounce off multiple structures in the entertainment environment before reaching the RC device, wherein redirection/reflection of the IR signals increases a likelihood that one or more of the IR signals 36 is received by each of the RC device.
[0015] Embodiments herein concern methods and systems for selecting and managing streaming content from multiple service providers, the system comprising: at least one transceiver configured to maintain a bidirectional administration link with a smart handheld device and configured to maintain a separate streaming link with entertainment devices; and a processor configured to identify user entries designating content of interest, the processor configured access program information for multiple service provides and search for matches between programs offered by the service providers and the content of interest, the processor configured to present a program list to the user of programs that potentially match the content of interest, where the program list includes at least two potential matches that are from different first and second service providers, the processor configured to receive a selection from the smart handheld device designating one of the potential matches, the processor configured to access the program from the service provider corresponding to the selection and stream the selection to an entertainment device.
[0016] The system further comprises an app configured to operate on a smart handheld device, the processor conveying the program list to be displayed on the smart handheld device, the program list including multiple entries for a common program but from the different first and second service providers.
BRIEF DESCRIPTION OF THE DRAWINGS
[0017] Figure 1 illustrates a block diagram of a system formed in accordance with embodiments herein.
[0018] Figure 2 illustrates a block diagram of the IR transmitter subsystem provided within the mobile unit in accordance with an embodiment. [0019] Figure 3 illustrates multiple alternative or complentary configurations in which the LED array may be arranged in accordance with alternative embodiments.
[0020] Figure 4 illustrates an alternative configuration for the IR transmitter subsystem.
[0021] Figure 5 illustrates an alternative configuration for the IR transmitter subsystem.
[0022] Figure 6A illustrates a top plan view of the IR transmitter
subsystem.
[0023] Figure 6B illustrates a side perspective view of the IR transmitter sub-system of Figure 6A.
[0024] Figure 7 illustrates a schematic representation of the system for AndroidTM smart handheld devices.
[0025] Figure 8 illustrates a representation of the system where a GATT protocol may be used instead of the SSP protocol in connection with the bidirectional administration link.
[0026] Figure 9 illustrates a schematic representation of an embodiment showing simultaneous connections with multiple SD.
[0027] Figure 10 illustrates a flowchart of a process for managing audio/video streaming communications exchange and priority for multiple SD in accordance with an embodiment.
[0028] Figure 1 1 illustrates an example of a bidirectional administration communications protocol utilized with the administration link in accordance with an embodiment.
[0029] Figure 12 illustrates a format that may be utilized in connection with individual user configurations associated with an individual HU.
[0030] Figure 13A illustrates a block diagram of a distributed networking environment implemented in accordance with an embodiment. [0031] Figure 13B illustrates a method for the network of Figure 13A to manage user configurations for smart handheld devices that communicate through home units to corresponding entertainment environments.
[0032] Figure 14 illustrates a block diagram of a process for managing transfer of communications between multiple SDs and a common home unit.
[0033] Figure 15 illustrates a process implemented in accordance with an embodiment to learn unknown new IR sequences in connection with select commands.
[0034] Figure 16 illustrates a method for collecting viewer behavior information, developing viewer profiles and providing recommendations based on the viewer profile.
[0035] Figure 17 illustrates a block diagram of a system formed in accordance with embodiments herein.
[0036] Figure 18 illustrates a block diagram of the various functional components utilized in accordance with an embodiment to select content between the multiple service providers.
[0037] Figure 19 illustrates a flowchart process carried out in accordance with an embodiment to provide content management and selection.
[0038] Figure 20 illustrates an exemplary screenshot on the SD in accordance with an embodiment.
[0039] Figure 21 illustrates a block diagram of a portion of the system with a more detailed illustration of the smart AHU as formed in accordance with an embodiment.
[0040] Figure 22 illustrates a functional block diagram of a browse recording/DVR (BR) app, within the UCSM app, formed in accordance with an embodiment. [0041] Figure 23 illustrates a logical flow for tasks implemented within the BR app and the smart AHU.
[0042] Figure 24 illustrates a functional block diagram of a settings change (SC) app, within the UCSM app, formed in accordance with an embodiment.
[0043] Figure 25A illustrates an initial setup (IS) app, within the UCSM app, that may be implemented on the SD, the HU, the AHU or another computing device.
[0044] Figure 25B illustrates a logical flow for the IS app.
[0045] Figure 26 illustrates a show discover (SD) app, within the UCSM app, that may be implemented on the SD, the HU, the AHU or another computing device.
[0046] Figure 27 illustrates a channel guide (CG) app, within the UCSM app, that may be implemented on the SD, the HU, the AHU or another computing device.
[0047] Figure 28A illustrates a channel selection (CS) app that may be implemented on one or more of an SD, AHU, HU or other computing device.
[0048] Figure 28B illustrates a logical flow for the channel selection process of Figure 28A.
[0049] Figure 29 illustrates a logical flow implemented in connection with playback options.
[0050] Figure 30 illustrates a multi-user scenario in which multiple users each have individual SDs that interact with the AHU.
[0051] Figure 31 illustrates a voice control subsystem implemented in accordance with embodiments herein. [0052] Figure 32 illustrates an array of microphones that may be
implemented in accordance with embodiments.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS SYSTEM OVERVIEW
[0053] Detailed descriptions of embodiments are provided herein. It is to be understood, however, that the inventions described herein may be embodied in various forms. Therefore, specific details disclosed herein are not to be interpreted as limiting, but rather as representative.
[0054] Figure 1 illustrates a block diagram of a system 2 formed in accordance with an embodiment. The system 2 includes one or more smart handheld devices (also referred to as SDs or mobile devices (MDs)). The SD 10 communicates with one or more home units (HU) 20, which in turn communicate with one or more audio and/or video remotely controllable devices (RCDs) 30-32. The SD 10 includes a user interface 52 having inputs and a display. The user interface 52 is configured to permit the user to enter commands to, among other things, remotely control the RCDs 30-32. The SD 10 and/or HU 20 may be configured to communicate, through a cellular network 3 over the Internet 9 with cloud computing services (CCS) 1 1 and/or dedicated enterprise server(s) (ES) 13. Data storage 15 is provided over the Internet 9 for storage and access by the CCS 1 1 and/or ES 13. The CCS 1 1 and ES 13 perform various functions, analysis, management and the like as explained in connection with various embodiments herein (such as in connection with Figures 12-16). The SD 10 may access, download information from and upload information to the CCS 1 1 , ES 13 and data storage 15 through a cellular network connection, a wifi network connection or otherwise. Similarly, the HU 20 may access, download information from and upload information to the CCS 1 1 , ES 13 and data storage 15 through a cellular network connection, a wifi network connection or otherwise. For example, the HU 20 may be configured to include a cellular chip set (e.g., cellular chip set 7) and assigned a cellular phone number in order to afforded a cellular network connection with a subscription cellular network (e.g., ATT, Sprint, Verizon), similar to the cellular chip sets offered in iPAD devices, iTouch devices, and the like. Optionally or in addition, the HU 20 may include Internet connectivity components (ICC) 5, such as a chip set configured to operate as a gateway, router, a network access point and the like.
[0055] The SD 10 uploads a streaming and entertainment environment control (SEEC) application 16, such as from an Apple or Google service. The SEEC APP 16 enables the SD 10 to communicate with the home unit 20 over at least two communications links 12 and 14 that exhibit different basic
characteristics. For example, one communications link 12, may be referred to as an administration link, and is configured to support unidirectional or bidirectional communication of non-streaming data content, while utilizing limited power, and affording quick or short connect and disconnect sequences to be followed in accordance with establishing a data connection session over one or more data channels. One example of a protocol that affords bi-directional, low power, quick connect/disconnect characteristics is the Bluetooth low-energy protocol.
[0056] The other communications link 14, may be referred to as a streaming link 14, and is configured to support at least unidirectional data streaming, with a level of power demand that may be higher than the level of power demand utilized by the administration link 12. The streaming link 14 may also exhibit a more involved connection sequence followed to establish a data connection session over one or more data channels, as compared to the connection sequence followed the administration link 12. The streaming link 14 also exhibits robust data transfer to allow reliable data streaming over mid-range distances. One example of a protocol that supports data streaming with the select network characteristics is the classic Bluetooth protocol.
[0057] The communications links 12 and 14 are utilized in connection with different types of data transmission between the SD 10 and HU 20. For example, the SD 10 establishes a temporary low energy BLE administration link 12 with the HU 20 in connection with conveying the remote control related connnnand(s) to the HU 20. The SD 10 establishes a classic Bluetooth streaming link 14 in connection with streaming audio and/or video content from the SD 10 to the HU 20.
[0058] The HU 20 includes at least one transceiver 22 that supports one or both of the administration and streaming links 12 and 14. For example, a Bluetooth transceiver 22 may be used to establish a BLE administration link 12 in connection with remote control related operations. For example, the Bluetooth transceiver 22 receives data packets over the link 12, and extracts data from the data packets. The Bluetooth transceiver 22 then passes the data to the microprocessor 24. The microprocessor 24 "unpacks" the data and determines whether the data includes remote control (RC) commands intended for the A/V RCDs 30-32. When the data includes RC commands intended for the A/V RCDs 30-32, the microprocessor converts the RC commands to a corresponding IR code designating a select IR pulse sequence.
[0059] The HU 20 includes, within an IR transmitter subsystem 26, an optical IR transmitter 35, such as single LED or an LED array. The optical IR transmitter 35 comprises LEDs arranged in at least one row and/or at least one column and is discussed in more detail below in connection with Figures 2, 3, 4, 5 and 6. The IR code is conveyed from the microprocessor 24 to the IR transmitter subsystem 26. The IR transmitter subsystem 26 drives the optical IR transmitter 35 to cause the LEDs to generate IR signals including the
corresponding IR pulse sequence. The optical IR transmitter 35 transmits a corresponding number of IR signals 36 as an IR cluster 34 having the
common/same select IR pulse sequence. The IR signals 36 propagate in multiple directions and at multiple angles from the optical IR transmitter 35. The IR signals 36 may propagate in a direct line of sight to an IR receiver at one or more of the AV RCDs 30-32. Optionally, one or more of the IR signals 36 may contact other structures within the entertainment environment and be redirected or reflected in other directions such that the IR signals 36 bounce off multiple structures in the entertainment environment before reaching an RCD 30-32. The redirection/reflection of the IR signals 36 increases the likelihood that one or more of the IR signals 36 is received by each of the AV RCDs 30-32.
[0060] The HU 20 also includes a stereo audio and/or video (AA/) output 28 coupled to an audio and/or video system 40 over in AV line 44. The audio/video system 40 is coupled to one or more speakers 42 and/or a television or other display.
[0061] The SD 10 conveys streaming audio and/or video content over the classic Bluetooth streaming link 14 to the Bluetooth transceiver 22. The
Bluetooth transceiver 22 receives the streaming audio/video data and passes the AA/ data to the microprocessor 24. The microprocessor 24 then unpacks and routes the audio/video data to the AA/ output 28 that then passes the audio/video data to the system 40 for presentation to the user.
[0062] When the SEEC APP is loaded by the SD 10, the SEEC APP 52 enables the SD 10 to communicate the RC commands to the processor that directs the optical IR transmitter to transmit the IR pulse sequences to RC devices based on the RC commands. The SEEC APP 52 maintains, on the SD 10, a customized user configuration associated with the corresponding entertainment environment. The user configuration is set up by a user through the SEEC APP based on individual user preferences. The user configuration comprises a set of input indicia associated with a select RC device, at least a portion of the input indicia indicative of commands for the select RC device, RC commands associated with the input indicia wherein the RC commands identify IR pulse sequences to be transmitted from the optical IR transmitter to the RC device to instruct the RC device to perform one or more associated actions; and a user-designated presentation of the input indicia on the user interface of the SD.
[0063] The HU 20 also includes an IR sensor 33 that is configured to sense IR signals. The SEEC APP 52 is configured to learn RC commands for a select RC device, when in a learn mode, by sensing, at the IR sensor, a new IR pulse sequence that is generated by a handheld remote control that is associated with the select RC device; receiving an input indicating a new RC command; and storing the new IR pulse sequence with the new RC command.
[0064] Figure 2 illustrates a block diagram of the IR transmitter subsystem 26 provided within the mobile unit 20 in accordance with an embodiment. The IR transmitter subsystem 26 includes one or more IR drivers 122 that are coupled, over line 130, to an optical IR transmitter 35. The IR driver 122 is controlled by the microprocessor 24 (Figure 1 ). The LEDs 124 align with one or more corresponding filter elements 126 and one or more lens components 128. As one example, a separate filter element 126 and a lens component 128 may be provided in connection with each LED 124. Alternatively, clusters or groups of LEDs 124 may be aligned with a common filter 126 and/or lens component 128. The LEDs 124 and filter elements 126 are chosen to provide IR signals at one or more select wavelengths. In at least one embodiment, the LEDs 124 and filter elements 126 are divided into at least two groups, such that one group of LEDs 124 and filter elements 126 produce infrared signals at a first distinct wavelength (e.g. 830um) and a second group of LEDs 124 and filter elements 126 produce infrared signals at a different second distinct wavelength (e.g., 940um).
Optionally, the LEDs 124 and filter elements 126 may be chosen such that more than two wavelengths of infrared signals may be produced. Alternatively, the entire LEDs 124 may produce only a single wavelength of IR signals. The wavelengths of the IR signals produced are chosen based on the types of audio/video RCDs 30-32 with which the home unit 20 is intended for use. For example, audio/video RCD 30 may be from one manufacturer and respond only to IR signals having a wavelength of 940 urn. Audio/video RCD 31 may be from a different manufacturer respond only to IR signals having a wavelength of 830 μιτι.
[0065] A separate lens component 128 maybe aligned with each filter element 126. Optionally, multiple filter elements and LEDs 124 maybe aligned with a single lens component 128. Optionally, multiple lens components 128 maybe aligned with a single filter element 126 and/or LEDs 124. [0066] The lens components 128 are positioned and configured to direct the infrared signals outward from the IR transmitter subsystem 26 at select propagation envelopes where each propagation envelope is directed at a select angle and has a select beamwidth. The propagation envelope, associated with an individual LED 124, has a central longitudinal axis of focus that extends at a select angle from a corresponding lens component 128 (when present). The axis of focus is determined and controlled by the type, shape, position and orientation of the lens. When no lens components are used, the axis of focus extends from the corresponding filter element 126 and/or LED 124.
[0067] The propagation envelope, associated with an individual LED 124, has a beamwidth that is defined by outer beam limits. The beam limits extend at a flared angle (or are maintained parallel to one another) as is determined and controlled by the type, shape, position and orientation of the lens. When no lens components are used, the beam limits flare (or extend parallel) at an angle determined by the type, shape, position and orientation of the filter 126 and LED 124.
[0068] Figure 3 illustrates multiple alternative or complementary configurations in which the LED array 124 may be arranged in accordance with alternative embodiments. A square array 134 is illustrated in which a substrate panel 132 is provided with a square arrangement of LEDs 124 mounted on the panel 132. The LEDs 124 are arranged in rows 133 and columns 135.
[0069] In an alternative exemplary configuration, a curved or L-shaped array 136 is illustrated. The panel 132 has at least a first set of LEDs 124 mounted on the panel 132 and arranged in a horizontal leg 138. The panel 132 also holds at least a second set of LEDs 124 arranged in a vertical leg 140. Optionally, more than one column or row of LEDs 124 maybe utilized to form the horizontal leg 138 and/or the vertical leg 140. The horizontal and vertical directions represent general orientations of reference relative to a manner in which the HU 20 is positioned when placed in the entertainment environment. For example, the HU 20 may include a base on which the HU is configured to sit/rest, such as when placed on a shelf, end table, floor, wall mount, RCD, and the like.
[0070] In an alternative or additional configuration, a T-shaped array 142 may be used in place of or in addition to the L-shaped array 136 and/or square array 134. The T-shaped array 142 includes LEDs 124 arranged in a first set aligned to form an arm 146 and in a second set aligned to form a base 144.
Optionally, more than one row of LEDs 124 may be used to form the arm 146. Optionally, only one column (or more than two columns) of LEDs 124 may be used to form the base 144.
[0071] In an alternative or additional configuration, a tubular array 152 may be provided to be used alone or in combination with other array
configurations. The tubular array 152 comprises a curved panel 150 with LEDs 124 provided there on. The curved panel 150 is shaped with a select radius 156 extending outward from a longitudinal axis 158. The LEDs 124 are arranged in columns 154 about (and face outward from) the exterior surface of the curve panel 150. In the example of Figure 3, the panel 150 is curved in approximately a half semi-circular shape such that opposed columns 154 of LEDs 124 face in substantially opposite directions at approximately 180° apart from one another. Alternative and additional configurations LEDs 124 may be provided and oriented to face in alternative and additional directions.
[0072] Figure 4 illustrates an alternative configuration for the IR transmitter subsystem 160. The IR transmitter subsystem 160 is provided upon a three dimensional (3D) spherically shaped panel 162 having LEDs 124 distributed about the spherical panel 162. The LEDs 124 are positioned to face outward in multiple directions from the panel 162. A portion of the LEDs 124 are shown in dashed lines to indicate LEDs 124 that are facing in an opposite direction (away from the drawing sheet) from the LEDs shown in solid line.
[0073] Figure 5 illustrates an alternative configuration for the IR transmitter subsystem 170. The IR transmitter subsystem 170 is provided with a collection of panels 172-175 arranged to form a 3D pyramid shape with a rectangular base. The LEDs 124 provided on panels 173 and 174 are shown in dashed lines. The LEDs 124 provided on the panels 172 and 175 are shown in solid lines.
[0074] Optionally, additional and alternative two-dimensional and three- dimensional shapes maybe utilized for the IR transmitter subsystem, as well as additional and alternative arrangements for the LED arrangements. Optionally, different surfaces of the IR transmitter subsystem 160 may include different combinations and different arrangements of LEDs. Optionally, a single LED may be used to transmit all IR signals. As one example, a single LED may be used in connection with multiple filters and lens that filters the signals emitted by the LED into different select wavelengths. For example, a single LED may emit a signal having multiple wavelength components. A first filter may pass only a first select wavelength/wavelength range, while a second filter may pass only a second select wavelength/wavelength range, while a third first filter may pass only a third select wavelength/wavelength range. The single LED may be joined to multiple lenses that are configured to have different select directionality. For example, a first lens may be configured to emit a narrow beamwidth, highly directional signal, while a second lens is configured to emit a wider beamwidth, low directionality signal.
[0075] Figure 6A illustrates a top plan view of the IR transmitter subsystem 136. As shown in Figure 6, the IR panel 132 has a plurality of LEDs, filters and lenses 124, 126 and 128 provided there on. The lenses 128 are configured to provide different propagation envelopes 180-181 . For example, a first subset of LEDs 124 (e.g. outer and central) may be coupled to lenses 128 that provide a first propagation envelope 180 having low directionality and a wide beamwidth as denoted by arrows 184. As another example, a second subset of LEDs 124 (alternating between the elements of the first subset) maybe coupled to lenses 128 that provide a second propagation envelope 181 having high directionality and a narrow beamwidth (relative to the beamwidth of the first propagation envelope 180). The second propagation envelope 181 is denoted by beam limits 185. [0076] The beam limits 184,185 may be varied for select LEDs, and may vary laterally as well as vertically. For example, the lateral (e.g. horizontal) beam limits 184, 185 may be relatively wide and equally dispensed about a central axis perpendicular to the face of the panel. Optionally, vertical beamwidth limits 184, 185 may differ from one another such that the IR signals propagate outward and upward, and do not necessarily propagate downward in an equal amount, (e.g., uneven vertical directionality).
[0077] Figure 6B illustrates a side perspective view of the IR transmitter sub-system of Figure 6A. As shown in Figure 6B, the LEDs 124 may be located at an intermediate point on the IR panel 132 and arranged in a single row or column. The LEDs 124 may be oriented to transmit outward from a surface plane of the IR panel 132 at a select angle. For example, when the IR panel 132 is oriented to extend along a longitudinal axis 133, the LEDs 124 may be arranged in a row to traverse the axis 133 laterally. The LEDs 124 with low directionality may be configured to exhibit a beamwidth with longitudinal limits 135, 137, while the LEDs 124 with high directionality may be configured to exhibit a beamwidth with longitudinal limits 139, 141 . The longitudinal limits 133- 141 are measured at an angle relative to the surface plane of the IR panel 132 along the longitudinal axis.
[0078] The LEDs 124 with low directionality may be configured to exhibit a beamwidth with lateral limits 143, 145 (Figure 6A), while the LEDs 124 with high directionality may be configured to exhibit a beamwidth with lateral limits 147, 149. The longitudinal limits 143-149 are measured at an angle relative to the surface plane of the IR panel 132 and at a perpendicular (transverse) relative to the longitudinal axis.
[0079] The LEDs 124 may be configured to transmit across all or any portion of a predetermined IR wavelength range (e.g., 700um to 1 mm).
[0080] The processor 24 controls the blinking pattern of the IR LEDs in the first and second subsets in a common manner. Thus, the first and second subsets of LEDs transmit a common IR pulse sequence (IR code) associated with a common RC command. In this manner, a common IR code is transmitted in different directions and from IR sources having different amounts of
directionality, and different beamwidths. The variations between beamwidth and directionality create an inter leaved or mesh pattern of IR signals that cross, reflect and re-cross an entertainment environment.
[0081] Optionally, the first and second subsets of LEDs 124 may be duplicated, but at different IR wavelengths. For example, RCDs 30 may be responsive to IR signals at a first wavelength (e.g., 830μηη) while other RCDs 31 are responsive to IR signals at a second wavelength (e.g., 940 μιτι). The LED array 136 may include first and second subsets of LEDs 124 that operate at 830 μιτι, and the LED array may further comprise third and fourth subsets of LEDs that operate at 940 μιτι. The third and fourth subsets of LEDs would have similar directionality, angular directions, and beamwidth as the first and second subsets of LEDs.
[0082] Optionally, more subsets may be defined with separate directions, directionality, beamwidths, wavelengths and the like. Hence, more than two subsets of LEDs may be provided for each wavelength.
[0083] An easy-to-use graphic interface on the smart handheld device 10 provides the configurations and choices concerning the operation of the system. A software application, referred to as an "SEEC APP," 16 is designed to run on smart handheld devices. The SEEC APP 16 provides easy, user-friendly graphic interface screens for users to indicate their control choices, to view status and to give and receive feedback from the wireless audio receiver. There may be two or more modes of interface with the wireless audio receiver. One mode represents a unidirectional or bidirectional administration link 12 with the wireless receiver and the other mode represents an audio and/or video streaming link 14, over which A/V signals may be sent to the audio and/or video RCDs 30-32 and/or audio/video system 40.
[0084] Variations in the SEEC APP are available to conform the SEEC APP to the requirements of the different smart handheld device 10 platforms. Using the stored SEEC APP 16, the smart handheld device 10 sends wireless signals to the processor 24. The processor 24 coordinates the signals coming from smart handheld device 10 in order to provide the control functions desired, and to provide overall coordination for the system. The processor 24 then sends the appropriate instructions to controlled RCD 30-32 and/or audio/video system 40 based on the received commands from the smart handheld device 10.
[0085] The smart handheld device 10 may utilize various communications protocols to provide the links 12 and 14, where such protocols afford certain functionality and performance levels. In accordance with embodiments herein, the Bluetooth Low Energy (BLE) communications protocol is utilized by the smart devices 10, in connection with the communications link 12, to remotely control one or more A/V RCDs 30-32 and for audio and/or video streaming to the audio/video system 40.
[0086] Figure 7 shows a schematic representation of the system for AndroidTM smart handheld devices 210. The system uses the Bluetooth SPP profile and A2DP profile. The SPP profile is used for a bidirectional
administration link 212 between the home unit 220 and the smart handheld device 210. The administration link 212 conveys SPP or GATT messages include firmware updates, IR codes, and access requests. The SPP profile permits the home unit 220 to be connected to multiple smart handheld devices 210 simultaneously. Optionally, the devices 210 may use the GATT profile for the administration link.
[0087] The streaming link 214 utilizes the A2DP profile to stream audio and the video distribution profile (VDP) to stream video from the smart handheld device 210. The A2DP and VDP profiles represent unidirectional profiles and allow only one smart handheld device 210 to be connected to the home unit 220 at one time. When the system 202 seeks to offer the streaming A/V functionality from more than one SD 210 with a single HU 220, the system 202 uses the A2DP and/or VDP profiles and the communications link 212 to negotiate a transition from one SD 210 to a new SD 210 for streaming A/V over the streaming link 214.
[0088] Figure 8 illustrates a representation of the system where a GATT protocol may be used instead of the SSP protocol in connection with the bidirectional administration link 1 17 between the SDs 1 16 and BUs 1 14. The GATT protocol may be used with SDs 1 16 that utilize the iOS and Android operating system. GATT is one of the core protocols of Bluetooth 4.0 Low Energy specification. The HU 1 14 is connected to an audio system 1 15.
[0089] Figure 1 1 illustrates an example of a message sequence chart to establish a bidirectional administration link. By way of example, there are 4 basic modes a BLE enabled smart device can operate - master device mode, slave device mode, advertising mode, and scanning mode. An advertising mode is used by the HU 20 to periodically advertise information that can be used to establish a link. For example, the HU 20 periodically transmits advertisement packets 1 102 over the advertising channel(s). When the SEEC APP 16 on the smart devices 10 is opened or when a user enters a remote control command 1 104, the SD 10 initiates an advertisement search sequence 1 106. In the AD search sequence 1 106, the SD 10 begins monitoring the advertisement channels for advertisement packets from a HU 20. When the SD 10 sees/detects an advertisement packet 1 102 from a HU 20 associated with the SD 10, the SD 10 responds by transmitting an advertisement acknowledgement 1 108 over the advertising channels. The HU 20 detects the advertisement acknowledgement.
[0090] During advertising, the HU 20 transmits advertising packets over of the available designated, advertising channels in a predetermined channel hopping manner and at a predetermined rate, such as at a rate from 20ms to every 10 seconds depending on the configuration. When an advertisement search sequence is initiated, the scanner SD 10 is configured to search for advertising packets in scan windows 1 1 10 (e.g., the amount of time that the HU 20 or SD 10 looks for advertisement packets) and a scan interval (how often in between scans). Once the HU 20 detects an advertisement acknowledgement 1 108, the scanner HU 20 supplies the advertiser SD 10 with connection related information 1 1 12, namely the connection interval and slave latency. The connection interval is used to determine the start time of connection events 1 1 14. A connection event 1 1 14 is the exchange sequence of data packets. The other parameter, the slave latency is the amount of connection interval a slave device can ignore without losing the connection. This is done to improve power consumption.
[0091] The HU 20 also informs the SD 10 of which data channel(s) to begin data packet exchange over to establish a communications connection link. After the link is established, communication is carried out over the 37 data channels. Each data packet represents a packet data unit that comprises up to 37 bytes of payload, along with a packet header, and a Message Integrity Check. A communications event is initiated by a master device (SD or BU) with communications alternating between master/slave until one of them stops transmitting.
[0092] In accordance with the BLE protocol, the HU 20 can also use the advertise mode to respond to additional queries from another smart device.
Scanning mode is used by the HU 20 to capture advertise packets transmitted from the one or more SDs 10. Slave and Master Modes are used once a link has been established between one SD 10 and a HU 20, and allow the SD 10 and HU 20 to read, write, and query each other. The HU 20 that starts out in Advertise Mode may assume the slave device mode and conversely the SD 10 that is initially in the scanning mode may assume the master device mode.
[0093] In accordance with the BLE protocol, there are 2 primary types of packets that may be transmitted between the SD 10 and HU 20, namely data and advertise packets, each with variable lengths. For example, the data packets may comprise an 8 bit preamble, 32 bit access codes that are defined by the RF channel used, a variable PDU ranging from 2-39 bytes and a 24 bit CRC. Hence, a data packet may be as small as 80 bits or as long as 376 bits. As the data packet length changes, the transmission time also changes. For example, a transmission time may range from 80microseconds to 0.3milliseconds.
Advertise packets on the other hand, have PDU containing a 16 bit header and up to 31 bytes of data.
[0094] In accordance with the BLE protocol, the HU 20 and SD 10, or multiple SDs 10 may associate with one another in three different manners, generally referred to as Just Works, Out of Band, and Passkey Entry. An advertising SD transmits packets on the advertise channels with a packet data unit (PDU) containing the device address and up to 31 bytes of additional information. A scanning HU 20 is able to see the address, within the
advertisement packet, and depending on the advertiser SD 10, the HU 20 may request additional information that is then sent from the MD 20. Accordingly, in optional embodiments, the system may exchange large amount of information from the SDs 10 to the HU 20 through the advertisement channel without establishing a communications connection session over the data channels.
[0095] The BLE protocol stack is partitioned into a controller and a host. The controller handles the lower layers of the stack responsible for capturing physical packets and the RF used by the radio. The host handles the upper layers of the stack; they include the application, attribute protocol, and L2CAP. The host and controller can be either collocated or the host can run in the application processor with the application. In the second option, a hardware controller Interface (HCI) is used by the controller and host to communicate. The controller communicates with the Logical Link Control and Adaptation Layer (L2CAP) protocol via the HCI or directly if collocated. The main function of the HCI is to provide data services to the upper level layers and for multiplexing and segmenting packets into fragments for the controller. The HCI also reassembles packets from the controller before they are routed to the upper level layers.
[0096] The Generic Access Profile (GAP) is responsible for defining generic procedures that are used in the pairing and linking of the HU and MD. The GAP is the interface for the application layer to implement the different Bluetooth modes (Advertising, Scanning, etc.). The Security Manager (SM) is used for authentication and encryption and uses AES- 128 bit encryption engine to do so and is also responsible for pairing and key distribution. This component is used by the Master device to ease the computing demands of security on the Slave device. The Attribute protocol is a communication method designed to optimize transmission of small packets. ATT are pairs of attributes and values that can be used to read, write, or discover by other devices.
[0097] Another component is the Generic Attribute Profile (GATT) it is responsible for describing the different service frameworks and is an extension to ATT that is specific to Bluetooth LE4.0. It interfaces with the application layer through the application profiles. Each application profile defines data formatting and how it should be interpreted by the application. Profiles improve on power efficiency by reducing the amount of data being exchanged.
[0098] The BLE or similar protocol, utilized to communicate between the SDs 10 and HU 20 achieves increased power efficiency. First, a lower duty cycle is used, such that the SDs 10 go to sleep for longer periods of time and wake up less frequently to send or receive packets as compared to classic Bluetooth and other protocols. Second, using the GATT profiles allows the SDs 10 to send smaller data packets (expose state) (relative to classic Bluetooth) in short bursts to save on power. Data transmission sessions can be triggered by a local event, such as an input by the user of the SD 10, and is available for an SD user to access at any time. The administration link utilizes communications sessions having a data transfer defined length. The length of each communications session is dependent and defined by an amount of active data transfer. The SDs 10 do not maintain communications sessions or links with the HU 20 or other SDs 10 whenever the SD 10 is not actively performing exchange of data. When the SD 10 ceases to transmit or receive data packets for a predetermined period of time (e.g., 5 sec, 20 sec, 30 sec), the SD 10 goes to sleep and ends the communications session or link. A link is rapidly re-established upon the next communication exchange (e.g., when the user opens the SEEC APP or selects an RC command. [0099] Figure 9 is a schematic representation of an embodiment showing simultaneous connections with multiple SD 410A-410C. The SD 410A-410C may utilize the same or different operating systems. For example, a subset of the SD 410A-410C may utilize the iOS operating system, and another subset of the SD 410A-410C may utilize the Android™ operating system. The SD 410A- 410C that utilize the iOS use a GATT protocol for the bidirectional link 412, while the SD 410A-410C that utilize the Android™ OS use the SSP protocol for the bidirectional link 412. The GATT (iOS) and SPP (AndroidTM) wireless communication technologies used in the embodiment are representative of types of communication that may be applied. A wide variety of other wireless communication technologies may be applied in alternative embodiments.
[00100] The system 402 is configured to permit easily switching the remote control and audio streaming operation from one SD 410A-410C to another by utilizing a setting feature in the SEEC APP 416A-C. The SEEC APP 416A may operate in automatic mode or in a responsible. When the setting is in the automatic mode, any requesting idle SD 410A-410C is automatically accepted and connected to the home unit 420. In order to stream audio through another "idle" smart handheld device 410, the idle smart device 420 sends a request to stream audio to the wireless HU 420 which in turn forwards the request to the active smart device. When the active smart device 410 denies the request, the wireless HU 420 sends a denial message to the requesting idle smart device 410 and the active smart device 410 continues to stream music to the wireless HU 420 and finally to the audio system 440.
[00101] When the active smart device 410 accepts the request or does not respond to the request in a timely manner, an acceptance is forwarded to the idle smart device 410 through the wireless HU 420. The existing audio streaming connection is terminated and a new audio streaming connection is initiated between the requesting "newly activated" smart handheld device and the wireless audio receiver. The system 402 may also hand off links between SDs 410 A-C in accordance with the method of Figure 14. [00102] When the setting is in response mode, the control of the home unit 420 operates in accordance with the flow management illustrated in Figure 10.
[00103] FIGURE 10 illustrates a flowchart 500 of a process for managing audio/video streaming communications exchange and priority for multiple SD 410A-410C in accordance with an embodiment. In case of multiple smart handheld devices being used as remote control and audio streaming devices for the home unit 410 connected to an audio system 440, beginning at 502, bidirectional communication (e.g. over an administration link 412A-412C) is established between all SD 410A-410C and the home unit 420. In the exemplary embodiment, only one active SD 410A-410C is permitted to establish an audio streaming link 414B with the HU 420 in order to stream music or other
audio/video content to the audio/video system 440. At 502, and SD 410B begin streaming music to the HU 420 over the streaming communications link 412B. At 504, another SD 41 OA sends a request to the HU 420 (e.g. over the
administration link 412A) seeking to establish a streaming A/V communications link 414 with the HU 420.
[00104] At 506, the HU 420 sends a streaming transfer permission request (over the administration link 412B) to the active SD 410B to request (from the SD 410B) permission to transfer A/V streaming functionality to the SD 41 OA.
[00105] At 508, the active SD 410B determines whether to grant permission to transfer the streaming functionality from the SD 410B to another SD, such as SD 41 OA. The determination may be performed automatically or manually. For example, the SD 410B may have a user-entered setting chosen within the SEEC APP 416B such that the SD 410B will automatically grant or deny requests to transfer streaming functionality. The user may change the setting through the SEEC APP 416B. Optionally, the SEEC APP 416B may prompt the user, each time a request is made at 508, with the user deciding whether to grant the transfer.
[00106] When transfer is granted, flow moves to 510; otherwise flow moves to 516. At 510, when transfer is granted by the active SD 410B, the HU 420 initiates a streaming transfer routine. In the streaming transfer routine, at 510, the HU 420 and SD 41 OB disconnect the streaming communications link 414B. At 512, the HU 420 and SD 41 OA establish a streaming communications link 414A by opening an audio/video streaming channel. At 514, the newly activated SD 41 OA begins streaming audio and/or video over the link 414A.
[00107] Returning to the decision at 508, when the SD 41 OB determines to deny access by the requesting idle SD 41 OA, flow moves to 516. At 516, the HU 420 sends a rejection message (over the administration link 412A) to the requesting idle SD 41 OA and the process ends. The process of Figure 10 may be repeated each time an SD 410A-C makes a request for access to stream A/V content.
[00108] Figure 14 illustrates a message sequence chart for managing transfer of communications between multiple SDs 410B-C and a common home unit 420. In Figure 14, the vertical lines denote the source/destination (e.g, SD 410B, SD 410C, HU 420) with time progressing from top to bottom in Figure 14. Breaks are illustrated in each vertical line to denote different communications sessions or alternative methods for managing transfer.
[00109] Beginning at communications session 1410, in the upper left portion of Figure 14, the SD410B and home unit maintain an administrative link 1412 and streaming link 1414. In one embodiment, when an administrative link 1412 is maintained with one SD, the home unit 420 ceases/terminates
advertising operations while the link 1412 is maintained. Hence, while the link 1412 is maintained, other SDs (SD 410C) cannot "find" the home unit as no advertisements are produced over any advertising channel.
[00110] During a separate communications session 1420, the SD 410B may be streaming audio/video to the home unit 420 over the streaming link 1414, without maintaining an administration link. Hence, during communications session 1420, the home unit 420 periodically transmits advertisements 1416 over the advertising channels. The SD 410C receives the advertisement 1416 and replies with an advertisement acknowledgment and request 1418 to initiate an administration link with the HU 420. Given that the HU 420 is not currently maintaining an administration link, the HU 420 coordinates with the SD 410C to initiate administration link 1422. In this manner, during session 1420, the HU 420 maintains a streaming link 1414 with SD 410B and an administration link 1422 with SD 410C.
[00111] During communications session 1430, the SD 410B and home unit 420 maintain an administration link 1432 and streaming link 1434. As an alternative embodiment, the home unit 420 may be configured to broadcast advertisements 1436, even while maintaining administration and streaming links 1432 and 1434. In this alternative embodiment, the SD 410C is able to find the home unit 420, even while the home unit 420 maintains administration and streaming links 1432 and 1434. Once the SD 410C receives advertisement 1436, the SD 410C returns an advertisement acknowledgment and request 1438 seeking to initiate an administration and/or streaming link.
[00112] The HU 420 may handle the acknowledgment and request 1438 in various manners. For example, the home unit 420 may ignore the
acknowledgment and request 1438. Alternatively, the home unit 420 may automatically grant the acknowledgment and request 1438 by terminating the administration and streaming links 1432 and 1434 with SD 410B. The dashed line 1433 denotes termination of the links 1432 and 1434 to end session 1430. As a further alternative, the home unit 420 may query the user of SD 410B to determine whether to grant permission to transfer the communication session to SD 410C. When the user of SD 410B grants permission to transfer
communication, the session 1430 is terminated by the HU 420 and session 1440 is initiated in which the home unit 420 begins to receive streaming audio/video over link 1444 from the SD 410C. During session 1440, the home unit 420 and SD 410C also pair to initiate administration link 1442.
[00113] In accordance with embodiments herein, the administration link protocol utilizes very low power as compared to classic Bluetooth. The power consumption at the SD is dependent on the SD transmit time and number of sessions. As an example, SD's may utilize a transmit time of up to 50ms, and more preferably approximately 10-25ms, to establish a communications session, transmit user selected remote control instructions, and after a select period of time disconnect the communications session.
[00114] Optionally, the SDs 10 and HU 20 may be configured to encrypt communications there between over the communications link 12 and/or streaming link 14. Various encryption methods may be used. For example, when the BLE or classic Bluetooth protocols are utilized, the encryption methods provided within BLE or classic Bluetooth may be used.
[00115] Optionally, encryption may be an upgrade offered through a firmware upgrade after installation of the HU 20. For example, the HU 20 and SEEC APP on one or more SDs 10 may be set up in a home and at a later date, it may become desirable to add encryption. To do so, a firmware upgrade may be pushed to the SD 10 (or sent by email to a user). The SD 10 that in turn ports the upgrade to the HU 20. Alternatively, the SD 10 and/or HU 20 may
periodically check for upgrades over an Internet link, or a cellular link with a network server located in the Cloud. An upgrade then may be downloaded.
[00116] Figure 12 illustrates a format that may be utilized in connection with setting and maintaining individual user configurations. When a home unit 20 is initially set up in an entertainment environment, user configurations 1208 are programmed by the user. During set up, the user enters the different types of audio/video equipment within the environment, among other things. In addition, the user has the option to customize the presentation of the input indicia (e.g., slide bars, buttons) displayed on the SD in connection with each audio/video device. For example, for a cable set top box, the user may desire certain input indicia, such as buttons to be displayed on the user interface of the SD in a select presentation, such as in a select combination, arrangement and
orientation. The user may desire a different combination of buttons and/or different arrangement or orientation of buttons to be displayed on the user interface of the SD in connection with an audio receiver, as well as a different combination, arrangement or layout of buttons for a television. Further, different users within a single entertainment environment may prefer different
combinations, arrangements or layouts of buttons for a common RCD. For example, a left-handed person may desire one configuration of buttons, while a right-handed person desires a different configuration. As a further example, a parent may desire one combination, while children desire a different
configuration. Similarly, husbands and wives may desire different configurations of buttons.
[00117] During set up, each user is afforded the opportunity to customize the positions of the input indicia, as well as which combinations are displayed in connection with each device to be remotely controlled. In accordance with at least one embodiment, a display of the SD is virtually segmented into a table having rows and columns were each cell within the table of rows and columns defines an associated area on the display of a smart phone. For example, if the display is divided into five virtual columns and eight virtual rows, then 40 potential discrete cells exist on the display at which input or output indicia may be displayed. The input indicia may include virtual or soft buttons and slider bars associated with select commands or macros; icons associated with RCDs, macros or service providers (e.g., iTunes, Netflix, etc.), other functional operations (music library, etc.) and the like. The output indicia may include information regarding RCDs, the HU, the SD and the like. The output indicia may present video or text in windows, graphs, program lists, program related information (e.g., description of program, length, actors, etc.), and the like.
[00118] For example, cell number 1 may represent the upper left-hand corner of the display, while cell number 5 represents the upper right-hand corner, cell number 35 represents the lower left-hand corner and cell number 40 represents the lower right-hand corner. The user may select various
characteristics in connection with input indicia, such as the name to be displayed for a button, the type of button relative to the device to be remotely controlled, the button color, the shape and the like. In addition, a unique IR code is associated with each input indicia based upon the type and function assigned to the button relative to the device to be remotely controlled.
[00119] Optionally, the user may program macros to be implemented in response to selection of a single input indicia. For example, a macro may include a series of instructions to turn on multiple remotely controlled devices in a select order. For example, by pressing a single button, the user may activate a macro that turns on a TV, a Cable set top box and an stereo receiver. The macro may also instruct the receiver to turn its input to the connection coupled to the cable box or TV, and instruct the TV to turn its input to the cable output.
[00120] As illustrated in Figure 12, each home unit 20 is assigned a unique MAC address 1203, and user login (username and password). Each MAC address 1203 and/or username and password is uniquely associated with a record that stores various types of information associated with the corresponding home unit 20. The record may be stored locally on the home unit 20, within one or more SD, on a remote server, or at a storage location within the cloud.
Records are stored for every home unit 20 once a user has configured the home unit 20. The records may be stored at a common remote data storage, warehouse, network or within the cloud, and the like. Alternatively or in addition, the records may be stored locally, such as on the home unit 20, locally on another network computer within the home entertainment environment, on the users SD and the like.
[00121] When a user activates the application on an SD, the application first pairs with an HU and receives the MAC address of the HU. The SD then determines whether a user configuration is loaded in the SD associated with the MAC address of home unit 20 with which the SD has paired. When the SD does not have the user configuration associated with the home unit 20, with which the SD is paired, the SEEC APP seeks a correct user configuration set-up for the home unit 20 from a management server or other destination (e.g., over the Internet, Cloud, on the home unit 20 or elsewhere). To locate a valid user configuration, the SEEC APP sends a request that includes the MAC address of the home unit 20 to the appropriate destination (server, HU, cloud).
[00122] As shown in Figure 12, a record 1202 is stored in connection with each MAC address. Among other things, the record 1202 includes one or more user configurations 1204. Each user configuration 1204 may include information associated with the user for which the configuration was set up, such as the username, viewer profile, program guides and other demographics. The user configuration 1204 also includes button specific information 1206 in connection with each input indicia programmed by the user for each device to be remotely controlled. In the example of Figure 12, the buttons for user configuration #1 are only shown for a single device. Multiple sets of button specific information maybe stored in the user configuration #1 depending upon the number of devices that the user has configured the smart phone to control.
[00123] In connection with one device, the user configuration includes button specific information 1206, such as the button name, button type, color, IR code to be transmitted when the button is selected, button shape and location on the smart phone virtual grid. The button specific information 1206 may also include one or more macros to be implemented when the button is activated. By way of example, the location information may indicate the row and column of the cell or cells in which the input indicia is to be displayed. The same types of information, as illustrated for button number #1 may also be recorded for any desired number of additional input indicia #P.
[00124] Optionally, the program guide and other entertainment environment specific information may be stored in the user configuration, or elsewhere.
[00125] As explained above, a separate user configuration maybe set up for different members of the household, such as one configuration for the wife, one configuration for the husband, one configuration for various kids. Also, a separate configuration maybe set up for left-handed people, as well as for right- handed people. Inappropriate configuration is loaded when the corresponding smart phone is paired with the home unit 20. When multiple user configurations are recorded in connection with a single home unit, each user configuration may be associated with a particular smart phone, a particular user ID and the like.
[00126] Figure 13A illustrates a block diagram of a network 1300 for a distributed networking entertainment environment implemented in accordance with an embodiment. In Figure 13A, multiple home units 20 are illustrated, each of which has an associated entertainment environment 1320-1321 . The home units 20 represent a collection of home units that are sold throughout the United States and/or outside of United States to various independent individuals, businesses and the like. In one example, one or more cloud-based computing services 1302, workstations 1309, and/or enterprise servers 1303 may be established in connection with an install base of home units 20. The region 1304 generally denotes the Internet or Cloud. The cloud computing services 1302 and/or enterprise server 1303 perform all or any portion of the storage, user configuration and analysis functions described herein in connection with various embodiments. The storage, user configuration and analysis functions described herein may be divided between multiple servers, workstations, home units and the like.
[00127] By way of example, the network illustrated in Figure 13A may represent a metropolitan area or geographic region in which home units 20 and the SD application are provided. The metropolitan area or geographic area is serviced by one or more cloud computing services 1302 and/or enterprise server 1303. Optionally, the home units 20 maybe located within different zones of a single residence or business.
[00128] The cloud computing services 1302 and/or enterprise server 1303 communicate with one or more data storages 1306 that record various information that is utilized in connection with implementing embodiments herein. It is understood that the data storages 1306 are not limited to any particular structure, but instead merely refer to memories that are accessible from the internet and may store the various information described herein and that are searchable for the functions described herein. The data storage 1306 stores catalogues 1321 of IR codes for any known type/model of RCD, user profiles 131 1 , viewing traits 1315, and the like. The data storage 1306 stores records 1308 that may include, among other things, user configurations 1310, program guides 1319, and other information specific to individual home units and users. In addition, the data storage 1306 may store records 1308 that include universal or general template information 1317 (e.g, a universal set up template for a user interface, commonly used macros or functional sequences, and the like). The universal or general template information 1317 may be accessed by individuals (e.g., do-it-yourself) when setting up a new home unit 20, or may be used by service/installation professionals, such as in connection with installation of home units 20. A separate record 1308 maybe maintained in connection with each home unit 20. The record 1308 includes, among other things, customized user configurations 1310 that have been defined by users in connection with use of the corresponding home unit 20.
[00129] In the example of Figure 13A, a home unit #1 communicates simultaneously or at different times with smart devices SD1 -SD3. Home unit #2 communicates with SD4-5, while home unit #3 communicates with SD6. The network 1300 saves, in data storage 1306, user configurations associated with SD1 -SD6. As an example, SD1 and SD2 pair with HU1 at different times and utilize a common user configuration, while SD3 pairs with HU6 and uses a separate unique user configuration. Each user configuration is stored in the cloud, associated with a unique MAC address, or username and password (for the related HU) and a unique ID associated with the SD of the corresponding user.
[00130] During operation, when a particular smart device, such as SD2 pairs with the home unit HU1 , the SD2 determines whether the SD2 has, saved therein, a user configuration associated with HU2. If not, the SD2 or HU1 access the cloud, provide the HU1 and SD2 unique IDs and request a corresponding user configuration. The cloud computer services 1302 accesses the associated data storage 1306 based on the HU and SD IDs and returns the corresponding user configuration, and optionally other information such as viewing profile and the program guide. The returned user configuration, program guide, etc. are uploaded to the SD2.
[00131] A similar pairing operation is performed in connection with each SD when the SEEC APP is activated within range of a home unit. When an SD moves from one entertainment environment to another entertainment
environment, the SD pairs with a corresponding home unit when the SEEC APP is activated. For example, if SD2 moves from the environment 1320 associated with home unit #1 to the environment 1321 associated with home unit #2 (as denoted by the dashed lines in Figure 12), and the user opens the SEEC APP, a new pairing and user configuration download operation occurs. When SD2 moves to the environment 1321 supported by HU2, the SD2 and/or HU2 requests the user configuration information associated with HU2. If more than one user configuration exists in connection with HU2 (and environment 1321 ), the cloud computing services 1302 and/or server 1303 may query the SD2 user to select one of the user configurations. If only one user configuration exists for environment 1321 , the server downloads the single user configuration to SD2.
[00132] Each SD may maintain a current user configuration until the user configuration is replaced with a new user configuration. When an SD moves outside of an entertainment environment, the SD maintains the last or most recently downloaded user configuration. An SD only uploads a new user configuration when entering a new environment 1320-1322.
[00133] Optionally, an SD may store multiple user configurations, but only activate one user configuration at a time. In this example, the SD would maintain a limited local data storage, similar to data storage 1306, having a subset of user configurations for entertainment environments in which the SD has paired with HUs. Optionally, the HU may include a data storage storing multiple user configurations for the HU, as well as for entertainment environments associated with other HUs. [00134] Figure 13B illustrates a method for the network 1300 of Figure 13A to manage user configurations for smart handheld devices that communicate through home units to corresponding entertainment environments. At 1350, the method waits for a SEEC APP to be activated. If a SEEC APP has not yet been loaded onto the SD, then the method provides the SEEC APP to be loaded by smart handheld devices (SDs), where the SEEC APP enables the SDs to communicate remote control (RC) commands to corresponding home units that transmit IR codes to remotely controlled (RC) devices based on the RC
commands.
[00135] At 1352, upon activation of the SEEC APP, the SD begins to search for advertisements on the advertising channels from an HU. When an advertisement is found, at 1354, the SD and HU pair with one another as explained herein or in accordance with existing networking protocols. As explained above, the data storage 1306 maintain customized user configurations each associated with a corresponding home unit, the user configurations being set up by users based on individual user preferences. As explained in
connection with Figure 12, the user configurations comprise, among other things, a set of input indicia associated with a select RCD, at least a portion of the input indicia indicative of commands for the RCD; RC commands associated with the input indicia wherein the RC commands identify IR codes to be transmitted from the home unit to the RCD to instruct the RCD to perform one or more associated actions; and a user-designated presentation of the input indicia on the user interface of the SD.
[00136] At 1354, when a first SD pairs with a first home unit, the SD and/or HU determine whether the first SD has, stored therein, a first user configuration (UC) associated with the first home unit. When the first SD includes the first UC, flow moves along 1355 to 1362 where the UC is used until the SEEC APP is closed or times out.
[00137] At 1354, when the first SD does not include the corresponding UC for the first HU, flow moves to 1356. At 1356, the SD or HU sends a request for the first UC to an appropriate destination. For example, when the UCs are saved on the Cloud or an enterprise server, the request is sent to server 1303 and/or CCS 1302. The request may include a unique ID for the requesting SD and the HU (e.g., the HU MAC address).
[00138] At 1358, the method determines whether the server 1303 and/or CCS 1302 returns a UC corresponding to the HU. When a UC for the requesting HU does not exist, flow moves along branch 1357 to 1360. At 1360, the method loads the first SD with the first user configuration associated with the first home unit based on the determining operation. When a UC does not exist for the HU, flow moves along branch 1359 to 1362.
[00139] At 1362, the method enters a programming mode to permit the user to create a new user configuration associated with the associated HU and the SD. At 1364, once the new UC is created, the method forwards the UC, and HU MAC address and SD ID, to the data storage for indexing and storage.
Following 1364, 1360 and 1362, the method returns to the initial point where the method waits for the user to re-activate the SEEC APP.
[00140] In accordance with embodiments for Figures 13A-13B, the method further comprises, when the first SD moves to an entertainment environment associated with a second home unit and pairs with the second home unit, determining whether the first SD has, stored therein, a second user configuration associated with the second home unit; and loading the first SD with the second user configuration associated with the second home unit based on the
determining operation. In accordance with embodiments for Figures 13A-13B, the method further comprises storing the user configurations in a data storage in the Cloud and uniquely associating each of the user configurations with a MAC address of a corresponding home unit, requesting one of the user configurations based on the MAC address of the corresponding home unit. In accordance with embodiments for Figures 13A-13B, the method further comprises replacing the first user configuration with a new configuration each time the first SD moves to an entertainment environment associated with a new home unit and pairs with the new home unit. In accordance with embodiments for Figures 13A-13B, the loading operation is skipped when the determining operation determines that the first SD already has stored therein the first user configuration associated with the first home unit. In accordance with embodiments for Figures 13A-13B, the method further comprises, during setup, creating a plurality of first user configurations associated with the first home unit, each of the plurality of first user configurations associated with corresponding SDs from an equal plurality of SDs. In accordance with embodiments for Figures 13A-13B, the method comprises, during set up, entering a separate user interface for each of a plurality of different RCDs within the environment; and affording the user the option to customize the presentation of the input indicia displayed on the plurality of SDs in connection with each of the RCDs. The user-designated presentation may include a user designated combination and arrangement of the input indicia. The input indicia may include button specific commands and the first user configuration includes, for the button specific commands, at least two of button name, button type, color, IR code to be transmitted when the button is selected, button shape and location on the SD virtual grid, and one or more macros to be implemented when the button is activated. Separate user configurations may be set up for different members of a household, left-handed people, or right-handed people. Multiple user configurations may be recorded in connection with a single home unit, each user configuration may be associated with a particular smart phone.
[00141] Figure 15 illustrates a process implemented in accordance with an embodiment to learn unknown new IR sequences in connection with select commands. In certain environments, a particular remote control device may have commands associated there with, for which the IR sequences or codes are unknown. For example, the remote control device may be a very new type of TV, stereo, cable box and the like. For example, the remote control device may be relatively old and the IR codes associated there with may not be readily available in known data storages. In these and other scenarios, it may be desirable for the home unit to learn additional IR sequences or codes.
[00142] Beginning at 1502, the user direction the home unit to enter a learning mode. At 1504, the user designates the device to which the new code will apply, as well as the type, name and the like for the command associated with the new code. For example, the user may indicate that the new code is to instruct the particular model of television to switch its input source to a select input.
[00143] At 1506, the user points the device specific remote control (DSR C) at the home unit IR panel. The user presses or otherwise activates the button on the DS RC that corresponds to the select command. Optionally, the user may press a series of buttons or commands to be associated with a single select command. For example, during the learning mode, the user may turn on the television, change the input to HDMI three, adjust the volume to a desired level, as well as additional operations, all to be associated with a single command.
[00144] At 1508, the home unit senses the infrared sequence or sequences emitted by the DS RC. The home unit stores the infrared sequence or sequences in memory.
[00145] At 1510, the home unit analyzes the infrared sequence that was sentenced to identify characteristic information about the IR code therein. The home unit records the IR code that was identified locally in the home unit memory. When saving the IR code, the home unit links DIR code to the corresponding select command. Optionally, the home unit may catalog the IR code and command with a larger group of IR codes/commands. Optionally, the home unit may transmit the IR code and command remotely over a network, such as the Internet or cloud for storage and use with other home units.
[00146] At 1512, the user designates a button to be associated with the newly learned IR code and command. The home unit adds the IR code and command with an associated button to the user configuration of the SD currently paired with the home unit. Optionally, the SD may also add the IR code and command and associated button to the user configuration saved on the SD.
[00147] Figure 16 illustrates a method for collecting viewer behavior information, developing viewer profiles and providing recommendations based on the viewer profile. Beginning at 1602, the user activates the SEEC APP on the SD 10 and enters a series of commands sufficient to select a program for listening and/or viewing.
[00148] At 1604, the method records the user's selection in a local data storage maintained on the SD 10 and/or HU 20. For example, the method may open a viewer log to viewer behavior related information. The viewer behavior related information includes program related information such as, the program name, service provider, program type, genre, actor, director, and the like. The viewer behavior related information includes when the user begins to watch the program, stops watching the program, whether the user changes channels during the program, how long the user watches the program, how frequently the user watches/listens to the program (e.g., for series type programs), how often the user watches similar programs, whether the user records the program, and other behavior related actions of the user. The viewer behavior related information may also include information indicating an amount of attention the user affords to the program, such as whether the user performs other functions on his/her phone during the program. When a user performs other functions (e.g. checks email, holds a phone call, performs text messaging) during a program, this may indicate a lower or medium level of interest in the program. Upon completion of a program, the method stores the viewer log in one or more locations. For example, the viewer log may be stored locally on the home unit, on the SD, and/or uploaded to a network server (in the cloud or elsewhere).
[00149] At 1606, once the user completes listening/watching the program (or stops in the program prematurely), the method analyzes the viewer behavior related information. The analysis at 1606 may occur in near real time shortly after the user stops watching/listening to the program. Alternatively or in addition, the analysis at 1606 may occur at a later time. The analysis at 1606 may be performed by the SD, the home unit, by a remote server, a cloud based analytic module or elsewhere.
[00150] The analysis at 1606 studies the viewer's behavior based on the viewer related information and the program related information to develop viewing preference traits. For example, the analysis at 1606 may seek to identify program traits that are common to recent programs viewed/listened to by the user. The traits may include genre, actor, director, year, and the like. The traits may be weighted based on a number or percentage of past programs that satisfy the particular trait. For example, when the programs viewed are distributed between action, westerns, war movies or other genre, but 90% of the programs viewed star John Wayne, the actor trait may be weighted more heavily relative to the genre trait which may be weighted less heavily. The common traits are grouped, ranked and stored for form a corresponding viewer profile. In the event that an individual already has a viewer profile, then each time a new program is viewed, the viewer profile is updated with the new viewer trait information.
[00151] At 1608, the next time the user activates the SEEC APP on the SD 10, the method may provide one or more recommendations for potential programs of interest based on the viewer profile. As one example, the
recommendation(s) may be provided automatically upon activation of the app. Alternatively, the method may first receive a selection from the user and then provide more recommendations based on the current selection and the viewer profile. For example, if the user enters an indication of a desire to watch an action movie, the method may access a viewer profile associated with the user and action movies to provide recommendations for action movies that meet the viewer profile.
[00152] The methods described herein may implement various techniques for analyzing the program information and viewing behavior related information, including but not limited to the techniques described in US Patent App. Pub. 2013/0061259 A1 , titled Dynamic user interface rendering based on usage analytics data in a media content distribution system; US Patent App. Pub. 2013/006912 A1 , titled Streaming-Content Analytics; USP 8549550 B2, titled Method and apparatus for passively monitoring online video viewing and viewer behavior; US Patent App. Pub. 2012/0304209 A1 , titled System and method to increase efficiency and speed of analytics report generation in audience measurement systems; USP 8577996 B2, titled Method and apparatus for tracing users of online video web sites; USP 8457475 B2, titled Systems and methods for interactive program guides with personal video recording features; and US Patent App. Pub. 2013/0014137 A1 , titled User impression media analytics platform apparatuses and systems, all of which the complete subject matter is expressly incorporated herein by reference in their entireties.
System Overview for Managing Content from Multiple Providers
[00153] Figure 17 illustrates a block diagram of a system 1702 formed in accordance with an embodiment. The system 1702 includes one or more smart handheld devices (also referred to as SDs or mobile devices (MDs)). The SD 1710 communicates with one or more home units (HU) 1720, which in turn communicate with one or more audio and/or video remotely controllable devices (RCDs) 1730. The SD 1710 includes a user interface 1752 having inputs and a display. The user interface 1752 is configured to permit the user to enter commands to, among other things, remotely control the RCDs 1730.
[00154] The SD 1710 communicates with the home unit 1720 over at least two communications channels or links 1712 and 1714 that exhibit different basic characteristics. For example, one communications link 1728, may be referred to as an administration link, and is configured to support bidirectional
communication of non-streaming data content, while utilizing limited power, and affording a quick or short connect sequence to be followed in accordance with establishing a data connection session over one or more data channels. One example of a protocol that affords bi-directional, low power, quick
connect/disconnect characteristics is the Bluetooth low-energy protocol. [00155] The other communications link, may be referred to as a streaming link, and is configured to support at least unidirectional data streaming, with a level of power demand that may be higher than the level of power demand utilized by the administration link 1728. The streaming link 1714 may also exhibit a more involved connection sequence followed to establish a data connection session over one or more data channels, as compared to the connection sequence followed the administration link 1728. The streaming link 1714 also exhibits robust data transfer to allow reliable data streaming over mid-range distances. One example of a protocol that supports data streaming with the select network characteristics is the classic Bluetooth protocol.
[00156] The communications links 1712 and 1714 are utilized in connection with different types of data transmission between the SD 1710 and HU 1720. For example, the SD 1710 establishes a classic Bluetooth streaming link 1714 in connection with streaming audio and/or video content from the SD 1710 to the HU 1720. The SD 1710 establishes a temporary low energy BLE administration link 1712 with the HU 1720 in connection with conveying the remote control related command(s) to the HU 1720.
[00157] The administration link 1712 may also be used to enter commands, selections, management instructions, and otherwise information related to selecting content from multiple service providers and directing the system 1702 to stream the content to one or more RCDs 1730. For example, when the RCDs are televisions or monitors, and the content is video content, the administration link 1712 may be used to indicate the content of interest, select a provider from which the content should be obtained, and designate one or more televisions on which the content is to be displayed. The user may enter search criteria, select specific content (e.g., programs, games, video, songs), navigate between search or command windows through touch gestures on the SD 1726, through voice commands entered to the SD 1726, through motion gestures of the SD 1710 and the like. For example, the user may say "Find the movie 'McLintock'" or "Find movies that star "John Wayne"". In response the voice command is passed over one of the links 1728, 1714 to the HU 1720. The HU 1720 then conducts a search of multiple service providers for the select movie or movies starring the select actor, such as True Grit, The Cowboys, etc. In the event that the
TV/Stereo was playing when the user desired to enter a voice command, the user optionally may push a "mute" button on the SD 1726, the HU 1720 or elsewhere, after which the user may state a desired search criteria or selection from a list of program options.
[00158] The HU 1720 includes at least one transceiver 1722 that supports one or both of the administration and streaming links 1712 and 1714. For example, a Bluetooth transceiver 1722 may be used to establish a BLE administration link 1712 in connection with remote control related operations. For example, the Bluetooth transceiver 1722 receives data packets over the link 1728, and extracts data from the data packets. The Bluetooth transceiver 1722 then passes the data to the microprocessor 1724. The microprocessor 1724 "unpacks" the data and determines whether the data includes remote control (RC) commands intended for the A/V RCDs 1730. When the data includes RC commands intended for the A/V RCDs 1730, the microprocessor converts the RC commands to a corresponding IR code designating a select IR pulse sequence.
[00159] The HU 1720 includes, within an IR transmitter subsystem 1726, an LED array 1735. The LED array 1735 comprises LEDs arranged in at least one row and/or at least one column. The IR code is conveyed from the microprocessor 1724 to the IR transmitter subsystem 1726. The IR transmitter subsystem 1726 drives the LED array 1735 to cause the LEDs to generate IR signals including the corresponding IR pulse sequence. The LED array 1735 transmits a corresponding number of IR signals 1736 as an IR cluster 1734 having the common/same select IR pulse sequence. The IR signals 1736 propagate in multiple directions and at multiple angles from the LED array 1735. The IR signals 1736 may propagate in a direct line of sight to an IR receiver at one or more of the AV RCDs 1730-1732. Optionally, one or more of the IR signals 1736 may contact other structures within the entertainment environment and be redirected or reflected in other directions such that the IR signals 1736 bounce off multiple structures in the entertainment environment before reaching an RCD 1730. The redirection/reflection of the IR signals 1736 increases the likelihood that one or more of the IR signals 1736 is received by each of the AV RCDs 1730-1732.
[00160] The HU 1720 also includes a stereo audio and/or video (A/V) output coupled to an audio and/or video system 1740 over in AV line 1744. The audio/video system 1740 is coupled to one or more speakers 1742 and/or a television or other display.
[00161] The SD 1710 conveys streaming audio and/or video content over the classic Bluetooth streaming link 1714 to the Bluetooth transceiver 1722. The Bluetooth transceiver 1722 receives and unpacks the streaming audio/video data and passes such data to the microprocessor 1724. The microprocessor 1724 then routes the audio/video data to the A/V output 1728 that then passes the audio/video data to the system for presentation to the user.
[00162] Optionally, the structure and functionality of the HU 1720 may be integrated into one or more RCD 1730.
Content Streaming Infrastructure
[00163] The system 1702 is configured to facilitate user selection of content of interest from multiple service providers. For example, the service providers may include local and/or national broadcast networks that are available through an over the air network and one or more RF antenna (e.g., NBC, CBS, ABC, PBS, etc.), cable providers (e.g., Charter, Comcast, Time Warner, MediaCom, AT&T, DirectTV, Dish Network, etc.), on-line service providers (e.g., Hulu, Netflix) and on-line subscription services offering on-demand streaming video. Video content may include, but is not limited to, TV shows, movies, webisodes and other new media, trailers, clips, and behind-the-scenes footage, and the like.
[00164] The HU 1720 further includes one or more transceivers 1776, memory 1778, a service provider (S/P) input/output interface 1780 and one or more RF antenna 1782. The antenna 1782 may be a high definition (HD) antenna. The antenna 1782 transmit and receive OTA content at the direction of the transceiver(s) 1776. The S/P interface 1780 affords a wired or wireless access point to one or more different types of service providers. For example, for service providers that provide content over the Internet, the S/P interface 1780 represents a link to the Internet (e.g., a gateway, router, etc.).
Alternatively, for service providers that provide a cable set top box and/or cable modem to the user, the S/P interface 1780 represents a connector configured to be coupled to the cable provider's cable set top box and/or cable modem. When the service provider is a satellite company (e.g., DirectTV or Dish Network), the S/P interface 1780 represents a connector configured to be coupled to the satellite company's equipment coupled to the local satellite dish. The S/P interface 1780 may represent a coaxial cable connector, an RJ-45 connector and the like. The HU 1720 may include a microphone 1783 to facilitate entry of voice controls, a user interface 1785 to permit the user to directly enter commands, search criteria, selections and the like. The HU 1720 may also include imaging sensors 1787 directed into an area proximate the HU 1720 to detect motion, such as motion gestures. For example, the motion gestures may be sensed by sensors 1787, similar to offered by an Xbox Kinect system, to permit a user to control the HU 1720 without using an SD 1710 or the user interface 1785. A user may make predefined gestures, in combination with information/feedback displayed on a TV or other RCD 1730. For example, the user may move his/her hands in open space in view of the imaging sensors 1787 such as to virtually type search criteria that are displayed on a TV or other RCD 1730, select menu entries, "swipe" windows to the left/right, "scroll" through a list of potential matching candidates and the like. For example, the gestures may be sensed and processed in accordance with the processes described in one or more of the following: US Patent 8,657,863 titled "Action selection gesturing"; and/or USSN 20100199228 titled "Gesture Keyboarding", the complete subject matter from both of which are expressly incorporated herein in their entireties.
[00165] Figure 17 further illustrates an "active" over-the-air (OTA) intelligent antenna home unit (smart AHU) 1784 that is configured to receive over-the-air broadcast transmissions, such as from local or national over-the-air broadcast networks (e.g., ABC, CBS, NBC), as well as non-OTA content. The OTA antenna may be a high definition (HD) antenna. The smart AHU 1784 is permanently or detachably coupled to a transceiver (also referred to as an adapter), which represents a distribution hub 1775. The Smart AHU 1784 includes a controller 1786 and memory 1788. The controller 1786 may manage reception and reformatting of incoming OTA content. The memory 1788 may temporarily store the OTA content while being reformatted into a data packet format for
retransmission from the distribution hub (transceiver) 1775 to the HU 1720, the RCDs 1730, the router 1732 and the like. The HU 1720 may communicate bi- directionally with the controller 1786 over the wireless communications link established between the WNA 1774 and the transceiver 1776.
[00166] The Smart AHU 1784 provides a wireless connection with the HU 1720, the SDs 1726, router 1732 and RCDs 1730, and as such may be easily located anywhere in the home within the wireless range of the transceivers 1776 and the distribution hub transceiver(s) 1775. For example, the Smart AHU 1784 may be located in an attic, an upstairs room, in a different building from the HU 1720 and/or RCDs 1730, in the same room as the HU 1720 and/or RCDs 1730 and the like. The Smart AHU 1784 may have a power cord to be plugged into an outlet, or alternatively maybe battery powered. [00167] The transceiver(s) 1776 and 1775 provide wireless communication with the WNAs 1774 in order to stream audio and/or video content to the RCDs 1730. The memory 1778, 1788 stores, among other things, audio and video OTA and non-OTA content before wireless transmission to the select one or more RCDs 1730. The memory 1778, 1788 may also store program guides for various service providers, as well as user analytics such as user past choices and/or preferences, user viewing history and/or behavior, and the like. The transceiver(s) 1776, 1775 convey content to one or more select RCDs 1730. For example, the user may designate a first TV to receive a sporting event, and designate a second TV to receive a movie.
[00168] The HU 1720 and/or AHU 1784 may simultaneously stream content from multiple service providers. For example, the HU 1720 and/or AHU 1784 may receive a movie from Netflix and stream the movie to a select first TV, while simultaneously receiving a sporting event from a broadcast network (e.g. CBS) and streaming the sporting event to a second TV, while simultaneously receiving another event from a cable or satellite provider (e.g. Dish Network or Charter) and streaming the event to a third TV.
[00169] The RCDs 1730 may represent home entertainment receivers, cable set top boxes, televisions (smart or traditional), electronic gaming systems (e.g., Xbox, Wii, PS3, PlayStation, etc.), Blu-ray players, DVD players, active speakers (e.g., speakers with a power amplifier therein) and the like. In the example of Figure 1 , particular components, such as an active speaker, TVs and an audio system are shown as examples, in addition to generic RCDs 1730. It is recognized that for non-powered speakers, an RCD 1730 may be attached thereto.
[00170] The RCDs 1730 have a wireless networking adapter (WNA) 1774 attached thereto. The WNA 1774 may be formed as a detachable device that is plugged into a port on the RCDs 1730. For example, the WNA 1774 may have the form factor of a USB stick that is plugged into a USB port on the RCDs 1730. Alternatively, the WNA 1774 may be formatted to plug into an SD port, HDMI port, A/V RCA jack ports, RGB component ports, an S-Video port, a fire-wire port, a Thunderbolt port, a DB-9 pin connector port, and the like. Alternatively, the WNA 1774 may be built within and integrated into the RCDs 1730 (e.g., a smart television), active antenna 1784, smart light 1774 and the like. As a further alternative, the WNA 1774 may be permanently secured to the RCDs 1730, active antenna 1784, smart light 1774 and the like.
[00171] The HU 1720, AHU 1784, router 1732 and WNAs 1774 may establish a master slave relationship with one of the HU 1720, AHU 1784, router 1732 and WNAs 1774 being designated as the master device. The WNAs 1774, HU 1720, router 1732 and AHU 1784 each have a unique ID that may be dynamically assigned by the network or the master device (e.g. one of the HU 1720, AHU 1784, router 1732 and WNAs 1774) at the time the HU 1720, AHU 1784, router 1732 and WNAs 1774 are registered with the system 1702.
Alternatively, the IDs may be assigned at the time of manufacture. At the time of initialization, the master device undertakes a registration sequence to identify each WNA 1774 within the entertainment environment. For example, the HU 1720 or AHU 1784 may under take the registration sequence as a master device. Optionally, the WNA 1774 may inform the HU 1720 or AHU 1784 of additional information regarding the RCD 1730 to which the WNA 1774 is connected. For example, the WNA 1774 may convey, to the HU 1720 or AHU 1784, the corresponding adapter ID, along with the type and/or model of RCD 1730 connected thereto.
[00172] When the user desires to stream separate content to more than one RCD 1730, the HU 1720 and/or AHU 1784 may define a separate data- streaming channel with each RCD 1730 to receive content. The HU 1720 and/or AHU 1784 may communicate uni-directionally or bi-directionally with the controllers in the RCDs 1730 over wireless communications links established between the WNAs 1774 and the transceiver(s) 1776 and/or 2196. The HU 1720 may use common or separate transceivers 1776 for each content streaming channel. The AHU 1784 may use common or separate transceivers for each content streaming channel. When the user desires to stream common content to more than one RCD 1730, the HU 1720 may still define a separate content streaming channel with each RCD 1730 to receive content.
Alternatively, the HU 1720 and/or AHU 1784 may define a multi-casting session in which multiple WNAs 1774 receive content over a common channel.
[00173] The structure and functions described herein for the AHU 1784 may be wholly or partially implemented within one or more HU 1720, and/or one or more AHU 1784.
[00174] The system 1702 further includes "smart" lighting devices 1790 that include a light illumination element 1792 housed in combination with an WNA 1774. The WNA 1774 permits the user through the HU 1720 to provide any functionality supported by the smart light, such as ON/OFF, dimming, color change, flashing and the like.
Content Selection & Management
[00175] The system 1702 is configured to permit the user to locate and select content without navigating any particular SP program guide or SP hierarchical menu structure. Instead, the system 1702 affords a SP diagnostic, content-based graphical user interface that combines and presents content options from multiple SP in a common window for viewing and selection.
[00176] Optionally, the HU 1720 and/or AHU 1784 may be coupled to one or more RCD's 1730 through cables that facilitate bidirectional communication. For example, the HU 1720 and/or AHU 1784 may supply commands to the RCD 1730 along the cable, while the RCD 1730 provides feedback in connection with device status (e.g., ON/OFF, states for certain features (Audio channel #1 Selected, Speakers A ON, etc.) and the like.
[00177] Figure 18 illustrates a block diagram of the various functional components utilized in accordance with embodiments to select content between the multiple service providers. Within Figure 18, the system 1702, formed in accordance with embodiments herein, interacts with multiple service providers 1802. The system 1702 accesses and obtains OTA and non-OTA content from the service providers 1802 over various distribution medium 1804. The distribution medium 1804 may represent RF transmissions (OTA networks), Internet or cable company infrastructures, satellite broadcast transmissions and the like.
[00178] The home unit 1720 and/or AHU 1784 interacts, over the various distribution medium 1804 to obtain program listings of the content available from each service provider 1802. The user enters information (also referred to as content search criteria) identifying content of interest at the user interface, such as the smart handheld device 1726. The user may enter information and selections that are provided to the HU 1720 and/or AHU 1784 through SDs 1726, voice commands, gesture commands and the like. An app 1732 running on the SD 1710 permits the user to enter the content search criteria. The content search criteria are conveyed to the HU 1720 and/or AHU 1784. The HU 1720 and/or AHU 1784 perform queries and searches of the various service providers 1802 for matches. In Figure 18, examples of potential matches are denoted at1812. For example when the user enters content search criteria related to a TV show or movie, the HU 1720 and/or AHU 1784 may identify a potential matching show 1814 that is offered by service provider #2. When the user enters content search criteria related to a sporting event, the HU 1720 and/or AHU 1784 may identify a potential matching game 1816 offered by SP #1 . When the user enters content search criteria related to a song 1818, album, concert, etc., the HU 1720 and/or AHU 1784 may identify a potential matching song, album, concert, etc. offered by SP #6.
[00179] The HU 1720 and/or AHU 1784 filters and sorts potential matches 1812 and formats the potential matches 1812 in a manner for presentation to the user. The potential matches may represent channels or an "in-app" purchase of a program from a per-per-view or on-demand service. The potential matches may be presented as a list, thumbnails, icons or in another manner on the display of the SD 1726. Once the user selects an individual source for the program, the HU 1720 and/or AHU 1784 establishes a communications link with the corresponding service provider and a streaming channel between the HU 1720 and/or AHU 1784 (and any intervening network components such as a router) and a designated audio or video device to present the content to the user (e.g. a television to display video, audio output device to play music and the like). When the user selects a particular service provider and program that require additional payment, the HU 1720 and/or AHU 1784 implements a payment sub- process. In the payment sub-process, the HU 1720 and/or AHU 1784 accesses prerecorded billing information provided by the user (e.g., credit card information, a PayPal account, etc.) in order to pay the SP 1802 for the select program. In this manner, the system 1702 affords an easy mechanism for paying the multiple service providers through a common interface. The system 1702 provides a shortcut for delivering content to the user, without the user needing to navigate a program guide for menu structure specific to each service provider. Optionally, the SD 1726, HU 1720 and/or AHU 1784 may be integrated into an RCD 1730.
[00180] Figure 19 illustrates a flowchart process carried out in accordance with an embodiment to provide content management and selection. The operations of Figure 19 may be implemented on an SD 1726, an HU 1720, an AHU 1784, as well as within an RCD that integrates the functionality of the SD 1726, HU 1720 and/or AHU 1784. Beginning at 1902, the user enters the name or other content search criteria of desired content of interest at an SD 1726. For example, the user may enter a beginning portion of, all of, or select keywords from a name of a program that the user desires to watch. For example, when the user desires to watch a movie, the user may enter all or a portion of the title, when the user desires to watch a select sporting event, the user may enter the team names, type of event and/or location of the event, among other things. When the user wishes to listen to a song, the user would enter a portion of the song name and the like. Optionally, the user may also enter a designation of one or more RCDs 1730 to display or otherwise present the content of interest.
[00181] Optionally, the user may enter other information (at an SD 1710 or other device that offers input functionality) to designate the desired content of interest. For example, the user may enter a type of movie, actors' names, a director or other information generally describing the movie or sporting event that the user desires to watch. As a further example, the user may enter, as search criteria, information related to the user's past viewing history in order to
designate a future program of interest. For example, the user may indicate a desire to view more movies like The Matrix or The Bourne Identity, more movies that star a select actor, and the like. The user may also designate series to watch, such as "30-FOR-30", The Americans, House of Cards and the like.
[00182] The SD 1726, HU 1720 and/or AHU 1784 may maintain analytics regarding a user's history, such as the names of programs viewed, types of programming preferred and the like. When a program is in a series, the SD 1726, HU 1720 and/or AHU 1784 may maintain a list of past episodes already viewed, and in future searches present the next un-viewed episode as the option for the user. In the event that the user designates a series to watch, the SD 1726, HU 1720 and/or AHU 1784 may maintain a record of prior episodes viewed and locate the next episode not yet viewed by the user. The SD 1726, HU 1720 and/or AHU 1784 may store a viewing history and based thereon the SD 1726, HU 1720 and/or AHU 1784 may offer recommendations. The SD 1726, HU 1720 and/or AHU 1784 may also store input from the user as to programs that the user likes and dislikes. Based on the likes and dislikes, the SD 1726, HU 1720 and/or AHU 1784 may offer recommendations.
[00183] At 1904, the method (e.g., SD 1726, an HU 1720 and/or AHU 1784) accesses one or more program guides of service providers. The method may also access other sources indicating programs available at various service providers for streaming to the user. For example, when Netflix or Hulu represent service providers, the method would access the related program guides, catalogs or other list designating the content available through Netflix and Hulu. When the service providers include a cable company, satellite broadcast company, over the air broadcast company and the like, the methods similarly access corresponding program guides, catalogs or other lists provided by each service provider.
[00184] The method (e.g., SD 1726, an HU 1720 and/or AHU 1784) then searches the program guides, catalogs, Internet meta-data, tags and list (herein collectively and inter-changeably referred to as programs, program lists, or program guides) for information that matches or correlates to the search criteria entered by the user at 1902. For example, the search may represent a simple term search of titles for a program the user desires to view, relative to the titles, actors, directors, genre and the like, within the program guides, catalogs and list of the service providers. Optionally, the search may include a search of metadata or other tags associated with the program guides, catalogs and list. By way of example, the searches for internet content may be conducted in accordance with the search processes described in one or more of the following patents and applications: US 7305380 titled "Systems and methods for performing in-context searching"; US 8032508 titled "System and method for URL based query for retrieving data related to a context"; US 8090723 titled "Index server architecture using tiered and sharded phrase posting lists"; US 7984035 titled "Context-based document search"; and/or USSN 20120265779 titled "Interactive semantic query suggestion for content search", the complete subject matter of which are all incorporated herein by reference in their entireties.
[00185] At 1906, the method (e.g., SD 1726, an HU 1720 and/or AHU 1784) determines whether a match (or multiple matches) has been identified between the service provider programs, catalogs and list and the information entered by the user. Multiple matches may exist when different service providers provide the same program, but at different times, on different stations or through different delivery medium (e.g. different cable providers, satellite versus over the air, streaming over the Internet and the like). Multiple matches may be found within the catalog of a single service provider, such as when a program is displayed at multiple times, in standard definition and high-definition, and the like. When the matches include content provided over the internet, multiple matches may arise from different service providers offering competing products.
[00186] As a further option, when the information entered by the user is not specific to a single program, the multiple matches may represent alternative or potential matches of different programs. For example, when the user enters a request for an action movie from a certain timeframe, multiple matches may arise, related to different movies. When the user designates a desire to view a sporting event between certain cities or colleges, the multiple matches may represent prior games between such teams, or games from different types of sports.
[00187] At 1908, the method displays the potential matches to the user, such as on the SD 1726, an RCD 1730 or other display. The potential matches may be displayed as a list that the user may scroll through. The list displayed may include the title, the service provider offering the program, the channel, the time at which the program starts (when the service provider presents the program at a select time) and the like. When a service provider imposes an additional charge for a program (e.g. pay per view), the amount of the charge may also be displayed along with the title and an indication that the program must be purchased. When the matches do not correspond to identical content, the method may rank or prioritize the different matches. For example, if the user enters a partial movie title, the method may prioritize different potential matching movie titles based on a similarity to the partial title entered by the user.
[00188] At 1910, the user selects an option from the display, such as selecting the service provider, channel and time for the program that
corresponds to the content of interest. The user may enter the selection by touching a corresponding item on a list displayed on their smart phone and the like.
[00189] At 1912, the method (e.g., SD 1726, an HU 1720 and/or AHU 1784) determines whether the selected program requires an additional payment from the user before the service provider will provide access to the content.
When an additional payment is necessary, the method may again query the user to confirm that the user desires to pay for the program. Optionally, this additional query may be skipped. Once the user agrees to pay for the content, flow close to 1914.
[00190] At 1914, the method (e.g., SD 1726, an HU 1720 and/or AHU 1784) accesses a payment record maintained for the user and submits the appropriate payment information to the service provider. For example, the SD 1710 may maintain a record with select credit card information, PayPal account information and the like. At 1914, the method accesses this credit card or PayPal information and provides it to the service provider.
[00191] At 1916, the method (e.g., SD 1726, an HU 1720 and/or AHU 1784) sends the request to the service provider (along with the corresponding payment information) and designates the select program to be viewed. The request may be constructed in various forms and include multiple iterative interactions between the method and the service provider or a single request, depending upon the service providers particular request protocol.
[00192] At 1918, the method (e.g., SD 1726, an HU 1720 and/or AHU 1784) establishes a streaming channel with the RCD 1730 that has been designated by the user and the HU 1720. The HU 1720 begins to stream the program from the designated service provider to one or more designated RCDs 1730. For example, a sporting event may be streamed from an Internet website to one or more TVs. A movie may be selected from Netflix and streamed to one or more TVs, one or more computer monitors, iPads and the like. Music may be selected from Pandora, Spotify or another music provider and streamed to a speaker or home stereo system.
[00193] Figure 20 illustrates an exemplary screenshot on the SD 1710 or RCD 1730 in accordance with an embodiment. The screenshot 2000 may be presented once the HU 1720 and/or AHU 1784 identifies potential matches to the search criteria. In the example of Figure 20, five potential matches 2002 have been identified and illustrated in a list format. The list includes all or a portion of each movie title 2004, an indicator designating the source service provider 2006 (e.g., DirectTV, Charter, FOX, Netflix), a time at which the program begins 2008. When the programs are provided on demand, an indication is provided in the column 2008.
[00194] In the example of Figure 20, four copies of the same movie (movie #1 ) were located, as well as one copy of a different movie (movie #2) that may potentially match the search criteria. The movie #1 was offered on demand (at any time) by SP 1 and SP3, but only at 8 PM by SP 2. From the four copies of movie #1 , the movie was offered by three different service providers, SP 1 - SP 3. Service provider SP 3 offers a copy of the movie on demand (e.g., at any time) for payment, as well as a copy of the movie on demand for free at a lower distribution quality. Indicia are indicated at 2014 to inform the user that a payment will be required to view the select program from that particular provider. Optionally, the payment indicia 2014 may be presented on a subsequent screen when the user selects the corresponding program entry. When a payment is required, an additional icon 2016 is provided (on this screen or a follow up screen). The icon 2016 is selected by the user to confirm their desire to buy the program. When the user desires to buy the program, the user may also be presented with options (on this screen or a later screen), to designate the payment source, such as a credit card on file, a PayPal account or otherwise. When program options are identified in the list 2002 that are below a certain quality, a quality indicator 2018 is provided to inform the user that the program quality of the transmission may be relatively low. Optionally, quality identifiers may be indicated in connection with every source (e.g. low, medium and high).
[00195] The window 2000 also includes other icons, such as a home icon 2020 to permit the user to return to a master home screen. The window may also include volume buttons 2022 and 2024 to turn the volume up and down for the RCD 1730 presently being controlled. The window 2000 may also include icons 2026 associated with specific RCDs 1730. The user may select one of the icons 2026 to designate a particular RCD 1730 on which the program should be presented. Optionally, the user may select multiple icons 2026 to designate that a common program be displayed on multiple corresponding RCDs 1730.
[00196] The SDs 1726, HUs 1720 and/or AHU 1784 may communicate using various protocols (e.g., WiFi, BLE, Classic Bluetooth and other protocols that support transmission of the commands, data and content of interest). For example, the SDs 1726, HU 1720 and AHU 1784 may communicate all or certain types of information there between using a WiFi protocol and utilize the
Bluetooth or BLE protocol to communicate all or certain types of information there between. For example, the BLE or similar protocol may be utilized to communicate command type data between the SDs 1726, AHU 1784 and/or HU 1720 to achieve increased power efficiency. Optionally, a lower duty cycle is used, such that the SDs 1710 go to sleep for longer periods of time and wake up less frequently to send or receive packets as compared to classic Bluetooth and other protocols. Optionally, the GATT profile may be used to allow the SDs 1710 to send smaller data packets (exposed state) (relative to classic Bluetooth) in short bursts to save on power. Data transmission sessions can be triggered by a local event, such as an input by the user of the SD 1726, and is available for an SD user to access at any time. The administration link utilizes communications sessions having a data transfer defined length. The length of each
communications session is dependent and defined by an amount of active data transfer. The SDs 1710 do not maintain communications sessions or links with the HU 1720 or other SDs 1710 whenever the SD 1710 is not actively performing exchange of data. When the SD 1710 ceases to transmit or receive data packets for a predetermined period of time (e.g., 5 sec, 1720 sec, 1735 sec), the SD 1710 goes to sleep and ends the communications session or link. A link is rapidly re-established upon the next communication exchange (e.g., when the user opens the App or selects an RC command.
[00197] Figure 21 illustrates a block diagram of a portion of the system 1702 of Figure 17 with a more detailed illustration of the smart AHU 1784 as formed in accordance with an embodiment. The SMART AHU 1784 enables users to remove dependence on physical cables as sources of entertainment content, also referred to as "cable cutters". The SMART AHU 1784 represents a wireless unit that includes one or more antenna 2193, a corresponding number of tuners 2195, a digital video recorder (DVR) 2197, a distribution hub 2175, a controller 2188 (corresponding to controller 1788) and memory 2186
(corresponding to memory 1786). The smart AHU 1784 enables reception and relay of OTA (Over-the-air) and non-OTA content. Examples of non-OTA content include but are not limited to Over-the-top or OTT content, internet protocol television (IPTV) content and the like. The memory 2186 may include an integrated hard drive for media storage. The SMART AHU 1784 represents an integrated solution, held within a single housing 2191 . [00198] In the embodiment of Figure 21 , the Smart AHU 1784 represents a stand-alone device that may be located anywhere within an entertainment environment within wireless communication range of the other devices (SD, HU, RCD) discussed herein. Optionally, the structure, hardware, software, circuits, features and functionality of the AHU 1784 may be implemented entirely within an SD 1726, HU 1720 and/or RCD 1730, or partially within one or more SD 1726, HU 1720 and/or RCD 1730.
[00199] The SMART AHU 1784 includes one or more low power, multichannel, high definition (HD) antenna, embedded with the ability to store, time shift, replay, watch (locally or remotely), and stream audio and video content received from broadcast (over-the-air OTA) or internet (OTT or IPTV) sources. The SMART AHU 1784 includes local and/or cloud-based content storage. The SMART AHU 1784 streams broadcast and/or internet content to RCDs 1730 such as exiting TV and home entertainment infrastructure. The SMART AHU 1784 maintains robust connectivity with the infrastructure (TV's & A/V equip) through one or more local wireless communications links, such as WiFi network.
[00200] The distribution hub 2175 maintains a wireless connection to the local router 2132 located in the home. The SMART AHU 1784 can be placed anywhere in the entertainment environment as the SMART AHU 1784 does not require a wired connection to an A/V device such as to be hooked directly to a TV. Users will be able to access the content on any of numerous interfaces, including but not limited to the following: iOS/Android - phone and tablet apps, Google Chrome Cast, Web browser, Apple TV, Roku, Amazon Fire, Samsung Smart TV, and the like.
[00201] The transceiver(s) 2196 provide wireless communication with the WNAs 1774 (Figure 1 ) in order to stream audio and/or video content to the RCDs 1730. The DVR 2197 stores, among other things, audio and video OTA and non-OTA content before wireless transmission to the select one or more RCDs 1730. The DVR 2197 may also store program guides for various service providers, as well as user analytics such as user past choices and/or
preferences, user viewing history and/or behavior, and the like. The transceiver 2196 conveys content to one or more select RCDs 1730. For example, the user may designate a first TV to receive a sporting event, and designate a second TV to receive a movie.
[00202] The AHU 1784 may simultaneously stream content from multiple service providers. For example, the AHU 1784 may receive a movie from Netflix and stream the movie to a select first TV, while simultaneously receiving a sporting event from a broadcast network (e.g. CBS) and streaming the sporting event to a second TV, while simultaneously receiving another event from a cable or satellite provider (e.g. Dish Network or Charter) and streaming the event to a third TV.
[00203] The SD 1710 communicates with the smart AHU 1784 over at least one communications channel or link 2192. The communication link 2192, may be referred to as a streaming link, and is configured to support at least unidirectional data streaming. The link 2192 exhibits robust data transfer to allow reliable data streaming over mid-range distances. One example of a protocol that supports data streaming with the select network characteristics is the classic WiFi protocol. Optionally, other communications links may be utilized in connection with different types of data transmission between the SD 1710 and SMART AHU 1784, the SD 1710 and the RCDs 1730 and the smart AHU 1784 and the RCDs 1730.
[00204] The communications link 2192 may also be used to enter commands, selections, management instructions, and otherwise information related to selecting content from multiple service providers and directing the AHU 1784, router 1732 or HU 1720 to stream the content to one or more RCDs 1730. For example, when the RCDs are televisions or monitors, and the content is video content, the communication link 2192 may be used to indicate the content of interest, select a provider from which the content should be obtained, and designate one or more televisions on which the content is to be displayed. The user may enter search criteria, select specific content (e.g., programs, games, video, songs), navigate between search or command windows through touch gestures on the SD 1726, through voice commands entered to the SD 1726, through motion gestures of the SD 1710 and the like.
[00205] The distribution hub 2175 includes at least one transceiver 2196 that supports one or more communication links. For example, a WiFi transceiver 2196 may be used to establish a WiFi communication link 2192. The SMART AHU 1784 includes one or more antenna 2193 and one or more associated tuners 2195. The SD 1710 conveys streaming audio and/or video content over the WiFi streaming link 2192 to the WiFi transceiver 2196. The WiFi transceiver 2196 receives and unpacks the streaming audio/video data and passes such data to the controller 2188, memory 2186 and/or DVR 2197. The controller 2188 then routes the audio/video data to one or more RCDs 1730 for presentation to the user.
[00206] The system 1702 may utilize a "freemium" model, whereby basic features will be available for free and premium features such as local storage on SDs 1726, remote access etc. would be optional for a recurring subscription fee.
[00207] A user content selection/management application (UCSM app 171 1 in Figure 17) operates on one or more SDs 1710 and is configured to operate the smart AHU 1784 to allow users to view OTA and non-OTA content on RCDs 1730 such as a TV, computer or mobile device. By way of example, the following features are supported in the UCSM app 171 1 . The UCSM app 171 1 includes a configuration process that walks the user through an initial setup. Part of the setup includes providing feedback to the user to help the user position the smart AHU 1784 within the entertainment environment that affords select signal strength to SDs 1710 through the entertainment environment. The UCSM app 171 1 includes a user tutorial process that includes a splash screen showing the user how to use the features in the UCSM app 171 1 . The UCSM app 171 1 further includes a traditional style (grid format and/or tile style format) TV guide, for which the TV guide data is provided by a guide service provided (e.g. Rovi). In addition, the UCSM app 171 1 provides various other features such as a custom content guide based on the user's favorites, one click channel changing, scrolling forward and back in time, the feature to sort based movies, genre, favorites, type (sports, drama) etc., and a search feature.
[00208] The UCSM app 171 1 includes a content manager that affords the user the ability to manage recordings a select period of time in advance (e.g., at least 2 weeks in advance). For a "series" recording, the content manager performs management functions based on how far into the future content timeline, the content manager has access. Optionally, the content manage may run content search scripts periodically (e.g., weekly) as future content becomes available. The content manager schedules recordings (single shows, series etc.) - from anywhere, facilitates playback of recordings (e.g., on a television, the a portable computer, a SD 1710 and the like), facilitates watching of live TV (OTA or OTT) (e.g., on a television, the a portable computer, a SD 1710 and the like), renders A/V content available offline for mobile devices (e.g., stored within the app so content is protected), redirects the content from the DVR to any other location designated by the user (e.g., to allow the user to access shows while traveling) and other features.
[00209] The UCSM app 171 1 includes a DVR manager that manages DVR settings (e.g., recording start and end times), limits for keeping shows etc., manages device settings (e.g., permitting the user to set content limits for children, etc.), that permits remote enablement/disablement of features (e.g., turn on/off features based on freemium model). The UCSM app 171 1 includes universal remote integration with a home unit as described in patent applications 14/489,085, filed September 17, 2014, entitled "METHOD FOR PROXIMITY BASED AUDIO DEVICE SELECTION", which is a continuation of 14/099,965, filed December 8, 2013, entitled "METHOD FOR PROXIMITY BASED AUDIO DEVICE SELECTION"; 14/489,21 1 , filed September 17, 2014, entitled
"METHOD FOR AUDIO RECEIVER TO SELECT AUDIO SOURCE FROM MULTIPLE TRANSMITTERS", which is a continuation of application 13/964,012, filed August 25, 2013, entitled "METHOD FOR AUDIO RECEIVER TO SELECT AUDIO SOURCE FROM MULTIPLE TRANSMITTERS"; and 14/251 ,027, filed April 27, 2014, entitled "ENTERTAINMENT ENVIRONMENT REMOTE
CONTROL AND AUDIO/VIDEO STREAMING METHOD AND SYSTEM", which is a continuation in part of applications 14/099,965 and 13/964,012 above, all of which are expressly incorporated herein by reference in their entireties.
Examples of OTT channels that may be offered include, but are not limited to, Bloomberg (http://www.bloomberg.com/); C-SPAN 2 (http://www.c- span.org/live/); HSN (http://www.hsn.com/watch/live); NASA
(http://www.nasa.gOv/multimedia/nasatv/index.html#.U5Yuq_ldV7E); Pentagon Channel (http://www.pentagonchannel.mil/LiveStream.aspx); UCTV
(http://www.uctv.tv/watch/) and the like.
[00210] The UCSM app 171 1 supports HU 1720 functionality for universal remotes so that the user can seamlessly integrate HU 1720 and the AHU 1784 with one app. The AHU 1784 provides a simple and direct version of the HU 1720 functionality. Instead of having the full remote for each SD 1726, the UCSM app 171 1 enables the user to create a custom remote with the buttons the user wants for any of the users devices. The user is able to add as many buttons as the user wants. Directional pads, rocker buttons and standard buttons are provided on the SD 1710 through the UCSM app 171 1 .
[00211] The AHU 1784 enables users to save shows locally on mobile devices (for trips, commutes etc.), watch live TV on up to multiple devices simultaneously, access content from a WiFi connection while traveling, recommend shows to users based on user history, one touch show recording, quick content sorting, and other features.
[00212] The integration of the HU 1720 functionality with the AHU 1784 allows the user to easily add all of the user's entertainment devices, to reliable WiFi connection, to setup multiple rooms (e.g., for people with more than one HU 1720), to quickly add all the buttons that users want on the remote from any of the devices, lets the user add as many buttons as the user wants from any of the previously picked and verified devices, allows the user to organize, rename and make macros out of these buttons.
[00213] Figure 22 illustrates a functional block diagram of a browse recording/DVR (BR) app, within the UCSM app 171 1 , formed in accordance with an embodiment. The BR app 2200 may be implemented on an SD 1726, HU 1720, a smart AHU 1784 and/or another device to enable the user to manage the DVR within the smart AHU 1784. The BR app 2200 implements various tasks based on user input 2202. For example, the BR app 2200 supports a watch task 2204 whereby the user is permitted to select content to be viewed either from the DVR or from an external source through the smart AHU 1784. The BR app 2200 further provides an edit recording settings task 2206, through which the user may edit various settings in connection with DVR recording. For example, the user may edit settings for selecting a television series, a channel, storage options, a number of episode a show, start and end times, synchronizing settings and/or content between the DVR and an SD 1726. The BR app further includes a scheduled/conflicts task 2208 that may, among other things, coordinate conflicts between schedule settings. A delete recordings task 2210 permits a user to delete content from the DVR. A storage information task 2212 monitors various conditions of the smart AHU 1784. For example, the task 2212 may monitor hard drive free space, full space, a percentage/number/time of "keep forever" recordings, a percentage/number/time of unwatched recordings held on the DVR a percentage/number/time of watched recordings held on the DVR, and the like.
[00214] A download show task 2214, upon request from the user, downloads content from the smart AHU 1784 to the users SD 1710 or another mobile device (e.g., a laptop computer, tablet device). The SD 1710 may store the content temporarily, such as for the user to view while traveling.
[00215] Figure 23 illustrates a logical flow for tasks implemented within the BR app 2200 and the smart AHU 1784. In Figure 23, operations implemented by the BR app are denoted in the column at 2301 and operations performed by the smart AHU 1784 are denoted in the column at 2303. When a user selects to browse the DVR at 2302, the user enters a request (at 2304) for a list of content stored on the DVR. The smart AHU 1784 processes the request at 2306 to access the select content from the memory of the DVR and the list of content is displayed at 2308. The user decides whether to watch content at 2310, after which the BR app determines at 2312 whether a recording is in progress. When a recording is in progress, flow moves to 2314 where the BR app determines where to start playback select content. At 2316, playback is started at a current location in content being broadcast (e.g., at a current point in a live TV program). At 2318, playback is started at the beginning of the select content.
[00216] Returning to 2312, when content is not being recorded, flow moves to 2320. At 2320, the BR app determines whether playback has already started (e.g., when the user previously selected the content, then stopped playback and is now reentering the BR app). If not, flow moves to 2318 where playback is started from the beginning of the content. If playback has already started at 2320, flow moves to 2322 where playback is continued/resumed.
[00217] At 2316, 2318 and 2322, the BR app opens an A/V output device (e.g., a player window on an SD 1710 or computer, a data streaming channel to a select RCD, a data streaming channel through a router to a select RCD and the like). The BR app then waits for the select content at 2328. Following 2316, 2318 and 2322, the smart AHU 1784 accesses the select content at 2324. At 2326, the smart AHU 1784 begins to stream data defining the select content to the BR app. At 2330, the streaming data content is displayed.
[00218] Returning to 2308, once the user is presented with the content on the DVR, the user may instead choose other tasks, such as to edit the recording settings (at 2332) or to delete one or more recorded content (at 2334). When the edit recording settings is chosen at 2332, the BR app opens one or more windows to permit the user to edit various record settings (e.g., the recording settings available at task 2206). Once, the user edits the record settings, the BR app passed the updated record settings to the smart AHU 1784. The smart AHU 1784 updates the DVR record settings at 2336.
[00219] At 2334, when the user chooses to delete a recording, the BR app passed a delete command and an identification of the content to be deleted to the smart AHU 1784. At 2338, the smart AHU 1784 checks the state of a current program (e.g., a current program being recorded or played back). At 2340, the smart AHU 1784 determines whether the content to be deleted is currently being played back. If so, the delete request is denied and a "failure" notification is passed to the BR app and displayed at 2342 to the user. When content to be deleted is not currently being played back, the delete request is accepted, the select content is deleted and a "success" notification is passed to the BR app and displayed at 2342 to the user.
[00220] Figure 24 illustrates a functional block diagram of a settings change (SC) app, within the UCSM app 171 1 , formed in accordance with an
embodiment. The SC app 2400 may be implemented on an SD 1726, the smart AHU 1784 and/or another device to enable the user to manage the DVR 257 and/or other aspects of the smart AHU 1784. The SC app 2400 receives inputs 2402 from the user and provides associated instructions and data exchange with the smart AHU 1784.
[00221] The SC app 2400 allows the user to set various settings, such as the country designator and/or zip code(s) 2404 which are then used to identify service providers for content, and wireless communications settings 2406 (e.g., WiFi settings). A channel discovery scan (CDS) task 2408 performs a scan through one or more available broadcast service providers to identify broadcast channels that are available. The CDS task 2408 also automatically determines a level of gain to be used by the automatic gain controller 254 in the tuner 255 in connection each broadcast channel.
[00222] A user settings recording quality (USRQ) task 2410 allows the user to set a quality level (high, medium, low) to be used in connection with recording content. For example, the user may direct the USRQ task 2410 to set a high level for recording quality for certain types of content, while setting a different level of recording quality for other types of content. It may be desirable to adjust the recording quality such as to utilize more/less storage space within the DVR 257 and/or to shorten/lengthen an amount of time utilized to complete a recording.
[00223] The SC app 2400 includes a storage information task 2412 that operates to change the settings associated with managing storage on the DVR 257. For example, the task 2412 may instruct the DVR 257 to only maintain a select percentage or number of recordings as "keep forever" or for an extended period of time. The task 2412 may instruct the DVR 257 to only maintain unwatched recordings until a select percentage/number/time of the storage space on the DVR 257 is full, and the like. The task 2412 may instruct the DVR 257 to only maintain watched recordings so long as a select
percentage/number/time of the storage space remains empty/open on the DVR 257. [00224] A premium service configuration (PSC) task 2414 maintains configuration settings that are enabled when a user subscribes to a premium service (e.g., pays for a subscription that offers added features). For example, the subscription services may represent access to OTT service providers, provide functionality to redirect stored content to a remote location or remote playback device and the like.
[00225] A version task 2416 maintains the version information for the app, any app operating on the SD 1726, and for the software/firmware operating on the smart AHU 1784.
[00226] Figure 25A illustrates an initial setup (IS) app 2500, within the UCSM app 171 1 , that may be implemented on the SD 1726, the HU 1720, the AHU 1784 or another computing device. The IS app 2500 includes various tasks, such as a location entry task 2503, a WiFi setting task 2505, a channel discovery scan (CDS) task 2507 and a premium service setup task 251 1 .
[00227] The location entry task 2503 enables the user to enter location information such as country, zip code, address and the like. The location entry task 2503 uses the location information for, among other things, to identify service providers that provide OTA content and/or non-OTA content to the geographic area in which the system 1702 is located.
[00228] The WiFi settings task 2505 manages network connection information used to access any local area network(s) (LAN) and wide area network (WAN). By way of example, the WiFi settings task 2505 enables the user to enter SSID(s) and passwords associated with a LAN for an entertainment environment.
[00229] The CDS task 2507 manages operation of the AHU 1784 in connection with performing scans for available OTA channels of the OTA broadcast network(s) within range of the AHU 1784. [00230] The premium service setup task 251 1 performs setup of premium services and manages the services available through the premium service. For example, the task 251 1 may identify additional service providers such as OTT and IPTV service providers.
[00231] Figure 25B illustrates a logical flow for the IS app 2500. In Figure 25B, operations implemented by a setup app are denoted at 2502, operations performed by the smart AHU 1784 are denoted at 2504, and operations performed by the app operating on the HU 1720 are denoted at 2506. Initially, when the IS app 2500 is opened, a scan is performed at 2508 to located one or more smart AHU 1784.
[00232] At 2510, the IS app 2500 determines whether sufficient information is already stored in the IS app 2500 to complete a connection to the AHU 1784. If sufficient information is already stored in the IS app 2500 to connect, then no further initial setup is warranted and flow moves along branch 251 1 to the home screen of the main application operating on the SD 1726. Otherwise flow moves to 2512.
[00233] At 2512, the user is prompted to connect to the AHU 1784, such as through the transceiver in the distribution hub. To connect to the AHU 1784, the user is prompted to enter at 2514 network entry information, such as the WiFi SSID and a password. At 2516, the IS app 2500 waits for the AHU 1784 to connect, while at 2518, the distribution hub directs the transceiver to connect to the local area network.
[00234] At 2520, the IS app 2500 instructs the AHU 1784 to perform an automatic channel scan of the OTA broadcast to identify available channels within range of the antenna. At 2524, a channel search is performed, in which the controller and/or the AHU 1784 manage the antenna and tuner to scan through all or a select range of the OTA broadcast frequency range. To perform the scan, the tuner may begin by tuning to a select potential frequency/channel and listening for a receive signal. When no receive signal is detected at the current potential frequency/channel, the tuner changes to a different potential frequency/channel (e.g., by decrementing or incrementing the receive frequency by a select increment). For example, the tuner may begin at one end (or a select intermediate channel) of a range of potential frequencies/channels. The tuner may then step through a series of potential frequencies/channels in even (or uneven) increments, while listening for a receive signal. The tuner may listen for a receive signal for a select period of time, and then tune to a new potential frequency/channel. The tuner or controller records each frequency/channel for which a receive signal is detected with sufficient signal strength to indicate an available channel over the OTA broadcast network.
[00235] While the tuner is tuned to each frequency/channel for which a receive signal is detected, the AGC may cycle through a range of potential gain levels until a receive signal strength or signal quality achieves a select level. For example, at each new potential frequency/channel, the automatic gain control may first set the receive gain at a relatively high level in order to detect relatively weak receive signals. When a receive signal is detected, the AGC then decreases the gain by select increments while listening to the receive signal at each gain level. Optionally, the AGC may adjust the receive gain upward and downward while monitoring the signal strength of the received signal. When a signal is received with a desired signal strength or signal quality, the
corresponding gain is recorded in connection with the frequency/channel. The tuner and/or controller records, in a list of OTA channel settings, each available channel and the corresponding gain level that affords a designed signal strength or signal quality. Once the channel scan is complete at 2524, the list of available channels is returned to the IS app 2500.
[00236] At 2522, the IS app 2500 displays to the user on the SD 1726, the results of the channel scan. For example, the results returned may include the list of available channels, the signal strength associated with each channel and the like.
[00237] At 2526, the IS app 2500 determines whether the channel scan was successful. For example, at 2526, the user may be prompted to indicate whether the available channels are acceptable, or instead whether the user wants to repeat the channel scan. At 2528, if the channel scan is not
successful/acceptable, flow returns to 2520 and the process is repeated. When the channel scan is successful/acceptable, flow moves to 2530.
[00238] At 2530, the IS app 2500 begins the initial setup of the HU 1720. At 2532, the HU 1720 is set up as explained herein and in the related
applications incorporated herein by reference.
[00239] At 2532, the IS app 2500 sets up any premium services for which the user has paid to subscribe.
[00240] Figure 26 illustrates a show discover (SD) app 2602, within the UCSM app 171 1 , that may be implemented on the SD 1726, the HU 1720, the AHU 1784 or another computing device. The SD app 2602 includes various tasks related to identifying content of interest, such as a genre task 2604, an actor search task 2606 and a recommendations task 2608. The genre task 2604 receives user inputs indicating a genre of interest and searches the program listings of available content in connection with each available service provider. The genre task 2604 identifies programs that match the genre of interest and displays a list of the genre matching programs. The genre task 2604 may also save, based on past user selections, genre preferences of the user.
[00241] The actor search task 2606 receives user inputs indicating one or more actor of interest parameters and searches the program listings of available content in connection with each available service provider. The genre task 2606 identifies programs that match the actor of interest parameter and displays a list of the programs that match the actor of interest parameter. The actor search task 2604 may also save, based on past user selections, actor preferences of the user.
[00242] The recommendation task 2608 monitors one or more users past program selections, past search parameters, viewing behavior and other information regarding the user's viewing preferences. The recommendation task 2608 searches the program listings of available content in connection with each available service provider. The recommendation task 2608 provides
recommendations to the user regarding programs that the user may find of interest. The SD app 2602 communicates with the AHU 1784 to provide stored, live OTA content, live non-OTA content and the like. The SD app 2602 communicates with one or more content listing services 2610 that maintain listings of programs on the various service providers. For example, the content listing services 2610 stores a program list for each OTA broadcast service provider, each non-OTA content service provider and the like.
[00243] Figure 27 illustrates a channel guide (CG) app 2702, within the UCSM app 171 1 that may be implemented on the SD 1726, the HU 1720, the AHU 1784 or another computing device. The SD app 1726 includes various tasks related to enabling the user to view a channel guide and select a channel to view.
[00244] The CG app 2702 includes a channel guide task 2704 that interacts with the user through the user interface of the SD 1710 to receive input from the user and present information to the user. The channel guide task 2704, among other things, collects channel guide data 2714 from one or more a content listing service 2712, such as Rovi Corporation. The content listing service 2712 provides entertainment data, such as lists of programs available from various service providers, as well as data analytics regarding user viewing behavior and preferences. The channel guide 2704 uses the guide data 2714 to inform the user of various options. Based on user selections, the channel guide task 2704 provides instructions and/or receives input from other tasks within the CG app 2702, such as from the custom guide task 2706, display live content task 2708 and DVR menu task 2710.
[00245] The custom guide task 2706 performs operations based upon inputs from the user to form one or more custom program guides in connection with one or more user profiles. For example, one user may enter information in connection with a custom guide, from which the custom guide task 2706 generates a guide having only certain programs, certain genre of programs or programs from certain actors. For example, one viewer may wish to only see sports options, while a different viewer may only wish to view movies. The custom guide task 2706 generates a custom guide in connection with each user and associates the guide with the corresponding user profile.
[00246] The display live content task 2708 manages interconnection of a channel selected by the user to one or more audio/video devices to play back the content (CG one or more RCDs 1730). The display live content task 2708 receives a selection of a channel from the channel guide task 2704 and bidirectionally communicates with the AHU 1784 to establish a connection to the chosen channel. For example, when the selection represents an OTA channel, the AHU 1784 tunes the antenna to the corresponding channel and the transceiver streams the incoming OTA content either to an SD 1726, a router, one or more RCDs 1730 or another computing device of interest. When the display live content task 2708 receives, from the user, an instruction to watch non-OTA content, instructions 2720 are passed to the AHU 1784 to direct the AHU 1784 to establish a streaming link to the corresponding non-OTA channel. For example, the transceiver may establish a streaming link with an OTT service provider, an IPTV service provider and the like. The AHU 1784 then conveys the non-OTA content to the SD 1726, router and/or RCDs 1730. Optionally, when a non-OTA channel or non-OTA content is selected, the AHU 1784 may direct the router to directly receive the non-OTA content and pass the non-OTA content directly to a destination audio/video device for display, namely one or more SDs 1726, RCDs 1730 and/or other computing devices. In this alternative
implementation, the streaming non-OTA content does not necessarily stream through the AHU 1784 when being routed to the destination audio/video device.
[00247] The DVR menu task 2710 manages operation of the DVR, such as providing information to the channel guide 2704 concerning stored programs, settings for recordings and the like. When the channel guide task 2704 selects a recorded program to view, the DVR menu task 2710 instructs the AHU 1784 to begin or continue streaming the stored content from the DVR through the transceiver to one or more of an SD 1726, RCD 1730 and router. The DVR menu task 2710 provides an interface between the channel guide 2704 and the DVR to enable management of the DVR.
[00248] The AHU 1784 may also interact with the content listings service 2712 to collect guide data 2716 in connection with scheduled recordings to be stored by the DVR.
[00249] Figure 28A illustrates a channel selection (CS) app 2802 that may be implemented on one or more of an SD 1726, AHU 1784, HU 1720 or other computing device. The channel selection app 2802 receives an open channel guide instruction 2810 from the user which directs a channel guide task 2804 to present the channel guide to the user. The channel guide includes program listing information from the various sources and organized in the various manners as discussed above in connection with the channel guide 2804 of Figure 171 1 and elsewhere in the present application. The channel guide 2804 receives guide data 2814 which is similar to the guide data 2714 discussed above in connection with Figure 27, as well as other guide data discussed herein. The guide data 2814 is provided from a content listing service 2812. The channel guide 2804 might also receive channel guide information 2820 from non-OTA service providers 2815.
[00250] The channel guide information is presented on a display to the user and the user enters a channel selection 2812. The channel selection 2812 is provided to a channel selected task 2806 which interacts with one or more of a non-OTA service provider 2815, and/or the AHU 1784 to establish a channel connection. As an example, the channel task 2806 sends a channel request 2822 to the service provider 2815 requesting to establish a streaming non-OTA channel for the select content. Optionally, the channel task 2806 may send a channel selection request 2824 to the AHU 1784 requesting a channel link to be established through the AHU 1784. For example, the channel request 2824 sent to the AHU 1784 may request an OTA channel or a non-OTA channel available through the AHU 1784. When the AHU 1784 and/or the service provider 2815 receive a channel request, streaming channels are established at 2818 and/or 2826, respectively. The AHU 1784 streams the select content at 2818 to a display channel content task 2808. The service provider 2815 similarly streams select non-OTA content 2826 to the display channel content task 2808. The display channel content task 2808 interacts with the corresponding audio/video device to present the content to the user. For example, the display channel content task 2808 may directly display the content on the device operating the app 2802. Alternatively, the task 2808 may manage a link between the source of the streaming content and another audio/video device in the entertainment environment.
[00251] Figure 28B illustrates a logical flow for the channel selection process of 28A. In Figure 28B, the operations implemented by the channel select app 2802 are denoted in one column, while the operations implemented by the AHU 1784 are denoted at 2850. [00252] Once the user opens the channel guide at 2852, the channel guide task 2804 (Figure 28A) allows the user to browse the user guide at 2854. The channel guide 2804 permits the user, while browsing, to view particular program or show information 2856, to select a show description 2858, to back up to a prior level in the channel guide 2860, and the like.
[00253] Once the user identifies a channel of interest, the user selects the channel at 2812 (corresponding to the input 2812 in Figure 28A). Next, the channel watch task 2806 is implemented at 2862 in Figure 28B. The watch task 2806 opens a link to the audio/video device to play back the content at 2864.
[00254] The AHU 1784 checks at 2866 for a tuner that is available to tune to the select channel. When no tuner is available to tune to the select channel at 2868, an error message is returned to resolve a tuner conflict at 2870. By way of example, when the AHU 1784 has two or three tuners, all of the tuners may be already selected to convey other channels/content to corresponding audio/video devices, such that when an additional watch request is made, no further tuners are available to tune yet a third or fourth channel to an additional audio/video device.
[00255] At 2868, when a tuner is available to tune to the select channel, flow moves to 2872. At 2874, the content from the select channel is streamed by the transceiver to the app 2802 (and SD 1726) and/or to a router and/or directly to an audio/video device (e.g., an RCD 1730).
[00256] Also following 2872, the AHU 1784 determines whether to save the streaming content on the DVR 257 at 2876. When the content is to be saved, the DVR saves the streaming content at 2876. The content is streamed at 2874 and saved at 2876 until the program ends at 2878, after which the tuner is freed at 2880 and any appropriate cleanup operations are implemented. [00257] Within the app 2802, once the select audio/video device is open to receive content at 2864, the device enters a data wait mode at 2865 to wait for the streaming content from 2874. When content is received at 2865, the content is then displayed at 2867 until the program ends at 2869.
[00258] Figure 29 illustrates a logical flow implemented in connection with playback options. Figure 29 illustrates a playback (PB) application 2902 that may be implemented on an SD 1726, HU 1720, AHU 1784 or other computing device. Within the playback application 2902, the user enters various playback commands 2904 which are processed at 2906 by the PB app 2902. Examples of commands may include pause 2910, play 2912, rewind 2914, fast forward 2916, replay 2918 and skip 2920.
[00259] When the AHU 1784 receives a corresponding command 2910- 2920, the AHU 1784 performs the corresponding task, such as to pause a data stream 2930 from the DVR, resume a paused stream 2932, rewind a data stream 2934, fast forward a data stream 2936, replay a data stream 2938 or skip through a data stream 2940. The tasks 2930-2940 are implemented by the DVR under the control of the AHU 1784 in response to the corresponding commands from the PB app 2902.
[00260] Figure 30 illustrates a multi-user scenario in which multiple users 3002-3005 each have individual SDs 1710 that interact with the AHU 1784.
Each of the users 3002-3005 may provide separate instructions to the AHU 1784 simultaneously, during overlapping programs, or at independent points in time. For example, the first user 3002 may desire to watch a live television program on channel A, while the second user 3003 may desire to watch a separate program on channel B. At the same time or a different time, a third user 3004 may desire to watch a third program live on channel C. The users 3002-3004 independently and separately communicate with the AHU 1784 which establishes channel links to corresponding audio/video devices for each of channels A, B and C, simultaneously, at partially overlapping intervals in time, or at independent non- overlapping intervals in time.
[00261] A fourth user 3005 may desire to watch a program on a fourth channel D. When the AHU 1784 only includes three tuners, the AHU 1784 may not be able to support simultaneously display of the fourth channel D while already streaming OTA content for channels A, B and C. Accordingly, the AHU 1784 notifies the user of the tuner conflict at 3007. When one of the first through third users 3002-3004 ceases to watch the corresponding channel, the AHU 1784 may then begin to display the channel D to the fourth user 3005.
[00262] Voice Control Module
[00263] Figure 31 illustrates a voice control subsystem implemented in accordance with embodiments herein. The VC sub-system 3102 may be implemented with the SD 1726, HU 1720, RCD 1730, smart light 1792 and/or AHU 1784. The voice control (VC) sub-system 3102 includes one or more processors 3104, one or more microphones 3106, signal processing (SP) circuit 3108, memory 31 10 and a software-implemented VC module 31 12. The VC module 31 12 represents a software module stored in the memory 31 10 which represents memory of one or more of the SD 1726, HU 1720, RCD 1730 and/or AHU 1784. The VC module 31 12 is implemented by one or more processors 3104 that are located within the SD 1726, HU 1720, RCD 1730 and/or AHU 1784.
[00264] The microphone 3106 may represent one or multiple microphones that may be located entirely within the HU 1720. Alternatively, the microphone 3106 may be located in one or more of the SD 1726, HU 1720, RCD 1730 and/or AHU 1784. For example, the user may be able to speak directly into his/her SD 1710 (e.g. where a distance between the users face and the SD 1710 is a few inches, 1 - 3 feet, arm's length, etc.). Additionally or alternatively, the user may be able to speak into open space where the user space is located more than 2 or 3 feet from the microphone 3106 within an entertainment environment. The speech may be detected by a single microphone 3106 or by multiple
microphones within a single device. Additionally or alternatively, the speech may be detected by microphones located in separate devices, such as when a single statement of speech is simultaneously detected by two or more of an SD 1726, HU 1720, RCD 1730 and/or AHU 1784. The microphone may be positioned in the remote control, provided as a stand-alone device connected to the HU 1720 and/or AHU 1784. Multiple microphones 3106 may be constructed in a
microphone array where the SP circuit 3108 is adjusted to provide a select level of sensitivity, filtering, directionality and the like.
[00265] The speech sensed/recorded at microphone 3106 is converted to an electrical signal that is passed to the signal processing circuit 3108 connected to the microphone. The electrical signal output from the microphone 3106 may be an analog or digital signal. The SP circuit 3108 may receive analog or digital signals representative of the sensed speech. The SP circuit 3108 may convert received speech signals from an incoming analog format to a digital signal. The SP circuit 3108 may receive analog signals and perform analog signal
processing upon the signals to output a processed speech analog signal.
Optionally, the SP circuit 3108 may receive digital signals and perform digital signal processing upon the signals to output a processed digital speech signal.
[00266] The processed speech signals, that are output from the SP circuit 3108, may be passed directly to the processor 3104 in a streaming manner to be analyzed. Alternatively or additionally, the processed speech signals may be recorded/stored in memory 31 10 as recorded speech content 31 14, to be quickly accessed and analyzed by the processor 3104. By storing the recorded speech content 31 14, the subsystem 3102 enables speech signals to be received and recorded by the microphone 3106 at one rate, yet be processed by the processor 3104 at a different second rate. Additionally or alternatively, the recorded speech content 31 14 may be saved for later reference and analysis in connection with various analytics, such as to learn new commands, learn the user's voice inflections and dialect, learn to distinguish speech commands from background noise, entertainment audio content and the like.
[00267] The processor 3104 analyzes the speech signals, in connection with implementing the VC module 31 12 to perform various operations explained hereafter. The VC module 31 12 may analyze the speech signal in accordance with various command recognition techniques. As one example, the memory 31 10 stores a list of commands 3130 corresponding to instructions/actions or sets of instructions/actions to be implemented by one or more SD 1726, AHU 1720, RCD 1730 and/or AHU 1784. The list of commands 3130 may be predetermined from an initial database based on prior users and the functionality offered by the overall system. Additionally or alternatively, a user may be afforded the feature to create individualized or tailored commands 3130 in connection with particular actions or sets of actions the individual user desires.
[00268] Optionally, the list of commands 3130 may also store one or more voice activation (VA) terms that are predetermined or defined by the individual user. The VA term or terms are used to inform the voice control subsystem 3102 that a voice command will follow.
[00269] The VC module 31 12 includes a macro-conversion (MC) module 3126, a voice analysis module 3132, and a learn module 3120.
[00270] The voice analysis module 3132 analyzes the speech signals recorded by the microphone 3106, and/or stored speech content 31 14, in order to identify VA terms, followed by voice commands that match the commands on the list of commands 3120. Various voice analysis algorithms are known and may be used in connection with embodiments herein. As one non-limiting example, the voice analysis module 3132 may convert the recorded speech content 31 14 (or speech signals) into text, followed by an analysis of the text words that match text words on the list of commands 3130 and VA terms. As another example, audio signals may be stored in connection with each VA term and/or command on the list of commands 3130, where segments of the speech content 31 14 (and recorded speech) are compared to the audio signals (e.g. through various correlation techniques).
[00271] Alternatively or additionally, when the RCD 1730 represents a television, computer or other device having a display, the voice control subsystem 3102 direct the RCD 1730 to display text corresponding to the speech content. For example, the text may be displayed along the lower portion of a television, similar to subtitle in a movie. By displaying the text, the user is informed of what the subsystem 3102 has interpreted the speech content to represent. The subsystem 3102 may automatically act upon the speech content, in parallel with display as a subtitle. Alternatively, when the user desires to enter a confirmation, the subsystem 3102 may first display the speech content and wait for the user to indicate approval, such as by saying "yes BluMoo",
"approved", etc.
[00272] As one example, the voice analysis module 3132 may operate based upon a predetermined spoken instruction protocol or format. For example, the predetermined spoken instruction protocol may include one or more predefined "voice activation" terms (or VA terms) to be initially stated to inform the VC module 31 12 that the user desires to enter a spoken command. The VA term is then followed by one or more spoken commands. The VA term indicates that the words or sounds following the VA term are to be treated by the VC module 31 12 as a spoken command. For example, one or more uncommon words (or non-words) may be chosen as the VA term (e.g., "Blumoo", "Home Stereo", "XYX").
[00273] The voice analysis module 3132 may continuously divide the speech signal (or speech content 31 14) into segments and analyze the content of each segment for the VA term. When the voice analysis module 3132 identifies a VA term in a statement of the speech signal, the VC module 31 12 analyzes a remainder of the segment (and one or more subsequent segments) of the speech content following the VA term in search of one or more spoken commands. The voice analysis module 3132 may utilize various speech recognition techniques. The segment of the speech signal may be compared to a collection of reference speech segments corresponding to commands available to the system 1702. For example, the commands may represent any of various operations and functions that the system 1702 is capable of performing. The reference speech segments may be derived from various users over time to form a general library. Additionally or alternatively, the reference speech segments may be generated, in whole or in part, in connection with an individual user, such as during a learning or command entry mode.
[00274] Once the voice analysis module 3132 identifies one or more spoken commands, the corresponding system command is passed to one or more of SD 1726, HU 1720, and/or AHU 1784, to be processed in accordance with various embodiments described herein. For example, the SD 1710 may implement any action that the SD 1710 offers in response to user inputs through the user interface of the SD 1726. For example, the HU 1720 may transmit one or more IR codes to instruct an RCD 1730 to take various actions as explained herein.
[00275] Additionally or alternatively, when the voice analysis module 3132 identifies a VA term, but is unable to identify a spoken command following the VA term, the module 3132 may access a secondary voice recognition system. For example, the voice analysis module 3132 may pass the segment of speech content to a third-party voice recognition system over the Internet and request a text translation in return.
[00276] The learn module 3120 performs actions in connection with setting up the voice control subsystem 3102 for a particular user. The learn module 3120 may be implemented during an initial system set up. Additionally or alternatively, the learn module 3120 may be implemented periodically throughout the operative life of the system 1702 to continuously learn and improve the ability to accurately understand a user's spoken commands. Additionally or
alternatively, the learn module 3120 may be implemented each time a new user is added to the system 1702. The learn module 3120 may be activated by the user or automatically periodically by the system 1702.
[00277] The learn module 3120, may determine the type of microphone 3106 connected thereto and in response adjust the operations performed by the SP circuit 3108. For example, the microphone 3106 may be a separate device that is connected to the HU 1720. As another example, the microphone 3106 may be integrated into an RCD 1730, an SD 1726, HU 1720 and the like. For example, during a training session, the VC module 31 12 may learn a user's voice by displaying a series of commands on an RCD 1730, SD 1726, etc., and directing the user to state each of the commands while the VC module 31 12 records and "learns" the user's voice. The VC module 31 12 may adjust the SP circuit 3108 to account for various sensitivity and directionality characteristics of the microphone 3106. Once, the SP circuit 3108 is set up, the learn module 3120 may undergo a background monitoring operation whereby the learn module 3120 listens and records sounds within the entertainment environment, such as street noise, audio from movies/television programs played by the system 1702 or from another system, music played by the entertainment system 1702 or by another system, kitchen noise, conversations from multiple people talking in the room, and the like.
[00278] The learn module 3120 may store segments of the background noise as background content 3122. Additionally or alternatively, the learn module 3120 may process the background noise to identify characteristics of interest that describe the background noise, and save the characteristics of interest alone or in combination with the background noise. The characteristics of interest may describe the background noise and be used by the voice analysis module 3132 to separate the background noise from recorded speech.
[00279] The learn module 3120 may then step through display (e.g. on an RCD 1730, SD 1710 or other display) of one or more VA terms and/or
commands and prompt the user to read/say the VA terms and/or commands out loud in order for the microphone 3106 to record the user's speech. The user may be prompted to restate the VA terms and/or commands from different physical positions/locations in the entertainment environment, while facing different directions, while seated, while standing, with different levels of amplitudes and voice emphasis and the like. The learn module 3120 records the user's speech and associates the speech with each command to form a collection of reference speech segments, wherein each reference speech segment is linked in memory to one or more corresponding VA terms and/or commands. The individualized reference speech segments 3124 are saved in memory 31 10 alone or in combination with general reference speech segments from a collection or data base derived from other users. The individualized reference speech segments 3124 may be conveyed to a remote collection or database to add to the general collection of reference speech segments.
[00280] Each of the commands may be associated with a single instruction or a set of instructions. Single instructions may represent a single RCD related action, a single HU related action and the like. By way of example, the single RCD related action may be to change channel, turn the volume up/down, turn the stereo on/off, etc. By way of example, HU related actions may be to stream music from the HU 1720 to the RCD 1730, enter an administrative mode, learn a macro for a set of instructions, etc.
[00281] The MC module 3126 may be included within the VC module 31 12. The MC module 3126 recognizes voice commands that correspond to sets of instructions. For example, a command may be "Play Blues Music". In response, the MC module 3126 may direct the HU 1720 to perform a set of actions, such as to turn on the stereo, set the input to a source capable of streaming content from the Internet, set the volume to an initial level, set the stereo features to "surround sound", etc. The set of actions may also include instructions of the source streaming the desired type of music, such as a computer. For example, the instructions may direct the computer to open a browser and access an online streaming content provider (e.g., Pandora, Spotify). The instructions would also direct the computer to enter a selection for a type of music or channel designated in the command (e.g., select a Blues channel), and set the computer's output to a channel communicatively coupled to the HU 1720 (e.g., a WiFi link, a wired output channel).
[00282] Other non-limiting examples of macros may be when the user desires to watch a movie. In response, a macro may turn on the corresponding RCD 1730, set the input to a corresponding video source, change the audio input of a receiver to correspond to the audio output of a television and the like. As another example, the user may desire to listen to music. In response, a macro may direct a receiver to a radio station, and turn on a select combination of speakers.
[00283] In order to define macros, the MC module 3126 may include a macro-programming mode in which the user is afforded the opportunity to enter the instructions to be performed during the macro. For example, the user may speak each command to be performed. Optionally, the user may enter the commands through a user interface on a computer, the SD 1726, the HU 1720, the RCD 1730. Once the user enters the set of instructions, the MC module 3126 may also prompt the user for a macro command name to be spoken (e.g., "Play Blues Music"). The macro command is saved in memory 31 10 as a spoken macro command 3128. Optionally, the macro commands, set up by the user in connection with other embodiments herein, may be appended with a spoken macro command name such that, when a macro command is spoken, the MC module 3126 cross references the command with a collection of macros stored in the SD 1710 and/or HU 1720 (as described in connection with embodiments herein).
[00284] Additionally or alternatively, the spoken macro commands 3128 may include templates that are commonly used by other users. The MC module 3126 may display the templates to the user and prompt the user to select one or more or all of the templates. The templates may include predetermined names to be spoken in order to activate/implement the macro instruction set. Additionally or alternatively, the user may be prompted to state the predetermined names or assign a new name of the user's choice and state the new name of the user's choice. The name associated with each macro instruction set is saved in the spoken macro commands 3128 as a macro name.
[00285] Optionally, one or more action/instructions from a macro instruction set may be skipped, such as when the action/instruction is not needed. For example, when an RCD 1730 is already ON, the "turn on" action need not be performed. Accordingly, the MC module 3126 will skip the instruction to the HU 1720 to transmit an optical code associated with turning on the RCD 1730. By way of example, the HU 1720 (and MC module 3120) may know a current status of the RCD 1730 such as when an HDMI cable is connected there between, or when another communications link exists between the HU 1720 and the RCD 1730 that supports transmission of device status information from the RCD 1730 to the HU 1720. For example, when an HDMI cable is connected, the HU 1720 may already know that the RCD 1730 is ON, and accordingly would skip the instruction to carry out the "turn on" action. Additionally or alternatively, the MC module 3126 may track a command or button history entered by the user in order to maintain a record of whether each RCD 1730 is on or off, as well as other device state that may be tracked based on command/button history. Based upon the command/button history, the MC module 3126 may skip one or more instructions/actions within the macro when such instruction/action is not appropriate.
[00286] The MC module 3126 may automatically construct certain macros based upon the types of RCD 1730 that are detected in connection thereto. The MC module 3126 may offer the automatically constructed macros to the user to be maintained or deleted.
[00287] The VC module 31 12 may maintain the microphone 3106 in an "always active" state such that the microphone 3106 is always listening for speech. The VC module 31 12 would continuously review the content recorded by the microphone 3106 in search of a voice activation term. When a VA term is identified, the VC module 31 12 retains the speech content following the VA term and analyzes the speech content to attempt to match the speech content to a known command.
[00288] While the embodiments described herein refer to the Bluetooth and WiFi networks and protocols, it is understood that any network or protocol may be used therein including, but not limited to, 2402.1 1 a/b/g/n (WiFi); IEEE 1901 , 1905 (Power line Networks); SONET; as well as Device to Device networks such as Wireless USB; Zigbee; Bluetooth; Wireless HD; as well as Mobile Networks such as LTE, GSM, HSPA, 2G/3G/4G and the like.
[00289] Figure 32 illustrates an array of microphones that may be implemented in accordance with embodiments. The array 3205 of microphones 3206 A-D may be positioned on a PC board or other substrate 3203 in the housing of the HU 20, HU 1720, AHU 1784, AHU 84, RCD 30, RCD 1730 etc., where each of the microphones is directed in a different direction and/or assigned a different sensitivity, passband, directionality, and the like. The microphones 3206 A, and microphones B, D are connected to SP circuit 3208B. By way of example, the SP circuit 3208A may be set to exhibit background sensitivity such that the SP circuit 3208A outputs a signal dominated by background noise. The SP circuit 3208B may be set to exhibit command sensitivity such that the SP circuit 3208B outputs a signal dominated by speech from the user. The background noise may be subtracted from the speech signal to increase isolation of the speech of the user. The SP circuits 3208A, B may change sensitivity, passbands, directionality and other characteristics to obtain signals that differ and enable removal of background sounds.
[00290] The combiner circuit 3209 may combine the outputs of the SP circuits 3208A, B in various manners. For example, the combiner circuit 3209 may sum the incoming signals, subtract the incoming signals from one another and the like.
[00291] As another example, the microphones 3206A-D and SP circuits 3208A, B may have common or the same sensing characteristics, such that all or most of the microphones 3206A-D listen for spoken commands. The outputs of the SP circuits 3208A, B are summed to increase sensitivity. Optionally, microphones 3206A, and SP circuit 3208A may be adjusted to have near field sensitivity (e.g., sensitive to speech within 1 -5 feet of the array 3205) ; while microphones 3206B, D and SP circuit 3208B are adjusted to have far field sensitivity (e.g., more than 5 feet from the array 3205). The microphones with near field sensitivity may have a wider sensitivity range (less directional), relative to the microphones with far field sensitivity (e.g., have a narrow sensitivity range or be more directional). Optionally, the directionality may be switched such that far field microphones are less directional and near field microphones are more directional.
[00292]
TERMINOLOGY
[00293] The terms "IR code", and "IR pulse sequence" are used
interchangeably throughout. [00294] The terms "cloud" or "cloud computing" represent a model for delivering information technology services in which resources are retrieved from the Internet through web-based tools and applications, rather than a direct connection to a server and in which data and software packages are stored in one or more servers interconnected over the Internet.
[00295] The terms "redirect", "redirective", "reflect", "reflective" and similar terms refer to changes in direction of a signal upon contacting objects within an area of transmission.
[00296] The terms "audio/video" and "AN" are not limited to content or devices that include both audio and video, but instead shall mean any audio only device, combined audio and video device, video only device, any audio only content, combined audio and video content, and video only content.
[00297] The terms "record" and "file" are not limited to any particular data structure, but instead generally refer to any form of managed interconnection between various data items, such as a unique identifier (e.g. Mac address) and a collection of data items (e.g., user configurations, program directories, Macros, etc.).
[00298] The term "customize", when used in connection with user configurations, is used to indicate that a user provides at least limited input into the content of the user configuration. It is understood that a majority of the user configuration may be common or generic to numerous user configurations.
[00299] The term "audio/visual equipment" is used throughout this disclosure, and is intended to describe any audio and/or visual equipment for delivering audio and/or visual images to a user. Such equipment may include, merely by way of example, a television, image projection device, stereo, audio and/or visual receiver, satellite television receiver, cable television receiver, digital video recorder, digital video disc (DVD) player/recorder, Blue-ray™ Disc player/recorder, video cassette player/recorder, entertainment device, multimedia or other computer, streaming media device, multimedia or other tablet, multimedia or other handheld device, multimedia or other personal data assistant, and/or multimedia or other mobile phone.
[00300] The transmitter may include any device that transmits signals remotely to audio/visual equipment. Merely by way of example, such transmitters may include RF transmission antennas/devices, infrared transmission devices, and/or any other non-wired data transmission device. The transmitter may transmit data representative of user input received by the input device, such that the audio/video equipment may act on such directions when received.
[00301] The term "Over-The-Top (OTT)" refers to any content not delivered as specifically programmed linear channels from a pay TV operator or from an OTA broadcast. The OTT content shall encompass on-demand content provided as TV Everywhere by pay TV operators. OTT content includes content provided on the "open internet" or an unmanaged network. OTT content includes content delivered over broadband connections outside of the "control" of the internet service provider (ISP) network on which it is delivered.
[00302] The term "service provider" shall refer to any source of audio and/or video content, whether the source provides the content for free or charges for the content. The service providers include over the air (OTA) broadcast service providers and non-OTA service providers. Non-limiting examples of non- OTA service providers include internet service providers (e.g., Charter, Comcast, AT&T), OTT service providers (e.g., Amazon, Apple, Hulu, Netflix, Google, Microsoft, Yahoo!), internet protocol television (IPTV) service providers (e.g., AT&T Uverse, Century Link, Cablevision, Comcast) and the like.
[00303] In accordance with embodiments herein, systems and method are provided that allow a home unit to be installed that is readily compatible with existing equipment. In accordance with embodiments herein, systems and method are provided that allow users to select content of interest from a single common environment without regard for which service provider is providing the content, and without the need to navigate one or more specific SP program guide environments to look for the content. In accordance with embodiments herein, systems and method are provided that permit removal of cables for equipment, speakers, antenna, controllers and the like.
[00304] While the embodiments described herein refer to the BlueTooth and WiFi networks and protocols, it is understood that any network or protocol may be used therein including, but not limited to, 802.1 1 a/b/g/n (WiFi); IEEE 1901 , 1905 (Power line Networks); SONET; as well as Device to Device networks such as Wireless USB; Zigbee; Bluetooth; Wireless HD; as well as Mobile Networks such as LTE, GSM, HSPA, 2G/3G/4G and the like.
[00305] While the embodiments described herein relate to remote control of audio and/or video devices, optionally the HUs, SDs, and SEEC APPs described herein may be used to describe any device that is remotely controllable through an IR pulse sequence. For example, the RC devices may include home appliances, heating and ventilation air conditioning systems, home security systems, door locks, window locks and the like.
[00306] It is to be understood that the above description is intended to be illustrative, and not restrictive. For example, the above-described embodiments (and/or aspects thereof) may be used in combination with each other. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the invention without departing from its scope. While the dimensions, types of materials and coatings described herein are intended to define the parameters of the embodiments, they are by no means limiting and are exemplary embodiments. Many other embodiments will be apparent to those of skill in the art upon reviewing the above description. The scope of the invention should, therefore, be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled. In the appended claims, the terms "including" and "in which" are used as the plain-English equivalents of the respective terms "comprising" and "wherein." Moreover, in the following claims, the terms "first," "second," and "third," etc. are used merely as labels, and are not intended to impose numerical requirements on their objects. Further, the limitations of the following claims are not written in means - plus-function format and are not intended to be interpreted based on 35 U.S.C. § 1 12(f) unless and until such claim limitations expressly use the phrase "means for" followed by a statement of function void of further structure.

Claims

CLAIMS WHAT IS CLAIMED IS:
1 . A remote control and streaming interface for an entertainment environment, the system comprising:
an infrared (IR) transmitter panel holding an optical IR transmitter; at least one transceiver configured to maintain a bidirectional administration link with a smart handheld device and configured to maintain a separate streaming link with the smart handheld device (SD);
a processor configured to identify remote control (RC) commands received over the administration link, the processor configured to direct the optical IR transmitter to generate an IR signal having a select IR pulse sequence based on the RC commands;
the optical IR transmitter configured to transmit the IR signal in a reflective-deflective pattern across the entertainment environment until reaching at least one remotely controlled (RC) device within the entertainment
environment, wherein the RC device is positioned in a non-line of sight relation with the optical IR transmitter.
2. The system of claim 1 , further comprising a streaming and entertainment environment control application (SEEC APP) to be loaded by the SD, the SEEC APP enabling the SD to communicate the RC commands to the processor that directs the optical IR transmitter to transmit the IR pulse sequences to RC devices based on the RC commands.
3. The system of claim 2, wherein the SEEC APP maintains, on the SD, a customized user configuration associated with the corresponding entertainment environment, the user configuration being set up by a user through the SEEC APP based on individual user preferences, the user configuration comprising: a set of input indicia associated with a select RC device, at least a portion of the input indicia indicative of commands for the select RC device,
RC commands associated with the input indicia wherein the RC commands identify IR pulse sequences to be transmitted from the optical IR transmitter to the RC device to instruct the RC device to perform one or more associated actions; and
a user-designated presentation of the input indicia on the user interface of the SD.
4. The system of claim 2, further comprising:
an IR sensor configured to sense IR signals, wherein the SEEC APP is configured to learn RC commands for a select RC device, when in a learn mode, by;
i) sensing, at the IR sensor, a new IR pulse sequence that is generated by a handheld remote control that is associated with the select RC device;
ii) receiving an input indicating a new RC command; and iii) storing the new IR pulse sequence with the new RC
command.
5. The system of claim 1 , wherein the IR signals are configured to reflect off objects in the entertainment environment in multiple directions.
6. The system of claim 1 , wherein the optical IR transmitter comprises a plurality of LEDs arranged in a two dimensional array on the IR transmitter panel.
7. The system of claim 1 , wherein the optical IR transmitter includes first and second LEDs having corresponding different first and second propagation directions and different first and second propagation envelopes, respectively.
8. The system of claim 1 , further comprising an audio output component configured to generate an audio signal, the processor configured to identify audio data received over the streaming link, the processor configured to direct the audio output component to generate the audio signal based on the audio data.
9. The system of claim 5, wherein the first propagation envelope has a narrow beamwidth and the second propagation envelope has a wide beamwidth relative to the narrow beamwidth.
10. The system of claim 5, wherein the first and second propagation directions project at different first and second angles from a front surface of the IR transmitter panel such that the first and second IR LEDs transmit IR signals having a common IR code from the IR transmitter panel at the different first and second angles.
1 1 . The system of claim 1 , wherein the transceiver is configured to establish a temporary low energy administration link between the home unit and at least one smart handheld device in connection with conveying remote control related command(s) to the home unit.
12. The system of claim 1 , wherein the transceiver is configured to communicate with the smart handheld device using a Bluetooth Low Energy (BLE) communications protocol, in connection with the bidirectional
administrative link, to remotely control one or more A/V remotely controllable devices.
13. The system of claim 1 , wherein the optical IR transmitter includes an LED array that is arranged such that the IR signals propagate in multiple directions and at multiple angles from the LED array, the IR signals contacting other structures within the entertainment environment and be redirected or reflected in other directions such that the IR signals bounce off multiple structures in the entertainment environment before reaching the RC device, wherein redirection/reflection of the IR signals increases a likelihood that one or more of the IR signals is received by each of the RC device.
14. A method for providing a remote control and streaming interface for an entertainment environment, the method comprising:
defining a bidirectional administration link and a separate streaming link to be maintained between a smart handheld device (SD) and a home unit (HU) located in the entertainment environment;
identifying remote control (RC) commands received over the
administration link by the HU from the SD;
generating an IR signal having a select IR pulse sequence based on the RC commands; and
transmitting the IR signal in a reflective-deflective pattern across the entertainment environment until reaching at least one remotely controlled (RC) device within the entertainment environment, wherein the RC device is positioned in a non-line of sight relation with the optical IR transmitter.
15. The method of claim 14, further comprising providing a streaming and entertainment environment control application (SEEC APP) to be loaded by the SD, the SEEC APP enabling the SD to communicate the RC commands to the HU that directs transmission of the IR pulse sequences to RC devices based on the RC commands.
16. The method of claim 15, further comprising maintaining, through the SEEC APP, a customized user configuration associated with the
corresponding entertainment environment, the user configuration being set up by a user through the SEEC APP based on individual user preferences, the user configuration comprising:
a set of input indicia associated with a select RC device, at least a portion of the input indicia indicative of commands for the select RC device,
RC commands associated with the input indicia wherein the RC commands identify IR pulse sequences to be transmitted to the select RC device to instruct the select RC device to perform one or more associated actions; and
a user-designated presentation of the input indicia on the user interface of the SD.
17. The method of claim 15, further comprising:
directing the SEEC APP to enter a learn mode to learn RC commands for a select RC device;
sensing a new IR pulse sequence that is generated by a handheld remote control that is associated with the select RC device;
receiving an input indicating a new RC command; and
storing the new IR pulse sequence with the new RC command.
18. The method of claim 14, further comprising identifying audio data received over the streaming link; directing an audio output component to generate an audio signal based on the audio data.
19. The method of claim 14, wherein the IR signals reflect off objects in the entertainment environment in multiple directions.
20. The method of claim 14, further comprising transmitting the IR pulse sequence in different first and second propagation directions and with different first and second propagation envelopes.
21 . The method of claim 20, wherein the first propagation envelope has a narrow beamwidth and the second propagation envelope has a wide
beamwidth relative to the narrow beamwidth.
22. The method of claim 20, wherein the first and second propagation directions project at different first and second angles such that first and second IR LEDs transmit IR signals having a common IR pulse sequence at the different first and second angles.
23. The method of claim 14, further comprising establishing a temporary low energy administration link between the home unit and at least one smart handheld device in connection with conveying remote control related command(s) to the home unit.
24. The method of claim 14, further comprising using a Bluetooth Low Energy (BLE) communications protocol, in connection with the bidirectional administrative link, to remotely control one or more remotely controllable devices.
25. A method for managing user configurations for smart handheld devices that communicate through home units to corresponding entertainment environments, the method comprising:
providing a streaming and entertainment environment control application (SEEC APP) to be loaded by smart handheld devices (SDs), the SEEC APP enabling the SDs to communicate remote control (RC) commands to corresponding home units that transmit IR codes to remotely controlled (RC) devices based on the RC commands;
maintaining customized user configurations each associated with a corresponding home unit, the user configurations being set up by users based on individual user preferences, the user configurations comprising:
a set of input indicia associated with a select RCD, at least a portion of the input indicia indicative of commands for the RCD,
RC commands associated with the input indicia wherein the RC commands identify IR codes to be transmitted from the home unit to the RCD to instruct the RCD to perform one or more associated actions; and a user-designated presentation of the input indicia on the user interface of the SD; and
when a first SD pairs with a first home unit, determining whether the first SD has, stored therein, a first user configuration associated with the first home unit;
loading the first SD with the first user configuration associated with the first home unit based on the determining operation.
26. The method of claim 25, further comprising: when the first SD moves to an entertainment environment associated with a second home unit and pairs with the second home unit, determining whether the first SD has, stored therein, a second user configuration associated with the second home unit; and loading the first SD with the second user configuration associated with the second home unit based on the determining operation.
27. The method of claim 25, further comprising storing the user configurations in a data storage in the Cloud and uniquely associating each of the user configurations with a MAC address of a corresponding home unit, requesting one of the user configurations based on the MAC address of the corresponding home unit.
28. The method of claim 25, further comprising replacing the first user configuration with a new configuration each time the first SD moves to an entertainment environment associated with a new home unit and pairs with the new home unit.
29. The method of claim 25, wherein the loading operation is skipped when the determining operation determines that the first SD already has stored therein the first user configuration associated with the first home unit.
30. The method of claim 25, further comprising, during setup, creating a plurality of first user configurations associated with the first home unit, each of the plurality of first user configurations associated with corresponding SDs from an equal plurality of SDs.
31 . The method of claim 25, during set up, entering a separate user interface for each of a plurality of different RCDs within the environment; and affording the user the option to customize the presentation of the input indicia displayed on the plurality of SDs in connection with each of the RCDs.
32. The method of claim 25, wherein the user-designated presentation includes a user designated combination and arrangement of the input indicia.
33. The method of claim 25, wherein the input indicia include button specific commands and the first user configuration includes, for the button specific commands, at least two of button name, button type, color, IR code to be transmitted when the button is selected, button shape and location on the SD virtual grid, and one or more macros to be implemented when the button is activated.
34. The method of claim 25, wherein multiple user configurations are recorded in connection with a single home unit, each user configuration may be associated with a particular SD.
35. A method for learning remote control (RC) commands for a streaming and entertainment control interface that enables a smart handheld device to communicate through a home unit (HU) with remotely controlled (RC) devices in a corresponding entertainment environment, the method comprising: providing a streaming and entertainment environment control application (SEEC APP) to be loaded by the smart handheld device (SD), the SEEC APP enabling the SD to communicate remote control (RC) commands to the corresponding home unit that transmits IR pulse sequences to RC devices based on the RC commands;
directing the SEEC APP to enter a learn mode to learn RC commands for a select RC device;
sensing, at an IR sensor, a new IR pulse sequence that is generated by a handheld remote control that is associated with the select RC device;
receive an input indicating a new RC command; and
store the new IR pulse sequence with the new RC command.
36. The method of claim 35, configuring the SEEC APP to enable a user to designate the new RC device through a user interface of the SD.
37. The method of claim 35, pointing an IR transmitter of the remote control at the IR sensor and activating a button on the remote control that corresponds to the new RC command such that the IR sensor senses the new IR pulse sequence generated by the remote control when the button is activated.
38. The method of claim 35, storing the new IR pulse sequence and RC command in memory of the at least one of the SD and HU.
39. The method of claim 35, associating the new IR pulse sequence and RC command with a input indicia in an input window of the SEEC APP on the SD.
40. A method for collecting viewer behavior information through a streaming and entertainment control interface that enables a smart handheld device to remotely control (RC) RC devices in a corresponding entertainment environment, the method comprising:
providing a streaming and entertainment environment control application (SEEC APP) to be loaded by the smart handheld device (SD), the SEEC APP enabling the SD to communicate remote control (RC) commands to the RC devices;
recording user selections and actions on the SD, in connection with entering RC commands, into a viewer log as program and viewer behavior related information;
analyzing the program and viewer behavior related information to develop viewing preference traits; and
recording the viewing preference traits in a viewer profile.
41 . The method of claim 40, wherein the program and viewer behavior related information includes at least one of program name, service provider, program type, genre, actor, director, when the user begins to watch a program, stops watching the program, whether the user changes channels during the program, how long the user watches the program, how frequently the user watches/listens to the program, how often the user watches similar programs, whether the user records the program, and other behavior related actions of the user
42. The method of claim 40, wherein the viewer behavior related information includes an indicating of an amount of attention the user affords to a program, including at least one of whether the user performs other non-program related functions on the SD during the program, the non-program related functions including at least one of checking email, holding a phone call, text messaging.
43. The method of claim 40, further comprising providing
recommendations for programs to the user based on the viewer profile.
44. An integrated intelligent antenna system, comprising:
a housing;
an antenna within the housing and configured to receive over-the-air (OTA) broadcasts of OTA content; a tuner within the housing, the tuner coupled to the antenna, the tuner including an adaptive gain component configured to adjust a gain for the antenna in connection with different channels of the OTA broadcasts;
a distribution hub within the housing, the distribution hub including at least one transceiver configured to receive non-OTA content from non-OTA service providers, the at least one transceiver configured to communicate wirelessly with, and stream at least one of the OTA and non-OTA content to, at least one of a smart handheld device, a local area network (LAN) router or an entertainment device in an entertainment environment; a digital video recorder (DVR) within the housing and configured to record and replay the OTA content and non-OTA content; one or more processors and a local storage medium in the housing, the local storage medium storing program instructions accessible by the processor, wherein, responsive to execution of the program instructions, the processor:
receives instructions to select at least one of the OTA content or the non-OTA content to view; receives instructions to manage the DVR to record at least one of the OTA content or the non-OTA content;
receives instructions to manage the DVR to playback at least one of the OTA content or the non-OTA content.
45. The system of claim 44, wherein the processor, responsive to execution of the program instructions, manages the antenna and tuner to automatically scan the OTA broadcast to identify available channels and determine a select amount of gain to utilize in connection with each of the available channels, the tuner adjusting to the select amount of gain in when a user chooses one of the available channels.
46. The system of claim 45, wherein the processor monitors a signal strength in connection with each of the available channels to determine the corresponding select amount of gain.
47. The system of claim 45, further comprising an application configured to operate on the smart handheld device, the application determines an initial group of potential channels based on a zip code for an area in which the device is located, the antenna and tuner to automatically scan the OTA broadcast first for the initial group of potential channels and then for additional potential channels.
48. The system of claim 44, further comprising an application configured to operate on the smart handheld device, the application configured to receive a request from a user for content of interest, access program information for multiple service providers associated with the OTA content and non-OTA content, and search for matches between programs offered by the service providers and the content of interest, and present a common program list to the user of programs that potentially match the content of interest, where the program list includes at least two potential matches that are from different first and second service providers, the application configured to receive a selection from the smart handheld device designating one of the potential matches, the processor configured to manage at least one of the antenna and the transceiver to access the program from the service provider corresponding to the selection and stream the selection to an entertainment device.
49. The system of claim 44, wherein the application is configured to access program information for multiple service providers associated with the OTA content and non-OTA content, and present a common program list to the user, where the program list includes at least two potential matches that are from different first and second service providers, the application configured to receive a selection designating one of the potential matches, the processor configured to access the program from the service provider corresponding to the selection and stream the selection to an entertainment device.
50. The system of claim 44, wherein the processor compiling a program list to be displayed on the smart handheld device, the program list including indicia identifying OTA content available on channels of the OTA broadcast and identifying non-OTA content available from non-OTA service providers.
51 . The system of claim 44, further comprising an application configured to operate on the smart handheld device, the application compiling a program list to be displayed on the smart handheld device, the program list including indicia identifying OTA content available on channels of the OTA broadcast and identifying non-OTA content available from non-OTA service providers.
52. The system of claim 44, wherein the transceiver streams to the entertainment device, at least one of OTA content, non-OTA content and content stored on the DVR.
53. The system of claim 44, wherein the processor automatically pushes recorded content from the DVR to be stored on the smart handheld device to viewed at a later time.
54. A method for providing an integrated intelligent antenna, the method comprising: configuring an antenna within an antenna housing to receive over-the-air (OTA) broadcasts of OTA content;
coupling a tuner to the antenna;
adjusting a gain for the antenna in connection with different channels of the OTA broadcasts;
configuring at least one transceiver within the housing to receive non-OTA content from non-OTA service providers;
streaming at least one of the OTA content or non-OTA content from the at least one transceiver and at least one of a smart handheld device, a local area network (LAN) router or an entertainment device in an entertainment
environment;
configuring a digital video recorder (DVR) within the housing to record and replay the OTA content and non-OTA content; directing one or more processors under control of program instructions to: receive instructions to select at least one of the OTA content or the non-OTA content to view; receive instructions to manage the DVR to record at least one of the OTA content or the non-OTA content; and
receive instructions to manage the DVR to playback at least one of the OTA content or the non-OTA content.
55. The method of claim 54, further comprising managing the antenna and tuner to automatically scan the OTA broadcast to identify available channels and determine a select amount of gain to utilize in connection with each of the available channels, the tuner adjusting to the select amount of gain in when a user chooses one of the available channels.
56. The method of claim 54, further comprising monitoring a signal strength in connection with each of the available channels to determine the corresponding select amount of gain.
57. The method of claim 54, further comprising determining an initial group of potential channels based on a zip code for an area in which the device is located, and automatically scanning the OTA broadcast first for the initial group of potential channels and then for additional potential channels.
58. The method of claim 54, further comprising receiving a request from a user for content of interest, accessing program information for multiple service providers associated with the OTA content and non-OTA content, searching for matches between programs offered by the service providers and the content of interest, presenting a common program list to the user of programs that potentially match the content of interest, where the program list includes at least two potential matches that are from different first and second service providers, receiving a selection from the smart handheld device designating one of the potential matches, and managing at least one of the antenna and the transceiver to access the program from the service provider corresponding to the selection and stream the selection to an entertainment device.
59. The method of claim 54, further comprising accessing program information for multiple service providers associated with the OTA content and non-OTA content, and presenting a common program list to the user, where the program list includes at least two potential matches that are from different first and second service providers, receiving a selection designating one of the potential matches, accessing the program from the service provider
corresponding to the selection and streaming the selection to an entertainment device.
60. The method of claim 54, further comprising compiling a program list to be displayed on the smart handheld device, the program list including indicia identifying OTA content available on channels of the OTA broadcast and identifying non-OTA content available from non-OTA service providers.
61 . The method of claim 54, wherein the transceiver streams to the entertainment device, at least one of OTA content, non-OTA content and content stored on the DVR.
62. The method of claim 54, further comprising automatically pushing recorded content from the DVR to be stored on the smart handheld device to be viewed at a later time.
63. A system for selecting and managing streaming content from multiple service providers, the system comprising:
at least one transceiver configured to maintain a bidirectional
administration link with a smart handheld device and configured to maintain a separate streaming link with entertainment devices;
a processor configured to identify user entries designating content of interest, the processor configured access program information for multiple service provides and search for matches between programs offered by the service providers and the content of interest, the processor configured to present a program list to the user of programs that potentially match the content of interest, where the program list includes at least two potential matches that are from different first and second service providers, the processor configured to receive a selection from the smart handheld device designating one of the potential matches, the processor configured to access the program from the service provider corresponding to the selection and stream the selection to an entertainment device.
64. The system of claim 63, further comprising an app configured to operate on a smart handheld device, the processor conveying the program list to be displayed on the smart handheld device, the program list including multiple entries for a common program but from the different first and second service providers.
65. A networked audio/video (A/V) system for controlling transmission of streaming content to A/V devices, the system comprising: an adapter configured to be provided with an A/V device provided in an entertainment environment, the adapter including a transceiver configured to be communicatively coupled to the A/V device provided in an entertainment environment, the transceiver configured to receive at least one of streaming audio and video content; and
a home unit (HU) to be positioned within a wireless communications range of the adapter, the HU including a content input to receive content of interest from at least one service provider, the HU including at least one transceiver configured to maintain a streaming link with the adapter in order to stream at least one of audio and video to the A/V device, the HU including a processor configured to receive a user input designating which A/V device is to receive the content of interest, the processor configured to stream the content of interest to the adapter of the A/V device designated by the user input.
PCT/US2015/023634 2014-04-01 2015-03-31 Entertainment environment remote control and audio/video streaming method and system WO2015153640A1 (en)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201461973564P 2014-04-01 2014-04-01
US61/973,564 2014-04-01
US14/251,027 US20150042447A1 (en) 2013-08-09 2014-04-11 Entertainment environment remote control and audio/video streaming method and system
US14/251,027 2014-04-11
US201462076379P 2014-11-06 2014-11-06
US62/076,379 2014-11-06

Publications (1)

Publication Number Publication Date
WO2015153640A1 true WO2015153640A1 (en) 2015-10-08

Family

ID=54241225

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2015/023634 WO2015153640A1 (en) 2014-04-01 2015-03-31 Entertainment environment remote control and audio/video streaming method and system

Country Status (1)

Country Link
WO (1) WO2015153640A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11294341B2 (en) 2019-04-16 2022-04-05 Distech Controls Inc. Controlled appliance and method for interacting with a remote control device via the BLE standard
US11308793B2 (en) 2019-04-16 2022-04-19 Distech Controls Inc. Remote control device and method for interacting with a controlled appliance via the BLE standard

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040064504A1 (en) * 2002-08-12 2004-04-01 Alcatel Method and devices for implementing highly interactive entertainment services using interactive media-streaming technology, enabling remote provisioning of virtual reality services
US20050096753A1 (en) * 2003-11-04 2005-05-05 Universal Electronics Inc. Home appliance control system and methods in a networked environment
US20110138327A1 (en) * 2001-11-20 2011-06-09 Universal Electronics Inc. User interface for a remote control application
US20120082461A1 (en) * 2010-09-30 2012-04-05 Transmitive, LLC Versatile remote control device and system
US20120287830A1 (en) * 2007-04-10 2012-11-15 Research In Motion Limited Media transfer and control system
US20130347039A1 (en) * 2012-06-21 2013-12-26 United Video Properties, Inc. Graphical user interface for media content selection
US20140018002A1 (en) * 2012-07-12 2014-01-16 Samsung Electronics Co., Ltd. Network, master, hub and method for providing a bluetooth infrastructure
WO2014027349A1 (en) * 2012-08-14 2014-02-20 Switchbee Ltd. System and method for remote control of home appliances without infrastructure changes

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110138327A1 (en) * 2001-11-20 2011-06-09 Universal Electronics Inc. User interface for a remote control application
US20040064504A1 (en) * 2002-08-12 2004-04-01 Alcatel Method and devices for implementing highly interactive entertainment services using interactive media-streaming technology, enabling remote provisioning of virtual reality services
US20050096753A1 (en) * 2003-11-04 2005-05-05 Universal Electronics Inc. Home appliance control system and methods in a networked environment
US20120287830A1 (en) * 2007-04-10 2012-11-15 Research In Motion Limited Media transfer and control system
US20120082461A1 (en) * 2010-09-30 2012-04-05 Transmitive, LLC Versatile remote control device and system
US20130347039A1 (en) * 2012-06-21 2013-12-26 United Video Properties, Inc. Graphical user interface for media content selection
US20140018002A1 (en) * 2012-07-12 2014-01-16 Samsung Electronics Co., Ltd. Network, master, hub and method for providing a bluetooth infrastructure
WO2014027349A1 (en) * 2012-08-14 2014-02-20 Switchbee Ltd. System and method for remote control of home appliances without infrastructure changes

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11294341B2 (en) 2019-04-16 2022-04-05 Distech Controls Inc. Controlled appliance and method for interacting with a remote control device via the BLE standard
US11308793B2 (en) 2019-04-16 2022-04-19 Distech Controls Inc. Remote control device and method for interacting with a controlled appliance via the BLE standard
US11822301B2 (en) 2019-04-16 2023-11-21 Distech Controls Inc. Controlled appliance and method for interacting with a remote control device via the BLE standard
US11837081B2 (en) 2019-04-16 2023-12-05 Distech Controls Inc. Remote control device and method for interacting with a controlled appliance via the BLE standard

Similar Documents

Publication Publication Date Title
US20150042447A1 (en) Entertainment environment remote control and audio/video streaming method and system
US20210051361A1 (en) User defined rules for assigning destinations of content
US20200014979A1 (en) Methods and systems for providing relevant supplemental content to a user device
JP6231524B2 (en) System and method for providing media guidance application functionality using a wireless communication device
US20130173765A1 (en) Systems and methods for assigning roles between user devices
US9191689B2 (en) Systems and methods for translating generic requests into device specific requests based on location information
KR101184183B1 (en) Apparatus and methods for controlling an entertainment device using a mobile communication device
US20120324504A1 (en) Systems and methods for providing parental controls in a cloud-based media guidance application
US20140007154A1 (en) Systems and methods for providing individualized control of media assets
US20120114303A1 (en) Systems and methods for providing subtitles on a wireless communications device
US20110163939A1 (en) Systems and methods for transferring content between user equipment and a wireless communications device
CN1759386A (en) Method, system, and computer program product for managing controlled residential or non-residential environments
WO2013151901A1 (en) System and method for navigating content on a user equipment having multi- region touch sensitive display
CN113692746B (en) Networked television apparatus with knowledge-based media content recommendation and unified user interface
CN108521595A (en) Position method, apparatus and smart television are recommended in selection based on interactive voice
US20210014078A1 (en) Systems and methods for adjusting a media consumption environment based on changes in status of an object
US20150334439A1 (en) Method and system for displaying event messages related to subscribed video channels
CN108540851A (en) Position method, apparatus and smart television are recommended in selection based on interactive voice
US20210289261A1 (en) Mixing of Media Content Items for Display on a Focus Area of A Network-Connected Television Device
WO2015153640A1 (en) Entertainment environment remote control and audio/video streaming method and system
US11457278B2 (en) Method and apparatus for recording advertised media content
EP2793478A1 (en) Method for managing multimedia devices within a local environment and system for implementing this method
US11252461B2 (en) Media content casting in network-connected television devices
US20180048940A1 (en) Systems and methods for using a home security system to alert a user about a media event
JP2014017791A (en) Information communication program, information communication device and distribution server

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15773166

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15773166

Country of ref document: EP

Kind code of ref document: A1

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC ( EPO FORM 1205A DATED 31/05/2017 )

122 Ep: pct application non-entry in european phase

Ref document number: 15773166

Country of ref document: EP

Kind code of ref document: A1