US20150120813A2 - Pairing a media server and a media client - Google Patents
Pairing a media server and a media client Download PDFInfo
- Publication number
- US20150120813A2 US20150120813A2 US14/308,630 US201414308630A US2015120813A2 US 20150120813 A2 US20150120813 A2 US 20150120813A2 US 201414308630 A US201414308630 A US 201414308630A US 2015120813 A2 US2015120813 A2 US 2015120813A2
- Authority
- US
- United States
- Prior art keywords
- media
- media server
- code
- content
- pairing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
-
- H04L67/42—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/61—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
Definitions
- This patent application relates to pairing a media server and a media client.
- a media server provides access to media content, such as movies, televisions shows, and music.
- a media client communicates with the media server in order to access the media content.
- media servers and media clients occupy the same network neighborhood, making possible communication among the various media servers and clients. This is particularly true in relatively living close quarters, such as dormitories or apartment buildings, where several wireless networks occupy the same physical space.
- a family may include a single media client and multiple media servers.
- the process of enabling a media client to communicate with a media server is known as pairing.
- Disclosed herein is a process for pairing a media server and a media client to thereby enable communication between the two.
- this patent application describes a method performed by a media client.
- the method comprises entering a pairing mode, generating a first code for pairing with a media server, receiving a second code from the media server, determining if the first code corresponds to the second code, and pairing with the media server if the first code corresponds to the second code.
- This aspect may also include one or more of the following features.
- Pairing the media client with the media server may comprise responding to the media server that the first code corresponds to the second code, and enabling communicating between the media client and the media server.
- Communicating with the media server may comprise receiving, from the media server, a summary of content that is available to the media client for download, and selectively downloading content from the media server.
- Selective downloading of the media content may comprise retrieving content from the media server according to priority, where the priority dictates an order in which different types of content are to be downloaded.
- the types of content may comprise movies, televisions shows, music, podcasts, and photographs.
- the order in which different types of content may be downloaded may be movies, televisions shows, music, podcasts, and photographs.
- Communicating with the media server may comprise obtaining streaming content from the media server.
- the media server may comprises a first media server, and pairing with the media server may comprise an ability to synch content from the first media server to the media client for later presentation.
- the method performed by the media client may further comprise generating a third code for pairing with a second media server, receiving a fourth code from the second media server, determining if the third code corresponds to the fourth code, and accessing streaming content from the second media server if the third code corresponds to the fourth code and while a pairing with the first media server is maintained.
- this patent application describes a method performed by a media server.
- the method comprises receiving a code via an interface, outputting the code over a network, receiving an indication via the network that the code corresponds to a media client, and pairing the media server with the media client in response to the indication.
- This aspect may also include one or more of the following features.
- the method may further comprise sending, to the media client, a summary of content that is available on the media server for download, receiving data indicating content that the media client has selected for download, and providing selected content to the media client.
- the selected content may comprise streaming content.
- the interface may comprise a graphical user interface, and the method may further comprise generating the graphical user interface.
- this patent application is directed to a system for use in presenting media content.
- the system comprises a media server configured to provide media content, and a media client configured to obtain the media content from the media server and to present the media content on a device.
- the media client is configured to generate a first code and to transmit information to the media server.
- the information identifies the media client and the information indicates that the media client is available for pairing.
- the media server is configured to reply to the information with a second code that corresponds to the first code in order to enable pairing between the media server and the media client.
- This aspect may also include one or more of the following features.
- the media client may be configured to reply to the second code with an indication that the second code corresponds to the first code.
- the media server may be configured to provide, in response to the indication, a summary of media content available to the media client for download.
- the media client may be configured to selectively download media content from the media server. Selective downloading may comprise retrieving media content from the media server according to priority. The priority may dictate an order in which different types of media content are to be downloaded. The order in which different types of media content are to be downloaded may be movies, televisions shows, music, podcasts, and photographs.
- the media server may comprise a first media server.
- the system may further comprise a second media server configured to provide media content.
- the media client may be configured to generate a third code and to transmit information to the second media server.
- the information may identify the media client and indicate that the media client is available to receive media content.
- the second media server may be configured to reply to the information with a fourth code that corresponds to the third code in order to enable transmission of streaming media content from the second media server to the media client.
- the media client may remain paired to the first media server when streaming of media content to the second media server is enabled.
- this patent application describes a media client configured to communicate with a media server in order to receive media content.
- the media client comprises memory to store instructions for execution and a processing device to execute the instructions in order to pair with the media server and to present the media content for display.
- the instructions cause the processing device to generate a first code, receive a second code from the media server, pair the media client with the media server if the first code corresponds to the second code, and exchange communications with the media server following pairing.
- This aspect may also include one or more of the following features.
- a remote control device may be configured to communicate wirelessly with the processing device.
- the remote control device may comprise a touch-sensitive area for inputting control information used to control the media client.
- the touch-sensitive area may comprise part of a rotational input area.
- the remote control device may comprise a near-contact area for inputting control information used to control the media client. The near-contact area does not require contact in order to input the control information.
- FIG. 1 is a block diagram of a media client.
- FIG. 2 is a block diagram of system that includes the media client and media servers for exchanging media content among members of the system.
- FIG. 2A is a diagram of a remote control that may be used with the media client.
- FIG. 3 is a flowchart showing a process for pairing a media client and a media server for synching content between the two.
- FIG. 4 is a block diagram of a network neighborhood that includes media servers and media clients.
- FIG. 5 is a screen shot of a graphical user interface generated by a media server.
- FIG. 6 is a flowchart showing a process for pairing a media client and a media server for streaming content between the two.
- FIG. 1 presents a media processing device 100 that can be configured to present one or more types of media through an output device, including audio, video, images, or any combination thereof
- the media processing device 100 includes a processor 105 configured to control the operation of the media processing device 100 .
- the processor 105 can control communications with one or more media servers to receive media (also referred to as “media content”) for playback.
- the media can be received through push and/or pull operations, including through downloading and streaming.
- the processor 105 also can be configured to generate output signals for presentation, such as one or more streams representing media content or an interface for interacting with a user.
- the media processing device 100 also includes a storage device 110 that can be configured to store information including media, configuration data, and operating instructions.
- the storage device 110 can be any type of non-volatile storage, including a hard disk device or a solid-state drive.
- media received from an external media server can be stored on the storage device 110 .
- the received media thus can be locally accessed and processed.
- configuration information such as the resolution of a coupled display device or information identifying an associated media server, can be stored on the storage device 110 .
- the storage device 110 can include operating instructions executed by the processor 105 to control operation of the media processing device 100 .
- the storage device 110 can be divided into a plurality of partitions, wherein each partition can be utilized to store one or more types of information and can have custom access control provisions.
- a communication bus 115 couples the processor 105 to the other components and interfaces included in the media processing device 100 .
- the communication bus 115 can be configured to permit unidirectional and/or bidirectional communication between the components and interfaces.
- the processor 105 can retrieve information from, and transmit information to, the storage device 110 over the communication bus 115 .
- the communication bus 115 can be comprised of a plurality of busses, each of which couples at least one component or interface of the media processing device 100 with another component or interface.
- the media processing device 100 also includes a plurality of input and output interfaces for communicating with other devices, including media servers and presentation devices.
- a wired network interface 120 and a wireless network interface 125 each can be configured to permit the media processing device 100 to transmit and receive information over a network, such as a local area network (LAN) or the Internet.
- LAN local area network
- an input interface 130 can be configured to receive input from another device through a direct connection, such as a USB or an IEEE 1394 connection.
- an output interface 135 can be configured to couple the media processing device 100 to one or more external devices, including a television, a monitor, an audio receiver, and one or more speakers.
- the output interface 135 can include one or more of an optical audio interface, an RCA connector interface, a component video interface, and a High-Definition Multimedia Interface (HDMI).
- the output interface 135 also can be configured to provide one signal, such as an audio stream, to a first device and another signal, such as a video stream, to a second device.
- a memory 140 such as a random access memory (RAM) and/or a read-only memory (ROM) also can be included in the media processing device 100 .
- RAM random access memory
- ROM read-only memory
- the media processing device 100 can include a remote control interface 145 that can be configured to receive commands from one or more remote control devices (not pictured).
- the remote control interface 145 can receive the commands through wireless signals, such as infrared and radio frequency signals.
- the received commands can be utilized, such as by the processor 105 , to control media playback or to configure the media processing device 100 .
- FIG. 2 presents a media system 200 that includes a media processing device 205 , which may have the configuration of FIG. 1 .
- the media system 200 includes a host location 220 , such as a home or office, in which the media processing device 205 is installed.
- the host location 220 also can include a local media server 215 and a presentation device, such as a monitor 210 .
- the monitor 210 can be coupled to the media processing device 205 through a media connector 225 , such that video and/or audio information output by the media processing device 205 can be presented through the monitor 210 .
- the media processing device 205 can be coupled to the local media server 215 through a local connection 230 , such as a wired network connection, a wireless network connection, or a direct connection.
- the media processing device 205 can receive media content from the local media server 215 .
- the local media server 215 can be any computing device, including a personal computer, a server, a palm top computer, or a media device capable of storing and/or playing back media content.
- the media processing device 205 and the local media server 215 can include network connections 235 and 240 respectively, which provide access to a network 245 , such as the Internet.
- the media processing device 205 can communicate with a remote media server 250 and/or a media store 255 over the network 245 .
- a connection can be established between the media processing device 205 and the remote media server 250 .
- the connection can be secure or unsecure.
- the media processing device 205 can receive media content from the remote media server 250 , such as by streaming or downloading.
- the media processing device 205 acts as a media client of one or more devices and/or services from which it receives media content.
- the media processing device 205 can be configured to receive media content from a media store 255 .
- the media processing device 205 can request a list of available media content from the media store 255 .
- the list of available media content can include free content, such as trailers and podcasts, and for-purchase content, such as movies, television programs, and music.
- the media processing device 205 can be configured to communicate with the media store 255 to validate media content, such as by verifying digital rights management information.
- the media processing device 205 may be used to process, for example, audio data received over one or more networks. Such audio data may include metadata, e.g., song information related to the audio data received.
- the media processing device 205 may be used to process, for example, video data.
- video data may include metadata, e.g., programming information related to the video data received.
- the video data and related metadata may be provided by a single provider, or may be provided by separate providers.
- the media processing device 205 can present the video data in one or more contexts, such as a received/broadcast context and a recording/playback context.
- Processing video data in the received/broadcast context can include processing broadcast video data that is either live, e.g., a sporting event, or pre-recorded, e.g., a television programming event.
- the media processing device 205 may buffer the received video data.
- the video data can be buffered for the entire program.
- the video data can be buffered for a time period, e.g., twenty minutes.
- the media processing device may also buffer the video data during user-initiated events, such as during a pause. Thus, when the user resumes normal viewing, video data is processed from the pause time.
- Processing video data in the recording/playback context can include processing video data that is played back from a recording stored on the media processing device 205 .
- processing video data in the playback context can include processing video data that is stored on a remote data store and received over a network, such as a cable network.
- the media processing device 205 may perform playback processes such as play, pause, fast forward, rewind, etc.
- Each media processing device may include a remote control device.
- the remote control device can include a rotational input device configured to sense touch actuations and generate remote control signals therefrom.
- the touch actuations can include rotational actuations, such as when a user touches the rotational input device with a digit and rotates the digit on the surface of the rotational input device.
- the touch actuations can also include click actuations, such as when a user presses on the rotational input device with enough pressure to cause the remote control device to sense a click actuation.
- FIG. 2A is a block diagram of an example remote control device 328 for, e.g., media processing device 205 .
- the remote control device 328 includes a rotational input device 330 , a processing device 350 , and a wireless communication subsystem 352 .
- the rotational input device 330 defines a surface that can sense a touch actuation, such as the presence of a finger on the surface, and can further generate a control signal based on a rotation of the finger on the surface.
- a touch sensitive array is disposed beneath the surface of the rotational input device 330 .
- the touch sensitive array can be disposed according to polar coordinates, i.e., r and ⁇ , or can be disposed according to Cartesian coordinates, i.e., x and y, or other similar coordinate system.
- the rotational input device areas 360 , 362 , 364 , 366 and 368 are receptive to press actuations.
- the areas may include a menu area 360 , a reverse/previous area 362 , a play/pause area 364 , a forward/next area 366 , and a select area 368 .
- the areas 360 to 368 in addition to generating signals related to their descriptive functionalities, can also generate signals for context-dependent functionality.
- the menu area 360 can generate signals to support the functionality of dismissing an onscreen user interface
- the play/pause area 364 can generate signals to support the function of drilling down into a hierarchal user interface.
- the areas 360 to 368 comprise buttons disposed beneath the surface of the rotational input device 330 .
- the areas 360 to 368 comprise pressure sensitive actuators disposed beneath the surface of the rotational input device 330 .
- the processing device 350 is configured to receive the signals generated by the rotational input device 330 and generate corresponding remote control signals in response.
- the remote control signals can be provided to the communication subsystem 352 , which can wirelessly transmit the remote control signals to media processing device 205 , where they are received via remote control interface 145 .
- the rotational input device 330 can comprise a rectangular surface, a square surface, or some other shaped surface.
- Other surface geometries that accommodate pressure sensitive areas and that can sense touch actuations may also be used, e.g., an oblong area, an octagonal area, etc.
- the remote control device 328 can also include a separate actuation button 370 .
- the areas comprise a “+” or increase area 360 , a reverse/previous area 362 , a “ ⁇ ” or decrease area 364 , a forward/next area 366 , a play/pause area 368 , and a menu area 370 .
- the remote control device 328 can be operated using touch-based operations, near-contact operations or combinations thereof.
- the remote control device 328 can be embedded with a proximity detection mechanism that can sense the presence of an input device, for example, a user's finger, without requiring contact with the surface of the remote control device 328 .
- a user can use a key board and virtually any suitable pointing device (e.g., mouse, track ball, stylus, touch screen) to interact with control software associated with the media processing device.
- the pointing device can also be operated by a near contact screen (e.g., a touch screen) that employs a regional sensing field to detect objects in the proximity
- FIG. 3 shows a process 300 for pairing a media server and a media client. Pairing associates a media server and a media client so as to enable communication between the two. Communications may be exchanged over any type of wired or wireless connection, examples of which include, but are not limited to, Ethernet, telephone lines, wireless fidelity (Wi-Fi), and/or Bluetooth. The communications may include media content, such as movies, television shows, music, podcasts, and/or photographs. Pairing via process 300 may be implemented through computer programs executing on the media server and media client.
- synch pairing media content is transferred from a media server to the media client for later presentation on a device.
- media server 215 may transfer media content to media client 205 for presentation on monitor 210 .
- synch pairing media content is selected and all of the selected media content is downloaded to the media client prior to presentation.
- a predetermined amount of selected media content e.g., a chapter or episode
- streaming pairing media content, such as video, is presented substantially as it is downloaded.
- Streaming involves downloading the media content from a media server (e.g., media server 215 or media store 255 ) to the media client (e.g., media client 205 ), buffering the media content at the media client, and playing the media content in about real-time, e.g., about as it is being downloaded, on a device (e.g., monitor 210 ).
- a media server e.g., media server 215 or media store 255
- the media client e.g., media client 205
- playing the media content in about real-time, e.g., about as it is being downloaded, on a device (e.g., monitor 210 ).
- FIG. 4 shows multiple media servers 401 to 404 within a network neighborhood 406 of a media client 407 .
- Media servers 401 to 404 may be of the type described above with respect to FIG. 2
- media client 407 may be of the type described above with respect to FIG. 2 .
- Media client 407 is capable of communication with any one or more of media servers 401 to 404 .
- a user initiates process 300 ( FIG. 3 ) to pair media client 407 to one of the media servers 401 for synching. Pairing for streaming is described below.
- the left-hand portion shows actions performed by media client 407 and the right-hand portion shows actions performed by media server 401 .
- Media client 407 receives ( 301 ) a selection to synch to a new media server library. The selection may be input by a user via a drop-down menu on a graphical user interface (GUI) (not shown) generated by the media client and displayed on an associated video display device. The user selects to synch to a new media library.
- GUI graphical user interface
- media client 407 enters a pairing mode, during which media client 407 is capable of pairing with a corresponding media server.
- media client 407 generates ( 302 ) a code for use in pairing with a media server.
- the code is a randomly-generated five-digit number; however, any type of alphanumeric (or other) code may be used. Alternatively, the code may be user-assigned or obtained via other processes.
- Media client 407 uses multicast DNS (domain name service) to connect to a media server. Specifically, media client 407 transmits ( 303 ), to the network, information identifying the media client and indicating that the media client is available for pairing. The information may include a network address of the media client, such as its IP (Internet protocol) address. Media client 407 waits for a response to the information. In this implementation, pairing will not occur until a response is received.
- DNS domain name service
- media server 401 receives ( 304 ) a selection to synch to a media client. The selection may be received via a drop-down menu provided on a GUI generated by the media server.
- media server 401 generates ( 305 ) a GUI 501 ( FIG. 5 ), into which a user may input the code generated by the media client. That is, the user reads the code from a display device associated with the media client, and inputs the code 500 to GUI 501 . The user may also input the name 502 of the media client, in this case, “Apple TV”.
- Media server 401 receives ( 306 ) the code and uses the code to pair to media client 407 .
- media server 401 outputs ( 307 ) a message, which includes the code, over the network.
- the message includes a request to pair with a media client.
- Multiple media clients may be on the network, each of which may receive the request.
- an additional media client 408 may be present in network neighborhood 406 , and may also receive the code.
- Media client 407 receives ( 308 ) the request and code from media server 401 , and determines ( 309 ) if the code corresponds to the code that was generated by media client 407 .
- the two codes may match, or some mathematical algorithm may be used to compare the two codes to determine if they substantially correspond to each other.
- Media client 407 responds ( 310 ) to media server 401 indicating that the code provided by the media server match or, e.g., that the two codes are close enough to be considered equivalent.
- Other media clients in the network neighborhood such as media client 408 , may receive the code, but will not respond, since the code does not match codes generated by those other media clients. If a received code does not match a generated code, a media client may simply await receipt of a new code.
- Media server 401 receives ( 311 ) the response from media client 407 that the two codes correspond. Thereafter, media client 401 and media server 407 are paired, and communications may be exchanged between media server 401 and media client 407 .
- the communications may be coded using identities of the media server and media client, or the communications may be directed to the addresses of the media server and media client.
- media server 401 sends ( 312 ), to media client 407 , a summary of media content available for download on the media server.
- the summary may be a table of contents or other data identifying the media content.
- Media client 407 receives ( 313 ) the summary and presents the summary, or selected information contained therein, on a video display device.
- Media client 407 is then able to selectively download ( 314 ) media content from media server 401 .
- media client 407 retrieves or “pulls” content from the media server, e.g., by identifying the content in one or more requests that are sent to the media server.
- media server 401 sends the media content to media client 407 .
- the content may be downloaded according to a predefined priority, which dictates an order in which different types of media content are to be downloaded. For example, movies may be downloaded first, followed, in sequence, by television shows, music, podcasts, and photographs.
- a user may alter the predefined priority, e.g., to retrieve selected media content.
- the ability to download media content may be affected by the amount of storage space available on the media client. For example, if there is not sufficient storage space on the media client, newly-downloaded media content may take the place of content already on the media client. Alternatively, if there is not sufficient storage space on the media client, newly-selected media client may not be downloaded.
- a user may set download preferences in order to control how downloading occurs in this instances.
- media client 407 may present that media client on a device, such as a video display device and/or an audio device.
- the media client may synch to only one media server at a time, although this may not be the case in other implementations.
- the media client may also pair to other media servers in order to obtain streaming media content from those other media servers.
- the media client when pairing to other media servers for streaming purposes, the media client remains paired to its “synched” media server.
- the media client may obtain content for later presentation only from its synched media server.
- the media client may, however, pair with other media servers to obtain streaming content from those other media servers, including, e.g., a media store 255 ( FIG. 2 ).
- the media client may pair with five other media servers for this purpose; however, the pairing process is not so limited. In other implementations, any number of other media servers may be paired for streaming.
- FIG. 6 shows a process 600 for pairing a media client with a media server in order to obtain streaming media content from the media server.
- the streaming media content may include audio, video, podcasts, televisions shows, and/or other types of content.
- Process 600 is identical to process 300 , except that, initially, the user selects to connect to a new library for streaming purposes. This may be referred to as “sharing” content of a library.
- a media client 407 receives ( 601 ) the selection to connect to a library for sharing, and generates ( 602 ) a “sharing” code. Thereafter, process 600 proceeds in the same manner as process 300 , up to action 604 , where the media server (e.g., media server 402 ) receives a selection to share library content.
- the media server e.g., media server 402
- Process 600 then proceeds in a similar manner to process 300 up to action 614 .
- the media client 407 e.g., in response to user selection
- Media server 402 provides the streaming media content to the media client, where it may be cached for presentation, e.g., substantial real-time presentation.
- the processes described herein are not limited to use with any particular hardware, software, or programming language; they may find applicability in any computing or processing environment and with any type of machine that is capable of running machine-readable instructions. All or part of the processes can be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations thereof.
- Hardware on the client and/or server side may be, e.g., part of a desktop or laptop personal computer, a personal digital assistant (PDA), a cellular or other mobile telephone, a personal media player, etc.
- PDA personal digital assistant
- All or part of the processes can be implemented as a computer program product, e.g., a computer program tangibly embodied in an information carrier, e.g., in one or more machine-readable storage media or in a propagated signal, for execution by, or to control the operation of, data processing apparatus, e.g., a programmable processor, a computer, or multiple computers.
- a computer program can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment.
- a computer program can be deployed to be executed on one computer or on multiple computers at one site or distributed across multiple sites and interconnected by a communication network.
- Actions associated with the processes can be performed by one or more programmable processors executing one or more computer programs to perform the functions of the processes.
- the actions can also be performed by, and the processes can be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) and/or an ASIC (application-specific integrated circuit).
- special purpose logic circuitry e.g., an FPGA (field programmable gate array) and/or an ASIC (application-specific integrated circuit).
- processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer.
- a processor will receive instructions and data from a read-only storage area or a random access storage area or both.
- Elements of a computer include a processor for executing instructions and one or more storage area devices for storing instructions and data.
- a computer will also include, or be operatively coupled to receive data from, or transfer data to, or both, one or more mass storage devices for storing data, e.g., magnetic, magneto-optical disks, or optical disks.
- Information carriers suitable for embodying computer program instructions and data include all forms of non-volatile storage area, including by way of example, semiconductor storage area devices, e.g., EPROM, EEPROM, and flash storage area devices; magnetic disks, e.g., internal hard disks or removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks.
- semiconductor storage area devices e.g., EPROM, EEPROM, and flash storage area devices
- magnetic disks e.g., internal hard disks or removable disks
- magneto-optical disks e.g., CD-ROM and DVD-ROM disks.
- All or part of the processes can be implemented in a computing system that includes a back-end component, e.g., as a data server, or that includes a middleware component, e.g., an application server, or that includes a front-end component, e.g., a client computer having a graphical user interface, or any combination of such back-end, middleware, or front-end components.
- the components of the system can be interconnected by any form or medium of digital data communication, e.g., a communication network. Examples of communication networks include a LAN and a WAN, e.g., the Internet.
- Actions associated with the processes can be rearranged and/or one or more such actions can be omitted to achieve the same, or similar, results to those described herein.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
A system for use in presenting media content includes a media server configured to provide media content and a media client configured to obtain the media content from the media server and to present the media content on a device. The media client is configured to generate a first code and to transmit information to the media server. The information identifies the media client and the information indicates that the media client is available for pairing. The media server is configured to reply to the information with a second code that corresponds to the first code in order to enable pairing between the media server and the media client.
Description
- This is a continuation of U.S. patent application Ser. No. 13/609,219 filed Sep. 10, 2012 entitled “Pairing A Media Server And A Media Client,” which is a continuation of U.S. patent application Ser. No. 11/620,907, filed Jan. 8, 2007 entitled “Pairing A Media Server And A Media Client,” now U.S. Pat. No. 8,285,851 issued Oct. 9, 2012, each of which are incorporated herein by reference in its entirety.
- This patent application relates to pairing a media server and a media client.
- Generally speaking, a media server provides access to media content, such as movies, televisions shows, and music. A media client communicates with the media server in order to access the media content. Often, several media servers and media clients occupy the same network neighborhood, making possible communication among the various media servers and clients. This is particularly true in relatively living close quarters, such as dormitories or apartment buildings, where several wireless networks occupy the same physical space.
- Although communication may be possible among various media servers and clients, typically, communication is desired among a limited number of media servers and media clients. For example, a family may include a single media client and multiple media servers. The process of enabling a media client to communicate with a media server is known as pairing.
- Disclosed herein is a process for pairing a media server and a media client to thereby enable communication between the two.
- In general, in one aspect, this patent application describes a method performed by a media client. The method comprises entering a pairing mode, generating a first code for pairing with a media server, receiving a second code from the media server, determining if the first code corresponds to the second code, and pairing with the media server if the first code corresponds to the second code. This aspect may also include one or more of the following features.
- Pairing the media client with the media server may comprise responding to the media server that the first code corresponds to the second code, and enabling communicating between the media client and the media server. Communicating with the media server may comprise receiving, from the media server, a summary of content that is available to the media client for download, and selectively downloading content from the media server. Selective downloading of the media content may comprise retrieving content from the media server according to priority, where the priority dictates an order in which different types of content are to be downloaded. The types of content may comprise movies, televisions shows, music, podcasts, and photographs. The order in which different types of content may be downloaded may be movies, televisions shows, music, podcasts, and photographs.
- Communicating with the media server may comprise obtaining streaming content from the media server. The media server may comprises a first media server, and pairing with the media server may comprise an ability to synch content from the first media server to the media client for later presentation. The method performed by the media client may further comprise generating a third code for pairing with a second media server, receiving a fourth code from the second media server, determining if the third code corresponds to the fourth code, and accessing streaming content from the second media server if the third code corresponds to the fourth code and while a pairing with the first media server is maintained.
- In general, in another aspect, this patent application describes a method performed by a media server. The method comprises receiving a code via an interface, outputting the code over a network, receiving an indication via the network that the code corresponds to a media client, and pairing the media server with the media client in response to the indication. This aspect may also include one or more of the following features.
- The method may further comprise sending, to the media client, a summary of content that is available on the media server for download, receiving data indicating content that the media client has selected for download, and providing selected content to the media client. The selected content may comprise streaming content. The interface may comprise a graphical user interface, and the method may further comprise generating the graphical user interface.
- In general, in another aspect, this patent application is directed to a system for use in presenting media content. The system comprises a media server configured to provide media content, and a media client configured to obtain the media content from the media server and to present the media content on a device. The media client is configured to generate a first code and to transmit information to the media server. The information identifies the media client and the information indicates that the media client is available for pairing. The media server is configured to reply to the information with a second code that corresponds to the first code in order to enable pairing between the media server and the media client. This aspect may also include one or more of the following features.
- The media client may be configured to reply to the second code with an indication that the second code corresponds to the first code. The media server may be configured to provide, in response to the indication, a summary of media content available to the media client for download. The media client may be configured to selectively download media content from the media server. Selective downloading may comprise retrieving media content from the media server according to priority. The priority may dictate an order in which different types of media content are to be downloaded. The order in which different types of media content are to be downloaded may be movies, televisions shows, music, podcasts, and photographs.
- The media server may comprise a first media server. The system may further comprise a second media server configured to provide media content. The media client may be configured to generate a third code and to transmit information to the second media server. The information may identify the media client and indicate that the media client is available to receive media content. The second media server may be configured to reply to the information with a fourth code that corresponds to the third code in order to enable transmission of streaming media content from the second media server to the media client. The media client may remain paired to the first media server when streaming of media content to the second media server is enabled.
- In general, in another aspect, this patent application describes a media client configured to communicate with a media server in order to receive media content. The media client comprises memory to store instructions for execution and a processing device to execute the instructions in order to pair with the media server and to present the media content for display. The instructions cause the processing device to generate a first code, receive a second code from the media server, pair the media client with the media server if the first code corresponds to the second code, and exchange communications with the media server following pairing. This aspect may also include one or more of the following features.
- A remote control device may be configured to communicate wirelessly with the processing device. The remote control device may comprise a touch-sensitive area for inputting control information used to control the media client. The touch-sensitive area may comprise part of a rotational input area. The remote control device may comprise a near-contact area for inputting control information used to control the media client. The near-contact area does not require contact in order to input the control information.
- The details of one or more examples are set forth in the accompanying drawings and the description below. Further features, aspects, and advantages are apparent in the description, the drawings, and the claims.
-
FIG. 1 is a block diagram of a media client. -
FIG. 2 is a block diagram of system that includes the media client and media servers for exchanging media content among members of the system. -
FIG. 2A is a diagram of a remote control that may be used with the media client. -
FIG. 3 is a flowchart showing a process for pairing a media client and a media server for synching content between the two. -
FIG. 4 is a block diagram of a network neighborhood that includes media servers and media clients. -
FIG. 5 is a screen shot of a graphical user interface generated by a media server. -
FIG. 6 is a flowchart showing a process for pairing a media client and a media server for streaming content between the two. -
FIG. 1 presents amedia processing device 100 that can be configured to present one or more types of media through an output device, including audio, video, images, or any combination thereof Themedia processing device 100 includes aprocessor 105 configured to control the operation of themedia processing device 100. For example, theprocessor 105 can control communications with one or more media servers to receive media (also referred to as “media content”) for playback. The media can be received through push and/or pull operations, including through downloading and streaming. Theprocessor 105 also can be configured to generate output signals for presentation, such as one or more streams representing media content or an interface for interacting with a user. - The
media processing device 100 also includes astorage device 110 that can be configured to store information including media, configuration data, and operating instructions. Thestorage device 110 can be any type of non-volatile storage, including a hard disk device or a solid-state drive. For example, media received from an external media server can be stored on thestorage device 110. The received media thus can be locally accessed and processed. Further, configuration information, such as the resolution of a coupled display device or information identifying an associated media server, can be stored on thestorage device 110. Additionally, thestorage device 110 can include operating instructions executed by theprocessor 105 to control operation of themedia processing device 100. In an implementation, thestorage device 110 can be divided into a plurality of partitions, wherein each partition can be utilized to store one or more types of information and can have custom access control provisions. - A
communication bus 115 couples theprocessor 105 to the other components and interfaces included in themedia processing device 100. Thecommunication bus 115 can be configured to permit unidirectional and/or bidirectional communication between the components and interfaces. For example, theprocessor 105 can retrieve information from, and transmit information to, thestorage device 110 over thecommunication bus 115. In an implementation, thecommunication bus 115 can be comprised of a plurality of busses, each of which couples at least one component or interface of themedia processing device 100 with another component or interface. - The
media processing device 100 also includes a plurality of input and output interfaces for communicating with other devices, including media servers and presentation devices. Awired network interface 120 and awireless network interface 125 each can be configured to permit themedia processing device 100 to transmit and receive information over a network, such as a local area network (LAN) or the Internet. Additionally, aninput interface 130 can be configured to receive input from another device through a direct connection, such as a USB or an IEEE 1394 connection. - Further, an
output interface 135 can be configured to couple themedia processing device 100 to one or more external devices, including a television, a monitor, an audio receiver, and one or more speakers. For example, theoutput interface 135 can include one or more of an optical audio interface, an RCA connector interface, a component video interface, and a High-Definition Multimedia Interface (HDMI). Theoutput interface 135 also can be configured to provide one signal, such as an audio stream, to a first device and another signal, such as a video stream, to a second device. Further, amemory 140, such as a random access memory (RAM) and/or a read-only memory (ROM) also can be included in themedia processing device 100. As with thestorage device 110, a plurality of types of information, including configuration data and operating instructions, can be stored in thememory 140. - Additionally, the
media processing device 100 can include aremote control interface 145 that can be configured to receive commands from one or more remote control devices (not pictured). Theremote control interface 145 can receive the commands through wireless signals, such as infrared and radio frequency signals. The received commands can be utilized, such as by theprocessor 105, to control media playback or to configure themedia processing device 100. -
FIG. 2 presents amedia system 200 that includes amedia processing device 205, which may have the configuration ofFIG. 1 . Themedia system 200 includes ahost location 220, such as a home or office, in which themedia processing device 205 is installed. Thehost location 220 also can include alocal media server 215 and a presentation device, such as amonitor 210. Themonitor 210 can be coupled to themedia processing device 205 through amedia connector 225, such that video and/or audio information output by themedia processing device 205 can be presented through themonitor 210. Further, themedia processing device 205 can be coupled to thelocal media server 215 through alocal connection 230, such as a wired network connection, a wireless network connection, or a direct connection. As such, themedia processing device 205 can receive media content from thelocal media server 215. Thelocal media server 215 can be any computing device, including a personal computer, a server, a palm top computer, or a media device capable of storing and/or playing back media content. - Further, the
media processing device 205 and thelocal media server 215 can includenetwork connections network 245, such as the Internet. In an implementation, themedia processing device 205 can communicate with aremote media server 250 and/or amedia store 255 over thenetwork 245. For example, a connection can be established between themedia processing device 205 and theremote media server 250. The connection can be secure or unsecure. Thereafter, themedia processing device 205 can receive media content from theremote media server 250, such as by streaming or downloading. Thus, themedia processing device 205 acts as a media client of one or more devices and/or services from which it receives media content. - In this regard, the
media processing device 205 can be configured to receive media content from amedia store 255. For example, upon establishing a connection, themedia processing device 205 can request a list of available media content from themedia store 255. The list of available media content can include free content, such as trailers and podcasts, and for-purchase content, such as movies, television programs, and music. Additionally, themedia processing device 205 can be configured to communicate with themedia store 255 to validate media content, such as by verifying digital rights management information. - The
media processing device 205 may be used to process, for example, audio data received over one or more networks. Such audio data may include metadata, e.g., song information related to the audio data received. Themedia processing device 205 may be used to process, for example, video data. Such video data may include metadata, e.g., programming information related to the video data received. The video data and related metadata may be provided by a single provider, or may be provided by separate providers. Themedia processing device 205 can present the video data in one or more contexts, such as a received/broadcast context and a recording/playback context. - Processing video data in the received/broadcast context can include processing broadcast video data that is either live, e.g., a sporting event, or pre-recorded, e.g., a television programming event. In the received context, the
media processing device 205 may buffer the received video data. The video data can be buffered for the entire program. The video data can be buffered for a time period, e.g., twenty minutes. The media processing device may also buffer the video data during user-initiated events, such as during a pause. Thus, when the user resumes normal viewing, video data is processed from the pause time. - Processing video data in the recording/playback context can include processing video data that is played back from a recording stored on the
media processing device 205. In another implementation, processing video data in the playback context can include processing video data that is stored on a remote data store and received over a network, such as a cable network. In both playback implementations themedia processing device 205 may perform playback processes such as play, pause, fast forward, rewind, etc. - Each media processing device may include a remote control device. The remote control device can include a rotational input device configured to sense touch actuations and generate remote control signals therefrom. The touch actuations can include rotational actuations, such as when a user touches the rotational input device with a digit and rotates the digit on the surface of the rotational input device. The touch actuations can also include click actuations, such as when a user presses on the rotational input device with enough pressure to cause the remote control device to sense a click actuation.
-
FIG. 2A is a block diagram of an exampleremote control device 328 for, e.g.,media processing device 205. Theremote control device 328 includes arotational input device 330, aprocessing device 350, and a wireless communication subsystem 352. Therotational input device 330 defines a surface that can sense a touch actuation, such as the presence of a finger on the surface, and can further generate a control signal based on a rotation of the finger on the surface. In one implementation, a touch sensitive array is disposed beneath the surface of therotational input device 330. The touch sensitive array can be disposed according to polar coordinates, i.e., r and Θ, or can be disposed according to Cartesian coordinates, i.e., x and y, or other similar coordinate system. - The rotational
input device areas previous area 362, a play/pause area 364, a forward/next area 366, and a select area 368. The areas 360 to 368, in addition to generating signals related to their descriptive functionalities, can also generate signals for context-dependent functionality. For example, the menu area 360 can generate signals to support the functionality of dismissing an onscreen user interface, and the play/pause area 364 can generate signals to support the function of drilling down into a hierarchal user interface. In one implementation, the areas 360 to 368 comprise buttons disposed beneath the surface of therotational input device 330. In another implementation, the areas 360 to 368 comprise pressure sensitive actuators disposed beneath the surface of therotational input device 330. - The
processing device 350 is configured to receive the signals generated by therotational input device 330 and generate corresponding remote control signals in response. The remote control signals can be provided to the communication subsystem 352, which can wirelessly transmit the remote control signals tomedia processing device 205, where they are received viaremote control interface 145. - Although shown as comprising a circular surface, in another implementation, the
rotational input device 330 can comprise a rectangular surface, a square surface, or some other shaped surface. Other surface geometries that accommodate pressure sensitive areas and that can sense touch actuations may also be used, e.g., an oblong area, an octagonal area, etc. - Other actuation area configurations may also be used. For example, in another implementation, the
remote control device 328 can also include aseparate actuation button 370. In this implementation, the areas comprise a “+” or increase area 360, a reverse/previous area 362, a “−” ordecrease area 364, a forward/next area 366, a play/pause area 368, and amenu area 370. - In other implementations, the
remote control device 328 can be operated using touch-based operations, near-contact operations or combinations thereof. For example, theremote control device 328 can be embedded with a proximity detection mechanism that can sense the presence of an input device, for example, a user's finger, without requiring contact with the surface of theremote control device 328. - A user can use a key board and virtually any suitable pointing device (e.g., mouse, track ball, stylus, touch screen) to interact with control software associated with the media processing device. The pointing device can also be operated by a near contact screen (e.g., a touch screen) that employs a regional sensing field to detect objects in the proximity
-
FIG. 3 shows aprocess 300 for pairing a media server and a media client. Pairing associates a media server and a media client so as to enable communication between the two. Communications may be exchanged over any type of wired or wireless connection, examples of which include, but are not limited to, Ethernet, telephone lines, wireless fidelity (Wi-Fi), and/or Bluetooth. The communications may include media content, such as movies, television shows, music, podcasts, and/or photographs. Pairing viaprocess 300 may be implemented through computer programs executing on the media server and media client. - There are two types of pairing that may be set between a media server and a media client. These two types are referred to as synchronized (synch) pairing and streaming pairing. During synch pairing, media content is transferred from a media server to the media client for later presentation on a device. For example,
media server 215 may transfer media content tomedia client 205 for presentation onmonitor 210. During synch pairing, media content is selected and all of the selected media content is downloaded to the media client prior to presentation. Alternatively, rather than downloading all of the selected media content, a predetermined amount of selected media content (e.g., a chapter or episode) may be downloaded, and the rest may be downloaded at a later time. During streaming pairing, media content, such as video, is presented substantially as it is downloaded. Streaming involves downloading the media content from a media server (e.g.,media server 215 or media store 255) to the media client (e.g., media client 205), buffering the media content at the media client, and playing the media content in about real-time, e.g., about as it is being downloaded, on a device (e.g., monitor 210). -
FIG. 4 showsmultiple media servers 401 to 404 within anetwork neighborhood 406 of amedia client 407.Media servers 401 to 404 may be of the type described above with respect toFIG. 2 , andmedia client 407 may be of the type described above with respect toFIG. 2 .Media client 407 is capable of communication with any one or more ofmedia servers 401 to 404. A user initiates process 300 (FIG. 3 ) to pairmedia client 407 to one of themedia servers 401 for synching. Pairing for streaming is described below. - Referring to
FIG. 3 , the left-hand portion shows actions performed bymedia client 407 and the right-hand portion shows actions performed bymedia server 401.Media client 407 receives (301) a selection to synch to a new media server library. The selection may be input by a user via a drop-down menu on a graphical user interface (GUI) (not shown) generated by the media client and displayed on an associated video display device. The user selects to synch to a new media library. Following selection,media client 407 enters a pairing mode, during whichmedia client 407 is capable of pairing with a corresponding media server. In the pairing mode,media client 407 generates (302) a code for use in pairing with a media server. In one implementation, the code is a randomly-generated five-digit number; however, any type of alphanumeric (or other) code may be used. Alternatively, the code may be user-assigned or obtained via other processes. -
Media client 407 uses multicast DNS (domain name service) to connect to a media server. Specifically,media client 407 transmits (303), to the network, information identifying the media client and indicating that the media client is available for pairing. The information may include a network address of the media client, such as its IP (Internet protocol) address.Media client 407 waits for a response to the information. In this implementation, pairing will not occur until a response is received. - To effect pairing, the code generated by
media client 407 is provided tomedia server 401. Specifically,media server 401 receives (304) a selection to synch to a media client. The selection may be received via a drop-down menu provided on a GUI generated by the media server. In response to the selection,media server 401 generates (305) a GUI 501 (FIG. 5 ), into which a user may input the code generated by the media client. That is, the user reads the code from a display device associated with the media client, and inputs thecode 500 toGUI 501. The user may also input the name 502 of the media client, in this case, “Apple TV”.Media server 401 receives (306) the code and uses the code to pair tomedia client 407. In particular,media server 401 outputs (307) a message, which includes the code, over the network. The message includes a request to pair with a media client. Multiple media clients may be on the network, each of which may receive the request. For example, as shown inFIG. 4 , an additional media client 408 may be present innetwork neighborhood 406, and may also receive the code. -
Media client 407 receives (308) the request and code frommedia server 401, and determines (309) if the code corresponds to the code that was generated bymedia client 407. For example, the two codes may match, or some mathematical algorithm may be used to compare the two codes to determine if they substantially correspond to each other.Media client 407 responds (310) tomedia server 401 indicating that the code provided by the media server match or, e.g., that the two codes are close enough to be considered equivalent. Other media clients in the network neighborhood, such as media client 408, may receive the code, but will not respond, since the code does not match codes generated by those other media clients. If a received code does not match a generated code, a media client may simply await receipt of a new code. -
Media server 401 receives (311) the response frommedia client 407 that the two codes correspond. Thereafter,media client 401 andmedia server 407 are paired, and communications may be exchanged betweenmedia server 401 andmedia client 407. The communications may be coded using identities of the media server and media client, or the communications may be directed to the addresses of the media server and media client. - In this example,
media server 401 sends (312), tomedia client 407, a summary of media content available for download on the media server. The summary may be a table of contents or other data identifying the media content.Media client 407 receives (313) the summary and presents the summary, or selected information contained therein, on a video display device.Media client 407 is then able to selectively download (314) media content frommedia server 401. In particular,media client 407 retrieves or “pulls” content from the media server, e.g., by identifying the content in one or more requests that are sent to the media server. In response to such request(s),media server 401 sends the media content tomedia client 407. - The content may be downloaded according to a predefined priority, which dictates an order in which different types of media content are to be downloaded. For example, movies may be downloaded first, followed, in sequence, by television shows, music, podcasts, and photographs. A user may alter the predefined priority, e.g., to retrieve selected media content. Furthermore, the ability to download media content may be affected by the amount of storage space available on the media client. For example, if there is not sufficient storage space on the media client, newly-downloaded media content may take the place of content already on the media client. Alternatively, if there is not sufficient storage space on the media client, newly-selected media client may not be downloaded. A user may set download preferences in order to control how downloading occurs in this instances.
- Once media content has been downloaded,
media client 407 may present that media client on a device, such as a video display device and/or an audio device. - The foregoing describes pairing in order to download media content for later presentation (i.e., “synching” the media client and the media server). In this implementation, the media client may synch to only one media server at a time, although this may not be the case in other implementations. As noted above, the media client may also pair to other media servers in order to obtain streaming media content from those other media servers. In this implementation, when pairing to other media servers for streaming purposes, the media client remains paired to its “synched” media server. As a result, in this implementation, the media client may obtain content for later presentation only from its synched media server. The media client may, however, pair with other media servers to obtain streaming content from those other media servers, including, e.g., a media store 255 (
FIG. 2 ). In one implementation, the media client may pair with five other media servers for this purpose; however, the pairing process is not so limited. In other implementations, any number of other media servers may be paired for streaming. -
FIG. 6 shows aprocess 600 for pairing a media client with a media server in order to obtain streaming media content from the media server. The streaming media content may include audio, video, podcasts, televisions shows, and/or other types of content.Process 600 is identical to process 300, except that, initially, the user selects to connect to a new library for streaming purposes. This may be referred to as “sharing” content of a library. Amedia client 407 receives (601) the selection to connect to a library for sharing, and generates (602) a “sharing” code. Thereafter,process 600 proceeds in the same manner asprocess 300, up to action 604, where the media server (e.g., media server 402) receives a selection to share library content.Process 600 then proceeds in a similar manner to process 300 up to action 614. At that point, the media client 407 (e.g., in response to user selection) requests (614) streaming media content frommedia server 402.Media server 402 provides the streaming media content to the media client, where it may be cached for presentation, e.g., substantial real-time presentation. - The processes described herein are not limited to use with any particular hardware, software, or programming language; they may find applicability in any computing or processing environment and with any type of machine that is capable of running machine-readable instructions. All or part of the processes can be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations thereof. Hardware on the client and/or server side may be, e.g., part of a desktop or laptop personal computer, a personal digital assistant (PDA), a cellular or other mobile telephone, a personal media player, etc.
- All or part of the processes can be implemented as a computer program product, e.g., a computer program tangibly embodied in an information carrier, e.g., in one or more machine-readable storage media or in a propagated signal, for execution by, or to control the operation of, data processing apparatus, e.g., a programmable processor, a computer, or multiple computers. A computer program can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program can be deployed to be executed on one computer or on multiple computers at one site or distributed across multiple sites and interconnected by a communication network.
- Actions associated with the processes can be performed by one or more programmable processors executing one or more computer programs to perform the functions of the processes. The actions can also be performed by, and the processes can be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) and/or an ASIC (application-specific integrated circuit).
- Processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer. Generally, a processor will receive instructions and data from a read-only storage area or a random access storage area or both. Elements of a computer include a processor for executing instructions and one or more storage area devices for storing instructions and data. Generally, a computer will also include, or be operatively coupled to receive data from, or transfer data to, or both, one or more mass storage devices for storing data, e.g., magnetic, magneto-optical disks, or optical disks. Information carriers suitable for embodying computer program instructions and data include all forms of non-volatile storage area, including by way of example, semiconductor storage area devices, e.g., EPROM, EEPROM, and flash storage area devices; magnetic disks, e.g., internal hard disks or removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks.
- All or part of the processes can be implemented in a computing system that includes a back-end component, e.g., as a data server, or that includes a middleware component, e.g., an application server, or that includes a front-end component, e.g., a client computer having a graphical user interface, or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication, e.g., a communication network. Examples of communication networks include a LAN and a WAN, e.g., the Internet.
- Actions associated with the processes can be rearranged and/or one or more such actions can be omitted to achieve the same, or similar, results to those described herein.
- Elements of different implementations described herein may be combined to form other embodiments not specifically set forth above. Other implementations not specifically described herein are also within the scope of the following claims.
Claims (20)
1. A method for generating, at a media processing device, a graphical user interface (GUI) configured to enable the media processing device to pair with a media server, the method comprising:
at the media processing device:
identifying, over one or more networks, that the media server is available for pairing;
displaying, within the GUI, a first code for pairing with the media server;
receiving a message from the media server, wherein the message includes a second code that is input by a user at the media server;
determining whether the second code corresponds to the first code;
when the second code corresponds to the first code:
pairing with the media server, and
downloading, from the media server, a summary of at least a portion of media content managed by the media server; and
when the second code does not correspond to the first code:
ignoring the message.
2. The method of claim 1 , wherein pairing with the media server comprises:
responding to the media server that the first code corresponds to the second code, and
enabling communication between the media processing device and the media server.
3. The method of claim 1 , wherein the summary of the at least a portion of media content presents a list of media content that can be selectively downloaded from the media server.
4. The method of claim 3 , wherein selectively downloading comprises retrieving content from the media server according to a priority that dictates an order in which different types of content are to be downloaded from the media server.
5. The method of claim 4 , wherein the different types of content include movies, television shows, music, podcasts, and photographs that are managed by the media server, and the order in which the different types of content are to be downloaded is movies, television shows, music, podcasts, and photographs, respectively.
6. The method of claim 1 , further comprising:
sending a request to download the media content from the media server via a synchronization mode or a streaming mode according to a selection by the user.
7. The method of claim 1 , wherein ignoring the message, comprises waiting to receive a new message from the media server, wherein the new message includes a new code to correspond with the first code.
8. A non-transitory computer readable storage medium configured to store instructions that, when executed by a processor included in a media processing device, cause the media processing device to carry out steps that include:
identifying, over one or more networks, that the media server is available for pairing;
displaying, within the GUI, a first code for pairing with the media server;
receiving a message from the media server, wherein the message includes a second code that is input by a user at the media server;
determining whether the second code corresponds to the first code;
when the second code corresponds to the first code:
pairing with the media server, and
downloading, from the media server, a summary of at least a portion of media content managed by the media server; and
when the second code does not correspond to the first code:
ignoring the message.
9. The non-transitory computer readable storage medium of claim 8 , wherein pairing with the media server comprises:
responding to the media server that the first code corresponds to the second code, and
enabling communication between the media processing device and the media server.
10. The non-transitory computer readable storage medium of claim 8 , wherein the summary of the at least a portion of media content presents a list of media content that can be selectively downloaded from the media server.
11. The non-transitory computer readable storage medium of claim 10 , wherein selectively downloading comprises retrieving content from the media server according to a priority that dictates an order in which different types of content are to be downloaded from the media server.
12. The non-transitory computer readable storage medium of claim 11 , wherein the different types of content include movies, television shows, music, podcasts, and photographs that are managed by the media server, and the order in which the different types of content are to be downloaded is movies, television shows, music, podcasts, and photographs, respectively.
13. The non-transitory computer readable storage medium of claim 8 , further comprising:
sending a request to download the media content from the media server via a synchronization mode or a streaming mode according to a selection by the user.
14. A system for pairing a media processing device to a media server, the system comprising:
a media processing device, comprising:
a storage device;
a processor; and
a memory configured to store instructions that, when executed by the processor, cause the media processing device to carry out steps that include:
identifying, over one or more networks, that the media server is available for pairing;
displaying, within a graphical user interface (GUI), a first code for pairing with the media server;
receiving a message from the media server, wherein the message includes a second code that is input by a user at the media server;
determining whether the second code corresponds to the first code;
when the second code corresponds to the first code:
pairing with the media server, and
downloading, from the media server, a summary of at least a portion of media content managed by the media server; and
when the second code does not correspond to the first code:
ignoring the message; and
a media server, comprising:
a storage device;
a processor; and
a memory configured to store instructions that, when executed by the processor, cause the media server to carry out steps that include:
in response to a request for pairing, receiving, via user input, the second code;
sending, via the message, the second to the media processing device;
receiving an indication from the media processing device that the second code corresponds to the first code; and
sending the summary of the at least a portion of the media content to the media processing device that is available for download.
15. The system of claim 14 , wherein pairing with the media server comprises:
responding to the media server that the first code corresponds to the second code, and
enabling communication between the media processing device and the media server.
16. The system of claim 15 , wherein the summary of the at least a portion of media content presents a list of media content that can be selectively downloaded from the media server.
17. The system of claim 16 , wherein selectively downloading comprises retrieving content from the media server according to a priority that dictates an order in which different types of content are to be downloaded from the media server.
18. The system of claim 17 , wherein
the different types of content include movies, television shows, music, podcasts, and photographs that are managed by the media server, and the order in which the different types of content are to be downloaded is movies, television shows, music, podcasts, and photographs, respectively.
19. The system of claim 14 , wherein the media processing device steps further include:
sending a request to download the media content from the media server via a synchronization mode or a streaming mode according to a selection by the user.
20. The system of claim 14 , wherein the media server steps further include:
receiving data indicating the media content that is selected for download; and
providing the media content that is selected for download via a synchronization mode or a streaming mode.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/308,630 US20150120813A2 (en) | 2007-01-08 | 2014-06-18 | Pairing a media server and a media client |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/620,907 US8285851B2 (en) | 2007-01-08 | 2007-01-08 | Pairing a media server and a media client |
US13/609,219 US8769054B2 (en) | 2007-01-08 | 2012-09-10 | Pairing a media server and a media client |
US14/308,630 US20150120813A2 (en) | 2007-01-08 | 2014-06-18 | Pairing a media server and a media client |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/609,219 Continuation US8769054B2 (en) | 2007-01-08 | 2012-09-10 | Pairing a media server and a media client |
Publications (2)
Publication Number | Publication Date |
---|---|
US20140304329A1 US20140304329A1 (en) | 2014-10-09 |
US20150120813A2 true US20150120813A2 (en) | 2015-04-30 |
Family
ID=39467273
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/620,907 Active 2030-06-10 US8285851B2 (en) | 2007-01-08 | 2007-01-08 | Pairing a media server and a media client |
US13/609,219 Active US8769054B2 (en) | 2007-01-08 | 2012-09-10 | Pairing a media server and a media client |
US14/308,630 Abandoned US20150120813A2 (en) | 2007-01-08 | 2014-06-18 | Pairing a media server and a media client |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/620,907 Active 2030-06-10 US8285851B2 (en) | 2007-01-08 | 2007-01-08 | Pairing a media server and a media client |
US13/609,219 Active US8769054B2 (en) | 2007-01-08 | 2012-09-10 | Pairing a media server and a media client |
Country Status (2)
Country | Link |
---|---|
US (3) | US8285851B2 (en) |
WO (1) | WO2008086275A2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150227294A1 (en) * | 2014-02-11 | 2015-08-13 | Wowza Media Systems, LLC | Server configuration interface including stream preview |
US20170295242A1 (en) * | 2016-04-06 | 2017-10-12 | Hrb Innovations, Inc. | Workstation and client device pairing |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8285851B2 (en) | 2007-01-08 | 2012-10-09 | Apple Inc. | Pairing a media server and a media client |
US20090327244A1 (en) * | 2008-06-24 | 2009-12-31 | Dharmarus Rizal | Method, process, apparatus and system for peer-to-peer media sharing, transmissions and distributions |
US8392505B2 (en) * | 2008-09-26 | 2013-03-05 | Apple Inc. | Collaborative playlist management |
WO2010050817A1 (en) * | 2008-11-03 | 2010-05-06 | Telenor Asa | Content brokering system |
US8830866B2 (en) * | 2009-09-30 | 2014-09-09 | Apple Inc. | Methods and apparatus for solicited activation for protected wireless networking |
US8873523B2 (en) * | 2009-09-30 | 2014-10-28 | Apple Inc. | Methods and apparatus for solicited activation for protected wireless networking |
CA2889724C (en) * | 2009-12-21 | 2021-06-08 | Kik Interactive Inc. | Systems and methods for accessing and controlling media stored remotely |
US9247286B2 (en) * | 2009-12-31 | 2016-01-26 | Broadcom Corporation | Frame formatting supporting mixed two and three dimensional video data communication |
US8964013B2 (en) * | 2009-12-31 | 2015-02-24 | Broadcom Corporation | Display with elastic light manipulator |
US8823782B2 (en) * | 2009-12-31 | 2014-09-02 | Broadcom Corporation | Remote control with integrated position, viewer identification and optical and audio test |
US8854531B2 (en) | 2009-12-31 | 2014-10-07 | Broadcom Corporation | Multiple remote controllers that each simultaneously controls a different visual presentation of a 2D/3D display |
US8464061B2 (en) | 2010-08-30 | 2013-06-11 | Apple Inc. | Secure wireless link between two devices using probes |
US8749452B2 (en) * | 2010-12-31 | 2014-06-10 | Ebay Inc. | Methods and systems for displaying content on multiple networked devices with a simple command |
US9767195B2 (en) * | 2011-04-21 | 2017-09-19 | Touchstream Technologies, Inc. | Virtualized hosting and displaying of content using a swappable media player |
US9107055B2 (en) | 2011-06-14 | 2015-08-11 | Sonifi Solutions, Inc. | Method and apparatus for pairing a mobile device to an output device |
US8903978B2 (en) | 2011-06-14 | 2014-12-02 | Sonifi Solutions, Inc. | Method and apparatus for pairing a mobile device to an output device |
US9525907B2 (en) * | 2012-08-23 | 2016-12-20 | Smugmug, Inc. | Hardware device for multimedia transmission |
US9930139B2 (en) * | 2013-01-31 | 2018-03-27 | International Business Machines Corporation | Enabling access to user-chosen and/or preferred content via remote trusted third-party systems |
US10348778B2 (en) * | 2013-02-08 | 2019-07-09 | Avaya Inc. | Dynamic device pairing with media server audio substitution |
EP2816761A1 (en) * | 2013-06-17 | 2014-12-24 | Thomson Licensing | Wifi display compatible network gateway |
USD800140S1 (en) * | 2013-09-03 | 2017-10-17 | Samsung Electronics Co., Ltd. | Display screen or portion thereof with graphical user interface |
US20160088079A1 (en) * | 2014-09-21 | 2016-03-24 | Alcatel Lucent | Streaming playout of media content using interleaved media players |
US9848027B2 (en) * | 2015-04-24 | 2017-12-19 | Disney Enterprises, Inc. | Systems and methods for streaming content to nearby displays |
US10291956B2 (en) | 2015-09-30 | 2019-05-14 | Sonifi Solutions, Inc. | Methods and systems for enabling communications between devices |
US10187675B2 (en) | 2015-10-12 | 2019-01-22 | The Nielsen Company (Us), Llc | Methods and apparatus to identify co-relationships between media using social media |
CN105786363B (en) * | 2016-02-24 | 2019-03-15 | Oppo广东移动通信有限公司 | A kind of control method for playing back of voice box group, device and intelligent sound box |
WO2017160924A1 (en) | 2016-03-15 | 2017-09-21 | Sonifi Solutions, Inc. | Systems and methods for associating communication devices with output devices |
EP3560192A4 (en) | 2016-12-22 | 2020-07-22 | Sonifi Solutions, Inc. | Methods and systems for implementing legacy remote and keystroke redirection |
Citations (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020159601A1 (en) * | 2001-04-30 | 2002-10-31 | Dennis Bushmitch | Computer network security system employing portable storage device |
US20020180579A1 (en) * | 2000-09-27 | 2002-12-05 | Tatsuji Nagaoka | Electronic device remote control method and electronic device management facility |
US20040172531A1 (en) * | 2002-12-09 | 2004-09-02 | Little Herbert A. | System and method of secure authentication information distribution |
US20050021982A1 (en) * | 2003-06-11 | 2005-01-27 | Nicolas Popp | Hybrid authentication |
US6880088B1 (en) * | 1999-11-19 | 2005-04-12 | Nortel Networks Limited | Secure maintenance messaging in a digital communications network |
US20050108430A1 (en) * | 2003-10-23 | 2005-05-19 | Cisco Technology, Inc. | Methods and devices for sharing content on a network |
US20050149972A1 (en) * | 1998-08-21 | 2005-07-07 | United Video Properties, Inc. | Apparatus and method for constrained selection of favorite channels |
US20050193015A1 (en) * | 2004-02-19 | 2005-09-01 | Sandraic Logic, Llc A California Limited Liability Company | Method and apparatus for organizing, sorting and navigating multimedia content |
US20060105712A1 (en) * | 2004-11-12 | 2006-05-18 | Microsoft Corporation | Wireless device support for electronic devices |
US20060127037A1 (en) * | 2004-11-19 | 2006-06-15 | Tivo Inc. | Method and apparatus for secure transfer and playback of multimedia content |
US20060168253A1 (en) * | 2003-03-10 | 2006-07-27 | Sony Corporation | Access control processing method |
US20060174105A1 (en) * | 2005-01-27 | 2006-08-03 | Samsung Electronics Co., Ltd. | Control device for creating one-time password using pre-input button code, home server for authenticating control device using one-time password, and method for authenticating control device with one-time password |
US20060180664A1 (en) * | 2005-02-15 | 2006-08-17 | Barrett Patrick V | Wirelessly deliverable and redeemable secure couponing system and method |
US20060212542A1 (en) * | 2005-03-15 | 2006-09-21 | 1000 Oaks Hu Lian Technology Development Co., Ltd. | Method and computer-readable medium for file downloading in a peer-to-peer network |
US20060268667A1 (en) * | 2005-05-02 | 2006-11-30 | Jellison David C Jr | Playlist-based content assembly |
US20070005955A1 (en) * | 2005-06-29 | 2007-01-04 | Microsoft Corporation | Establishing secure mutual trust using an insecure password |
US20070043766A1 (en) * | 2005-08-18 | 2007-02-22 | Nicholas Frank C | Method and System for the Creating, Managing, and Delivery of Feed Formatted Content |
US20070055660A1 (en) * | 2005-09-08 | 2007-03-08 | Deere & Company, A Delaware Corporation | System and method for anticipatory downloading of data |
US7200761B1 (en) * | 2000-11-09 | 2007-04-03 | International Business Machines Corporation | Method to use secure passwords in an unsecure program environment |
US20070088952A1 (en) * | 2004-12-21 | 2007-04-19 | Richard Jacka | Authentication device and/or method |
US20070107050A1 (en) * | 2005-11-07 | 2007-05-10 | Jexp, Inc. | Simple two-factor authentication |
US20070130585A1 (en) * | 2005-12-05 | 2007-06-07 | Perret Pierre A | Virtual Store Management Method and System for Operating an Interactive Audio/Video Entertainment System According to Viewers Tastes and Preferences |
US20070295807A1 (en) * | 2006-06-27 | 2007-12-27 | Antos Kenneth M | Biometric and geographic location system and method of use |
US20070299778A1 (en) * | 2006-06-22 | 2007-12-27 | Microsoft Corporation | Local peer-to-peer digital content distribution |
US20080005348A1 (en) * | 2005-06-24 | 2008-01-03 | David Kosiba | System and method for enabling playlist navigation of digital multimedia content |
US20080111822A1 (en) * | 2006-09-22 | 2008-05-15 | Yahoo, Inc.! | Method and system for presenting video |
US20080126109A1 (en) * | 2006-11-28 | 2008-05-29 | Brian John Cragun | Aggregation of Multiple Media Streams to a User |
US20080134281A1 (en) * | 2006-11-30 | 2008-06-05 | Mcafee, Inc. | Method and system for enhanced wireless network security |
US20080256272A1 (en) * | 2004-01-30 | 2008-10-16 | Telefonaktiebolaget Lm Ericsson | Packet Scheduling for Data Stream Transmission |
US7814538B2 (en) * | 2005-12-13 | 2010-10-12 | Microsoft Corporation | Two-way authentication using a combined code |
US8103247B2 (en) * | 2006-10-31 | 2012-01-24 | Microsoft Corporation | Automated secure pairing for wireless devices |
US8112483B1 (en) * | 2003-08-08 | 2012-02-07 | Emigh Aaron T | Enhanced challenge-response |
US8281001B2 (en) * | 2000-09-19 | 2012-10-02 | Harman International Industries, Incorporated | Device-to-device network |
US8285733B2 (en) * | 2006-12-22 | 2012-10-09 | Verizon Patent And Licensing Inc. | Systems and methods for creating a broadcasted multimedia file |
US8875198B1 (en) * | 2001-08-19 | 2014-10-28 | The Directv Group, Inc. | Network video unit |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7136934B2 (en) * | 2001-06-19 | 2006-11-14 | Request, Inc. | Multimedia synchronization method and device |
US7346616B2 (en) * | 2002-03-20 | 2008-03-18 | Extended System, Inc. | Synchronizing data shared between two devices independent of any other devices that may also share the data |
US6909721B2 (en) * | 2002-10-31 | 2005-06-21 | Nokia Corporation | Device detection and service discovery system and method for a mobile ad hoc communications network |
KR100541636B1 (en) * | 2003-04-17 | 2006-01-10 | 삼성전자주식회사 | Method And Data Format for Synchronizing Contents |
US7627808B2 (en) * | 2003-06-13 | 2009-12-01 | Microsoft Corporation | Computer media synchronization player |
GB0412338D0 (en) | 2004-06-03 | 2004-07-07 | Koninkl Philips Electronics Nv | Transfer of content between storage devices |
US20060083187A1 (en) * | 2004-10-18 | 2006-04-20 | Mobile (R&D) Ltd. | Pairing system and method for wirelessly connecting communication devices |
US20060143455A1 (en) * | 2004-12-28 | 2006-06-29 | Gitzinger Thomas E | Method and apparatus for secure pairing |
US20070011237A1 (en) * | 2005-05-11 | 2007-01-11 | Mockett Gregory P | Interactive, rich-media, delivery over IP network using synchronized unicast and multicast |
EP1958420A2 (en) * | 2005-12-04 | 2008-08-20 | Turner Broadcast System, Inc (TBS, Inc.) | System and method for delivering video and audio content over a network |
US20070150415A1 (en) * | 2005-12-22 | 2007-06-28 | Bundy Ross E | Method and apparatus for creating and entering a PIN code |
US20070206247A1 (en) * | 2006-03-01 | 2007-09-06 | Intouch Group, Inc. | System, apparatus, and method for managing preloaded digital files for preview on a digital media playback apparatus |
US8670566B2 (en) * | 2006-05-12 | 2014-03-11 | Blackberry Limited | System and method for exchanging encryption keys between a mobile device and a peripheral output device |
US7747968B2 (en) * | 2006-09-11 | 2010-06-29 | Apple Inc. | Content abstraction presentation along a multidimensional path |
US8243017B2 (en) * | 2006-09-11 | 2012-08-14 | Apple Inc. | Menu overlay including context dependent menu icon |
US7831727B2 (en) * | 2006-09-11 | 2010-11-09 | Apple Computer, Inc. | Multi-content presentation of unassociated content types |
US20080062137A1 (en) | 2006-09-11 | 2008-03-13 | Apple Computer, Inc. | Touch actuation controller for multi-state media presentation |
US7865927B2 (en) * | 2006-09-11 | 2011-01-04 | Apple Inc. | Enhancing media system metadata |
US9565387B2 (en) * | 2006-09-11 | 2017-02-07 | Apple Inc. | Perspective scale video with navigation menu |
US7853972B2 (en) * | 2006-09-11 | 2010-12-14 | Apple Inc. | Media preview user interface |
US20080065722A1 (en) * | 2006-09-11 | 2008-03-13 | Apple Computer, Inc. | Media device playlists |
US8099665B2 (en) * | 2006-09-11 | 2012-01-17 | Apple Inc. | Organizing and sorting media menu items |
US7930650B2 (en) * | 2006-09-11 | 2011-04-19 | Apple Inc. | User interface with menu abstractions and content abstractions |
US7743341B2 (en) | 2006-09-11 | 2010-06-22 | Apple Inc. | Rendering icons along a multidimensional path having a terminus position |
US20080066135A1 (en) * | 2006-09-11 | 2008-03-13 | Apple Computer, Inc. | Search user interface for media device |
US7743338B2 (en) * | 2006-09-11 | 2010-06-22 | Apple Inc. | Image rendering with image artifact along a multidimensional path |
US7984377B2 (en) * | 2006-09-11 | 2011-07-19 | Apple Inc. | Cascaded display of video media |
US20080066099A1 (en) * | 2006-09-11 | 2008-03-13 | Apple Computer, Inc. | Media systems with integrated content searching |
US8285851B2 (en) | 2007-01-08 | 2012-10-09 | Apple Inc. | Pairing a media server and a media client |
-
2007
- 2007-01-08 US US11/620,907 patent/US8285851B2/en active Active
-
2008
- 2008-01-07 WO PCT/US2008/050385 patent/WO2008086275A2/en active Application Filing
-
2012
- 2012-09-10 US US13/609,219 patent/US8769054B2/en active Active
-
2014
- 2014-06-18 US US14/308,630 patent/US20150120813A2/en not_active Abandoned
Patent Citations (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050149972A1 (en) * | 1998-08-21 | 2005-07-07 | United Video Properties, Inc. | Apparatus and method for constrained selection of favorite channels |
US6880088B1 (en) * | 1999-11-19 | 2005-04-12 | Nortel Networks Limited | Secure maintenance messaging in a digital communications network |
US8281001B2 (en) * | 2000-09-19 | 2012-10-02 | Harman International Industries, Incorporated | Device-to-device network |
US20020180579A1 (en) * | 2000-09-27 | 2002-12-05 | Tatsuji Nagaoka | Electronic device remote control method and electronic device management facility |
US7200761B1 (en) * | 2000-11-09 | 2007-04-03 | International Business Machines Corporation | Method to use secure passwords in an unsecure program environment |
US20020159601A1 (en) * | 2001-04-30 | 2002-10-31 | Dennis Bushmitch | Computer network security system employing portable storage device |
US8875198B1 (en) * | 2001-08-19 | 2014-10-28 | The Directv Group, Inc. | Network video unit |
US20040172531A1 (en) * | 2002-12-09 | 2004-09-02 | Little Herbert A. | System and method of secure authentication information distribution |
US20060168253A1 (en) * | 2003-03-10 | 2006-07-27 | Sony Corporation | Access control processing method |
US20050021982A1 (en) * | 2003-06-11 | 2005-01-27 | Nicolas Popp | Hybrid authentication |
US8112483B1 (en) * | 2003-08-08 | 2012-02-07 | Emigh Aaron T | Enhanced challenge-response |
US20050108430A1 (en) * | 2003-10-23 | 2005-05-19 | Cisco Technology, Inc. | Methods and devices for sharing content on a network |
US20080256272A1 (en) * | 2004-01-30 | 2008-10-16 | Telefonaktiebolaget Lm Ericsson | Packet Scheduling for Data Stream Transmission |
US20050193015A1 (en) * | 2004-02-19 | 2005-09-01 | Sandraic Logic, Llc A California Limited Liability Company | Method and apparatus for organizing, sorting and navigating multimedia content |
US20060105712A1 (en) * | 2004-11-12 | 2006-05-18 | Microsoft Corporation | Wireless device support for electronic devices |
US20060127037A1 (en) * | 2004-11-19 | 2006-06-15 | Tivo Inc. | Method and apparatus for secure transfer and playback of multimedia content |
US20070088952A1 (en) * | 2004-12-21 | 2007-04-19 | Richard Jacka | Authentication device and/or method |
US20060174105A1 (en) * | 2005-01-27 | 2006-08-03 | Samsung Electronics Co., Ltd. | Control device for creating one-time password using pre-input button code, home server for authenticating control device using one-time password, and method for authenticating control device with one-time password |
US20060180664A1 (en) * | 2005-02-15 | 2006-08-17 | Barrett Patrick V | Wirelessly deliverable and redeemable secure couponing system and method |
US20060212542A1 (en) * | 2005-03-15 | 2006-09-21 | 1000 Oaks Hu Lian Technology Development Co., Ltd. | Method and computer-readable medium for file downloading in a peer-to-peer network |
US20060268667A1 (en) * | 2005-05-02 | 2006-11-30 | Jellison David C Jr | Playlist-based content assembly |
US20080005348A1 (en) * | 2005-06-24 | 2008-01-03 | David Kosiba | System and method for enabling playlist navigation of digital multimedia content |
US20070005955A1 (en) * | 2005-06-29 | 2007-01-04 | Microsoft Corporation | Establishing secure mutual trust using an insecure password |
US20070043766A1 (en) * | 2005-08-18 | 2007-02-22 | Nicholas Frank C | Method and System for the Creating, Managing, and Delivery of Feed Formatted Content |
US20070055660A1 (en) * | 2005-09-08 | 2007-03-08 | Deere & Company, A Delaware Corporation | System and method for anticipatory downloading of data |
US20070107050A1 (en) * | 2005-11-07 | 2007-05-10 | Jexp, Inc. | Simple two-factor authentication |
US20070130585A1 (en) * | 2005-12-05 | 2007-06-07 | Perret Pierre A | Virtual Store Management Method and System for Operating an Interactive Audio/Video Entertainment System According to Viewers Tastes and Preferences |
US7814538B2 (en) * | 2005-12-13 | 2010-10-12 | Microsoft Corporation | Two-way authentication using a combined code |
US20070299778A1 (en) * | 2006-06-22 | 2007-12-27 | Microsoft Corporation | Local peer-to-peer digital content distribution |
US20070295807A1 (en) * | 2006-06-27 | 2007-12-27 | Antos Kenneth M | Biometric and geographic location system and method of use |
US20080111822A1 (en) * | 2006-09-22 | 2008-05-15 | Yahoo, Inc.! | Method and system for presenting video |
US8103247B2 (en) * | 2006-10-31 | 2012-01-24 | Microsoft Corporation | Automated secure pairing for wireless devices |
US20080126109A1 (en) * | 2006-11-28 | 2008-05-29 | Brian John Cragun | Aggregation of Multiple Media Streams to a User |
US20080134281A1 (en) * | 2006-11-30 | 2008-06-05 | Mcafee, Inc. | Method and system for enhanced wireless network security |
US8285733B2 (en) * | 2006-12-22 | 2012-10-09 | Verizon Patent And Licensing Inc. | Systems and methods for creating a broadcasted multimedia file |
Non-Patent Citations (3)
Title |
---|
http://support.motioncomputing.com/resources/BlueToothReadMe.pdf, 2004 * |
Koo, S.G.M, Rosenberg, C., Xu, Dongyan, "Analysis of parallel downloading for Large File Distribution," May 30, 2003 http://ieeexplore.ieee.org/abstract/document/1204324/ * |
Schulzrinne, H., "A real-time stream control protocol (RTSP)," November 26, 1996, http://www.cs.columbia.edu/~hgs/rtsp/draft/draft-ietf-mmusic-stream-00.txt * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150227294A1 (en) * | 2014-02-11 | 2015-08-13 | Wowza Media Systems, LLC | Server configuration interface including stream preview |
US9338203B2 (en) * | 2014-02-11 | 2016-05-10 | Wowza Media Systems, LLC | Server configuration interface including stream preview |
US9565225B2 (en) * | 2014-02-11 | 2017-02-07 | Wowza Media Systems, LLC | Server configuration including stream preview |
US20170295242A1 (en) * | 2016-04-06 | 2017-10-12 | Hrb Innovations, Inc. | Workstation and client device pairing |
US10187791B2 (en) * | 2016-04-06 | 2019-01-22 | Hrb Innovations, Inc. | Workstation and client device pairing |
Also Published As
Publication number | Publication date |
---|---|
WO2008086275A2 (en) | 2008-07-17 |
WO2008086275A3 (en) | 2008-10-23 |
US20080168129A1 (en) | 2008-07-10 |
US8285851B2 (en) | 2012-10-09 |
US8769054B2 (en) | 2014-07-01 |
US20130097286A1 (en) | 2013-04-18 |
US20140304329A1 (en) | 2014-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8769054B2 (en) | Pairing a media server and a media client | |
US20230403425A1 (en) | Systems, methods, and media for presenting media content | |
US10038962B2 (en) | System and method for testing and certification of media devices for use within a connected media environment | |
US7421656B2 (en) | Systems and methods for interacting with a user interface of a media player | |
RU2631137C2 (en) | Connection of devices | |
US9009768B2 (en) | Media playback control through remote device control | |
JP2008520029A (en) | Method, apparatus and software for tracking content | |
US8654793B2 (en) | Network device for sharing multimedia data with other network devices existing on network and method therefor | |
WO2015070796A1 (en) | Method and device for pushing resources to mobile communication terminal by smart television | |
US10034056B2 (en) | Information processing apparatus, television receiver, information processing method, program, and information processing system | |
US20080198870A1 (en) | Network connections for media processing devices | |
US20130263192A1 (en) | Recording in a Local Network | |
US9374613B2 (en) | Media content flicking systems and methods | |
KR101329668B1 (en) | Contents sharing system and method using push server | |
US20120117627A1 (en) | Authority Control Systems and Methods | |
KR20130026879A (en) | Contents playing apparatus, system and control method thereof | |
CN115270030A (en) | Display device and media asset playing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |