US20080250328A1 - Systems, methods, devices, and computer program products for arranging a user's media files - Google Patents
Systems, methods, devices, and computer program products for arranging a user's media files Download PDFInfo
- Publication number
- US20080250328A1 US20080250328A1 US11/695,851 US69585107A US2008250328A1 US 20080250328 A1 US20080250328 A1 US 20080250328A1 US 69585107 A US69585107 A US 69585107A US 2008250328 A1 US2008250328 A1 US 2008250328A1
- Authority
- US
- United States
- Prior art keywords
- media files
- profile
- arrangement
- music
- files
- 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/43—Querying
- G06F16/435—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/43—Querying
- G06F16/438—Presentation of query results
- G06F16/4387—Presentation of query results by the use of playlists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/43—Querying
- G06F16/435—Filtering based on additional data, e.g. user or group profiles
- G06F16/437—Administration of user profiles, e.g. generation, initialisation, adaptation, distribution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- 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/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/306—User profiles
Definitions
- Embodiments of the invention relate generally to systems, methods, and computer program products configured to generate an arrangement of a user's media files based on a selected profile. More particularly, embodiments of the invention relate to a system where a user can send a list of media files to a server and, in return, receive a list of at least some of these media files arranged according to a selected profile.
- a problem associated with having so many music files is that a user may have a difficult time selecting which music files to play.
- a user may have more music files than he or she can easily manage and may resort to picking the same songs or combinations of songs over and over again, which can become boring.
- Many applications allow a user to create and save playlists, which allows a user to select certain songs and arrange them into a particular playback order.
- different user's using the same device can each create a playlist of their favorite songs or users can create different playlists that correspond to different genres of music or different situations or moods.
- Creating playlists can be time consuming.
- a user is creating a playlist of songs to play at a party or an event, a user may not know which songs are currently popular with the attendees of the party or event.
- exemplary embodiments of the present invention provide systems, methods, devices, and computer program products configured to automatically generate an arrangement of a user's media files based on a selected profile.
- a user of a first device may use the first device to access a second device.
- the second device may provide the user with the option to select a profile stored in the second device.
- the user may then use the first device to communicate, to the second device, a selection of a profile along with a list of music stored in the first device.
- the second device may then generate a playlist using music identified in the list received from the first device.
- the second device may generate the playlist based on the selected profile.
- the second device may then communicate the playlist back to the first device.
- the profile used by the second device to generate the playlist may be based on a particular theme or on the music preferences of a particular person.
- embodiments of the present invention provide for an apparatus having a communication interface configured to receive a first electronic communication from a first device, where the first electronic communication includes an identification of a plurality of media files.
- the apparatus further includes a processing device configured to generate an arrangement of select media files from the plurality of media files accessible by the first device based on a predefined profile.
- the processing device is then configured to use the communication interface to communicate a second electronic communication to the first device, where the second electronic communication includes the arrangement.
- the processing device is configured to generate an arrangement in accordance with any one of a plurality of profiles.
- the first electronic communication may further include an indication of a selected profile from the plurality of profiles.
- the processing device may be configured to use the communication interface to provide the first device with a plurality of selectable profiles.
- the communication interface may then be configured to receive, from the first device, a selection of a profile from the plurality of selectable profiles.
- the processing device may then be configured to generate the arrangement based on the selected profile.
- a plurality of media files are associated with the profile used to generate the arrangement.
- the processing device may be configured to compare the plurality of media files accessible by the first device to the plurality of media files associated with the profile.
- the processing device may be configured to compare metadata associated with a media file identified by the plurality of media files accessible by the first device to metadata associated with the profile used by the processing device to generate the arrangement.
- the processing device may also be configured to generate the arrangement based on a predefined profile by: (1) determining attributes of the media files identified by the plurality of media files accessible by first device; and (2) comparing the attributes of the media files in the plurality of media files to attributes associated with the profile.
- the processing device may be configured to determine attributes of the media files identified by the plurality of media files by comparing the media files identified by the plurality of media files to predefined attributes associated with each of a plurality of different media files.
- the communication device comprises a server, such as a web server, and the first device comprises a mobile terminal.
- the profile used by the processing device to generate the arrangement is based on arrangement preferences of a person other than the user of the first device, such as a celebrity.
- the media files are music files and the arrangement includes a playlist.
- the processing device may be configured to generate the arrangement by comparing the plurality of music files and metadata associated with the music files to music artists, music albums, music titles, or music attributes associated with a profile.
- the processor is configured to select a plurality of media files from the plurality of media files accessible by the first device based on the profile, and the processor is further configured to order the selected plurality of media files based on the profile.
- the apparatus includes a memory device having at least one profile stored therein.
- Embodiments of the present invention further provide a method comprising: (1) receiving a first electronic communication from a first device, the electronic communication comprising an identification of a plurality of media files accessible by the first device; (2) generating an arrangement of select media files from the plurality of media files based on a predefined profile; and (3) communicating a second electronic communication to the first device, the second electronic communication comprising the arrangement.
- the first electronic communication may further include an indication of the predefined profile used to generate the arrangement.
- the method may further involve: providing the first device with a plurality of selectable predefined profiles; receiving, from the first device, a selection of a predefined profile from the plurality of selectable profiles; and using the selected predefined profile to generate the arrangement.
- generating an arrangement includes comparing the plurality of media files accessible by the first device to a plurality of media files associated with the predefined profile. In another embodiment, generating an arrangement includes: determining attributes of the media files identified by the plurality of media files accessible by the first device; and comparing the attributes of the media files in the plurality of media files to attributes associated with the predefined profile. In such an embodiment, determining attributes of the media files identified by the plurality of media files may involve comparing the media files identified by the plurality of media files to predefined attributes associated with each of a plurality of different media files. For example, the plurality of media files accessible by the first device may be compared to a database, the database having attributes assigned to each of a plurality of different media files. In one embodiment, the predefined profile used to generate the arrangement is based on the arrangement preferences of a person other than the user of the first device, such as a celebrity.
- the predefined profile is stored in the memory of a second device, and the second device may include a web server.
- the first device may include a mobile terminal.
- the media files are music files and the arrangement is a playlist.
- the method may involve comparing the plurality of music files and metadata associated with the music files to music artists, music albums, music titles, or music attributes associated with the predefined profile.
- generating an arrangement involves selecting a plurality of media files from the plurality of media files received from the first device based on the predefined profile, and ordering the selected plurality of media files based on the predefined profile.
- Embodiments of the present invention further provide a computer program product.
- the computer program product may comprise at least one computer-readable storage medium having computer-readable program code logic stored therein.
- the computer-readable program code logic may include: (1) a first code logic configured for receiving a first communication from a first device, the communication comprising an identification of a plurality of media files accessible by the first device; (2) a second code logic configured for generating an arrangement of select media files from the plurality of media files based on a predefined profile; and (3) a third code logic configured for communicating a second communication to the first device, the second communication comprising the arrangement.
- the computer program product may further include: code logic configured for providing the first device with a plurality of selectable predefined profiles; and code logic configured for receiving, from the first device, a selection of a predefined profile from the plurality of selectable profiles, wherein the second code logic is configured to generate the arrangement based on the selected predefined profile.
- the second code logic is further configured for comparing the plurality of media files accessible by the first device to a plurality of media files associated with the predefined profile.
- the second code logic may be further configured to determine attributes of the media files identified by the plurality of media files accessible by the first device, and may then compare the attributes of the media files identified in the plurality of media files to attributes associated with the predefined profile.
- the second code logic may determine attributes of the media files identified by the plurality of media files by comparing the media files identified by the list of media files to predefined attributes associated with each of a plurality of different media files.
- the predefined profile is stored in the memory of a second device.
- the media files are music files and the arrangement is a playlist.
- Embodiments of the present invention further provide a method, which may, in one embodiment, be executed at a first device.
- Such a method may include (1) accessing a second device; (2) receiving, from the second device, an option to select a profile from a plurality of profiles; (3) communicating a selection of a selected profile from the plurality of profiles; (4) identifying a plurality of media files to the second device; and (5) receiving, from the second device, an arrangement of at least some of the identified media files.
- the method may further include playing the audio files on the first device in accordance with the playlist received from the second device.
- Embodiments of the present invention further provide an apparatus having a communication interface configured for communicating with a second apparatus, and a processor operatively coupled to the communication interface.
- the processor may be configured to (1) receive, from the second apparatus, an option to select a profile from a plurality of profiles; (2) use the communication interface to communicate, to the second apparatus, a selection of a selected profile from the plurality of profiles; (3) use the communication interface to communicate an identification of a plurality of media files to the second apparatus; and (4) receive, from the second apparatus, an arrangement of at least some of the plurality of media files.
- the apparatus further includes a memory device and a user output device, both operatively coupled to the processor.
- the plurality of media files includes a plurality of audio files stored in the memory device and the arrangement received from the second apparatus includes a playlist.
- the processor may further be configured to use the user output device to play the audio files in accordance with the playlist received from the second apparatus.
- FIG. 1 is a schematic block diagram of a mobile terminal in accordance with an exemplary embodiment of the present invention
- FIG. 2 is a schematic block diagram of one type of system in which embodiments of the present invention may be configured to operate, according to an exemplary embodiment of the present invention
- FIG. 3 is a schematic block diagram of a system for arranging a user's media files in accordance with an exemplary embodiment of the present invention
- FIG. 4 is a flow diagram illustrating the process executed by the second device of FIG. 3 , in accordance with an exemplary embodiment of the present invention.
- FIG. 5 is a flow diagram illustrating the process executed by the first device of FIG. 3 , in accordance with an exemplary embodiment of the present invention.
- FIG. 1 illustrates a block diagram of an electronic device, and specifically a mobile terminal 10 , that may benefit from embodiments of the present invention. While several embodiments of the mobile terminal 10 are illustrated and will be hereinafter described for purposes of example, other types of electronic devices, such as digital cameras, portable digital assistants (PDAs), pagers, mobile televisions, computers, laptop computers, and other types of systems that manipulate and/or store data files, can readily employ embodiments of the present invention. Such devices may or may not be mobile.
- PDAs portable digital assistants
- pagers mobile televisions, computers, laptop computers, and other types of systems that manipulate and/or store data files
- the mobile terminal 10 includes a communication interface comprising an antenna 12 in operable communication with a transmitter 14 and a receiver 16 .
- the mobile terminal 10 further includes a processor 20 or other processing element that provides signals to and receives signals from the transmitter 14 and receiver 16 , respectively.
- the signals include signaling information in accordance with the air interface standard of the applicable cellular system, and also user speech and/or user generated data.
- the mobile terminal 10 is capable of operating with one or more air interface standards, communication protocols, modulation types, and access types.
- the mobile terminal 10 is capable of operating in accordance with any of a number of first, second and/or third-generation communication protocols or the like.
- the mobile terminal 10 may be capable of operating in accordance with second-generation (2G) wireless communication protocols IS-136 (TDMA), GSM, and IS-95 (CDMA) or third-generation wireless communication protocol Wideband Code Division Multiple Access (WCDMA).
- the processor 20 includes circuitry required for implementing audio and logic functions of the mobile terminal 10 .
- the processor 20 may be comprised of a digital signal processor device, a microprocessor device, and various analog to digital converters, digital to analog converters, and other support circuits. Control and signal processing functions of the mobile terminal 10 are allocated between these devices according to their respective capabilities.
- the processor 20 thus may also include the functionality to convolutionally encode and interleave message and data prior to modulation and transmission.
- the processor 20 can additionally include an internal voice coder, and may include an internal data modem.
- the processor 20 may include functionality to operate one or more software programs, which may be stored in memory.
- the processor 20 may be capable of operating a connectivity program, such as a conventional Web browser. The connectivity program may then allow the mobile terminal 10 to transmit and receive Web content, such as location-based content, according to a Wireless Application Protocol (WAP), for example.
- WAP Wireless Application Protocol
- the mobile terminal 10 also comprises a user interface including an output device such as a conventional earphone or speaker 24 , a ringer 22 , a microphone 26 , a display 28 , and a user input interface, all of which are coupled to the processor 20 .
- the user input interface which allows the mobile terminal 10 to receive data, may include any of a number of devices allowing the mobile terminal 10 to receive data, such as a keypad 30 , a touch display (not shown) or other input device.
- the keypad 30 may include the conventional numeric (0-9) and related keys (#, *), and other keys used for operating the mobile terminal 10 .
- the keypad 30 may include a conventional QWERTY keypad.
- the mobile terminal 10 further includes a battery 34 , such as a vibrating battery pack, for powering various circuits that are required to operate the mobile terminal 10 , as well as optionally providing mechanical vibration as a detectable output.
- the mobile terminal 10 includes a camera 36 in communication with the processor 20 .
- the camera 36 may be any means for capturing an image for storage, display or transmission.
- the camera 36 may include a digital camera capable of forming a digital image file from a captured image.
- the camera 36 includes all hardware, such as a lens or other optical device, and software necessary for creating a digital image file from a captured image.
- the camera 36 may include only the hardware needed to view an image, while a memory device of the mobile terminal 10 stores instructions for execution by the processor 20 in the form of software necessary to create a digital image file from a captured image.
- the camera 36 may further include a processing element such as a co-processor which assists the processor 20 in processing image data and an encoder and/or decoder for compressing and/or decompressing image data.
- a processing element such as a co-processor which assists the processor 20 in processing image data and an encoder and/or decoder for compressing and/or decompressing image data.
- the encoder and/or decoder may encode and/or decode according to a JPEG standard format.
- the mobile terminal 10 may further include a user identity module (UIM) 38 .
- the UIM 38 is typically a memory device having a processor built in.
- the UIM 38 may include, for example, a subscriber identity module (SIM), a universal integrated circuit card (UICC), a universal subscriber identity module (USIM), a removable user identity module (R-UIM), etc.
- SIM subscriber identity module
- UICC universal integrated circuit card
- USIM universal subscriber identity module
- R-UIM removable user identity module
- the UIM 38 typically stores information elements related to a mobile subscriber.
- the mobile terminal 10 may be equipped with memory.
- the mobile terminal 10 may include volatile memory 40 , such as volatile Random Access Memory (RAM) including a cache area for the temporary storage of data.
- RAM volatile Random Access Memory
- the mobile terminal 10 may also include other non-volatile memory 42 , which can be embedded and/or may be removable.
- the non-volatile memory 42 can additionally or alternatively comprise an EEPROM, flash memory or the like.
- the memories can store any of a number of pieces of information, and data, used by the mobile terminal 10 to implement the functions of the mobile terminal 10 .
- the memories can include an identifier, such as an international mobile equipment identification (IMEI) code, capable of uniquely identifying the mobile terminal 10 .
- IMEI international mobile equipment identification
- the system includes a plurality of network devices.
- one or more mobile terminals 10 may each include an antenna 12 for transmitting signals to and for receiving signals from a base site or base station (BS) 44 .
- the base station 44 may be a part of one or more cellular or mobile networks each of which includes elements required to operate the network, such as a mobile switching center (MSC) 46 .
- MSC mobile switching center
- the mobile network may also be referred to as a Base Station/MSC/Interworking function (BMI).
- BMI Base Station/MSC/Interworking function
- the MSC 46 is capable of routing calls to and from the mobile terminal 10 when the mobile terminal 10 is making and receiving calls.
- the MSC 46 can also provide a connection to landline trunks when the mobile terminal 10 is involved in a call.
- the MSC 46 can be capable of controlling the forwarding of messages to and from the mobile terminal 10 , and can also control the forwarding of messages for the mobile terminal 10 to and from a messaging center. It should be noted that although the MSC 46 is shown in the system of FIG. 2 , the MSC 46 is merely an exemplary network device and embodiments of the present invention are not limited to use in a network employing an MSC.
- the MSC 46 can be coupled to a data network, such as a local area network (LAN), a metropolitan area network (MAN), and/or a wide area network (WAN).
- the MSC 46 can be directly coupled to the data network.
- the MSC 46 is coupled to a GTW 48
- the GTW 48 is coupled to a WAN, such as the Internet 50 .
- devices such as processing elements (e.g., personal computers, server computers or the like) can be coupled to the mobile terminal 10 via the Internet 50 .
- the processing elements can include one or more processing elements associated with a computing system 52 (two shown in FIG. 2 ), origin server 54 (one shown in FIG. 2 ) or the like, as described below.
- the BS 44 can also be coupled to a signaling GPRS (General Packet Radio Service) support node (SGSN) 56 .
- GPRS General Packet Radio Service
- the SGSN 56 is typically capable of performing functions similar to the MSC 46 for packet switched services.
- the SGSN 56 like the MSC 46 , can be coupled to a data network, such as the Internet 50 .
- the SGSN 56 can be directly coupled to the data network. In a more typical embodiment, however, the SGSN 56 is coupled to a packet-switched core network, such as a GPRS core network 58 .
- the packet-switched core network is then coupled to another GTW 48 , such as a GTW GPRS support node (GGSN) 60 , and the GGSN 60 is coupled to the Internet 50 .
- the packet-switched core network can also be coupled to a GTW 48 .
- the GGSN 60 can be coupled to a messaging center.
- the GGSN 60 and the SGSN 56 like the MSC 46 , may be capable of controlling the forwarding of messages, such as MMS messages.
- the GGSN 60 and SGSN 56 may also be capable of controlling the forwarding of messages for the mobile terminal 10 to and from the messaging center.
- devices such as a computing system 52 and/or origin server 54 may be coupled to the mobile terminal 10 via the Internet 50 , SGSN 56 and GGSN 60 .
- devices such as the computing system 52 and/or origin server 54 may communicate with the mobile terminal 10 across the SGSN 56 , GPRS core network 58 and the GGSN 60 .
- the mobile terminals 10 may communicate with the other devices and with one another, such as according to the Hypertext Transfer Protocol (HTTP), to thereby carry out various functions of the mobile terminals 10 .
- HTTP Hypertext Transfer Protocol
- the mobile terminal 10 may be coupled to one or more of any of a number of different networks through the BS 44 .
- the network(s) can be capable of supporting communication in accordance with any one or more of a number of first-generation (1G), second-generation (2G), 2.5G, third-generation (3G) and/or future mobile communication protocols or the like.
- one or more of the network(s) can be capable of supporting communication in accordance with 2G wireless communication protocols IS-136 (TDMA), GSM, and IS-95 (CDMA).
- one or more of the network(s) can be capable of supporting communication in accordance with 2.5G wireless communication protocols GPRS, Enhanced Data GSM Environment (EDGE), or the like. Further, for example, one or more of the network(s) can be capable of supporting communication in accordance with 3G wireless communication protocols such as Universal Mobile Telephone System (UMTS) network employing Wideband Code Division Multiple Access (WCDMA) radio access technology.
- UMTS Universal Mobile Telephone System
- WCDMA Wideband Code Division Multiple Access
- Some narrow-band AMPS (NAMPS), as well as TACS, network(s) may also benefit from embodiments of the present invention, as should dual or higher mode mobile stations (e.g., digital/analog or TDMA/CDMA/analog phones).
- the mobile terminal 10 can further be coupled to one or more wireless access points (APs) 62 .
- the APs 62 may comprise access points configured to communicate with the mobile terminal 10 in accordance with techniques such as, for example, radio frequency (RF), Bluetooth (BT), infrared (IrDA) or any of a number of different wireless networking techniques, including wireless LAN (WLAN) techniques such as IEEE 802.11 (e.g., 802.11a, 802.11b, 802.11g, 802.11n, etc.), WiMAX techniques such as IEEE 802.16, and/or ultra wideband (UWB) techniques such as IEEE 802.15 or the like.
- the APs 62 may be coupled to the Internet 50 .
- the APs 62 can be directly coupled to the Internet 50 . In one embodiment, however, the APs 62 are indirectly coupled to the Internet 50 via a GTW 48 . Furthermore, in one embodiment, the BS 44 may be considered as another AP 62 . As will be appreciated, by directly or indirectly connecting the mobile terminals 10 and the computing system 52 , the origin server 54 , and/or any of a number of other devices, to the Internet 50 , the mobile terminals 10 can communicate with one another, the computing system, etc., to thereby carry out various functions of the mobile terminals 10 , such as to transmit data, content or the like to, and/or receive content, data or the like from, the computing system 52 .
- data As used herein, the terms “data,” “content,” “information” and similar terms may be used interchangeably to refer to data capable of being transmitted, received and/or stored in accordance with embodiments of the present invention. Thus, use of any such terms should not be taken to limit the spirit and scope of the present invention.
- the mobile terminal 10 and computing system 52 may be coupled to one another and communicate in accordance with, for example, RF, BT, IrDA or any of a number of different wireline or wireless communication techniques, including LAN, WLAN, WiMAX and/or UWB techniques.
- One or more of the computing systems 52 can additionally, or alternatively, include a removable memory capable of storing content, which can thereafter be transferred to the mobile terminal 10 .
- the mobile terminal 10 can be coupled to one or more electronic devices, such as printers, digital projectors and/or other multimedia capturing, producing and/or storing devices (e.g., other terminals).
- the mobile terminal 10 may be configured to communicate with the portable electronic devices in accordance with techniques such as, for example, RF, BT, IrDA or any of a number of different wireline or wireless communication techniques, including USB, LAN, WLAN, WiMAX and/or UWB techniques.
- techniques such as, for example, RF, BT, IrDA or any of a number of different wireline or wireless communication techniques, including USB, LAN, WLAN, WiMAX and/or UWB techniques.
- FIG. 3 a schematic block diagram is provided of a system 300 for generating an arrangement of a user's media files in accordance with one embodiment of the present invention.
- FIGS. 3-5 and the associated descriptions below generally describe a system configured for generating a playlist comprised of music stored in a user's device, other embodiments of the present invention may be configured to generate arrangements of any type of media file stored in the user's device, such as audio files, video files, digital images, text files, podcast files, and the like.
- a music file is an exemplary embodiment of a media file that may be manipulated by embodiments of the present invention.
- the system includes a first device 310 and a second device 330 communicatively coupled to each other via a network or other communication system.
- the first device 310 is a mobile terminal, such as the mobile terminal 10 described above with respect to FIG. 1 .
- the first device 310 may be a personal computer or other computing device.
- the second device 330 is also an electronic device and, in one embodiment, comprises a server communicatively coupled to a network, such as a web-server coupled to the Internet. In other embodiments, however, the second device 330 may be a mobile terminal, such as the mobile terminal 10 described above, or any other electronic device.
- the network or communication system (not shown) coupling the two devices includes the Internet.
- the devices may be configured to communicate with each other using hypertext transfer protocol (HTTP) or any other communication protocol.
- HTTP hypertext transfer protocol
- the communication system communicatively coupling the two devices may include some or all of the communication system described above with respect to FIG. 2 .
- the first device 310 is configured to provide the second device 330 with a list of media files and selection of a profile.
- the second device 330 is then configured to arrange at least some of the music files identified in the received list into a playlist according to the selected profile.
- the profile and associated information used to make the arrangement are stored in the second device 330 .
- the second device 330 may then communicate the playlist back to the first device 310 so that the user of the first device 310 can play the music identified in the received playlist.
- the first device 310 generally includes a processor 318 .
- Operably coupled to the processor 318 is a memory 314 , the memory 314 having a plurality of music files (or other media files) stored therein.
- the memory 314 may also include computer-readable program instructions stored therein that can be executed by the processor 318 to perform certain predefined processes or process steps in the first device 310 , such as the processes described below with reference to FIG. 5 .
- the first device 310 may further include a user interface 316 operably coupled to the processor 318 .
- the user interface 316 may be configured to receive input from a user and communicate the input to the processor 318 .
- the user interface 316 may include a touch screen, touchpad, microphone, mouse, joystick, keypad, and the like.
- the user interface 316 may also be configured to communicate output to a user based on signals received from the processor 318 .
- the first device 310 will typically include a display device and a speaker.
- the processor 318 may be configured to use the speaker to play the music 315 stored in the memory 314 .
- the processor 316 may be configured to display visual information on the display device, such as textual metadata or other visual metadata associated with the music files 315 stored in the memory 314 .
- Such metadata may include such information as a song's title, artist, album, genre, lyrics, and the like.
- the first device 312 may further include a communication interface 312 operably coupled to the processor 318 and configured to send and receive communications to and from other devices, such as the second device 330 or some other network device.
- the second device 330 also typically includes means, such as a processor 338 , for generating an arrangement, e.g., a playlist, of media files accessible by the first device.
- the processor 338 is operably coupled to means, such as a communication interface 332 , for communicating with the first device and a memory 334 .
- the communication interface 332 is configured to send and receive communications from other devices, such as the first device 310 or some other network device.
- the memory 334 is configured to store information therein that can be accessed by the processor 338 .
- the memory 334 may include computer-readable program instructions stored therein that are configured to be executed by the processor 338 to perform certain predefined processes or process steps in the second device 330 , such as the processes described below with reference to FIG. 4 .
- the memory 334 may also include a music metadata database or data store 335 and a profiles database or data store 336 . These databases are described in greater detail below with reference to FIGS. 4 and 5 .
- FIG. 4 is a flow diagram illustrating a process 400 that may be executed by the second device 330 of FIG. 3 in accordance with an exemplary embodiment of the present invention.
- the second device 330 may provide the first device 310 with the option to select a profile from a plurality of selectable profiles.
- the first device 310 may access the second device 330 via a communication network, such as the Internet.
- the second device 330 may then use its communication interface 332 to provide the first device 310 with an option to select one of a plurality of profiles by, for example, sending a list of the profiles to the first device 310 so that the first device 310 can display the list on its display device.
- the second device 330 hosts a web page and communicates with the first device 310 using the web page. In such an embodiment, the second device 330 may display a list of available profiles on one or more web pages.
- the second device 330 will generally have a plurality of predefined profiles 336 stored in a memory 334 .
- a “profile” may include a predefined set of rules and/or other information that can be used by the processor 338 to select music that corresponds to a certain theme and/or to a certain person's preferences.
- a profile is generated for a particular celebrity and therefore has rules and/or other information that can be used by the processor 338 (e.g., when executing computer-readable program instructions) to select music that the celebrity may prefer or otherwise choose to listen to in a given situation.
- the profile may further include information about the order in which selected music should be played.
- a profile may be generated for a particular theme or mood.
- a profile that is configured to help the processor 338 select music that corresponds to particular mood may be configured to help the processor select music that is sad, happy, angry, lazy, aggressive, or is commonly associated with any other type of mood.
- a profile that is configured to help the processor 338 select music that corresponds to a particular theme may be configured to help the processor select music that is commonly played at a party for 20-30 year olds, a nightclub, a wedding reception, a wedding ceremony, a gym, a child's birthday party, or on a lazy Sunday morning.
- profiles may be generated to help the processor 338 select music that is commonly associated with any type of event, occasion, purpose, or audience.
- the profile may be configured for a combination of a particular person and a mood or theme.
- the profile would be configured to help the processor 338 select an arrangement of music that would correspond to music that may be selected by the particular person when that person is in a particular mood or is selecting music for a particular theme.
- a user of the first device 310 who has a large collection of music files stored in a memory 314 can access the second device 330 and have the second device 330 generate an appropriate playlist of the user's music.
- the second device 330 may tailor the playlist to some event that the user is planning. In another example, if the user is a fan of a particular celebrity, the second device 330 may tailor the playlist to correspond to music that the celebrity may listen to in a given situation or mood.
- the second device 330 may receive an indication from the first device 310 of a user's selection of a profile.
- the second device 330 may receive this selection via the communication interface 332 and communicate it to the processor 338 .
- the second device 330 may also receive a list of music files from the first device 310 .
- the list of music files identifies a plurality of music files stored within a memory 314 of the first device 310 .
- Such a list may include the media files themselves; however, in a preferred embodiment, the list merely identifies the files by some sort of file title or other metadata associated with the files.
- the list may comprise a list of the file names, the titles, artists, or albums associated with the music file, a portion of the recording or the lyrics, and/or any other information that may be used to identify the contents of the media files stored on the first device 310 .
- the user of the first device 310 uses the user interface 316 to instruct the processor 318 to generate a list of music files and to communicate the list to the second device 330 .
- the second device 330 may be configured to automatically interact with the first device 310 to obtain an indication of the media files 315 stored in the memory 314 of the first device 310 .
- the second device 330 may be configured to access a shared folder on the memory 314 of the first device 310 , the shared folder containing the music files of the first device 310 .
- the first device 310 communicates a list of all its music files to the second device 330 . In other embodiments, however, the first device 310 may communicate a list of only a portion of its music files.
- the second device 330 may be configured to store a list of a user's files (such as the first device user's files stored on the first device 310 ) under a user profile. In such an embodiment, the first device 310 may be configured to communicate a list of only any new files acquired by the user since the last time the user sent a list of music files to the second device 330 . In this way, bandwidth may be saved when communicating with the second device 330 .
- the second device 330 may then consolidate the received list with the earlier stored information, e.g.
- the first device 310 may only need to communicate to the second device 330 a request to generate a new playlist on subsequent playlist generation requests.
- the second device 330 may then associate the music identified in the list with predefined metadata or a predefined identifier.
- the first device 310 provides a list of music in the form of the titles of the music files stored in the first device's memory 315 .
- File names for music files typically include the song title; however, the song title may be misspelled, incorrect, or missing from the file name since file names are often customized by the user. As such, it may be difficult to identify songs in the list since the same song may be saved under different file names by different users or even by the same user.
- the second device 330 may need to first attempt to identify the music that is identified in the received list.
- the second device 330 is configured to identify music from the list using the processor 338 to compare entries in the received list to entries in a music metadata database 335 stored in the second device's memory 334 .
- the music metadata database 335 may include entries for each of a plurality of songs or other recordings and may have a plurality of alternate titles that may be associated with each song or recording. In this way, the processor 338 may take an entry from the received list of music and try to match the entry to one of the alternate titles in the database 335 .
- the second device 330 may have an algorithm, typically embodied in software executed by the processor 338 , used to identify the most likely song that an entry in the list corresponds to. For example, such an algorithm may be configured to identify a song title despite minor misspellings or variations in the title.
- the second device 330 may associate a new identifier to the list entry, the new identifier being one that is known by the second device as corresponding to a certain song or recording.
- Such an identifier may be text-based, such as a song title, or such an identifier may include a numeric or alphanumeric code that corresponds to a known song or recording.
- the second device 330 may also be configured to associate metadata with each list entry.
- the music metadata database 335 may include a database of songs and other recordings along with metadata associated with each song or other recording.
- metadata may include information such as song titles, artist information, album information, year of release, year of production, genre, movies that the song was played in, and the like.
- metadata may also include one or more attributes assigned to each song in the database. For example, an attribute may be a feeling, mood, event, audience, or theme often associated with the song or other recording, or an attribute may be any other information that is commonly used to describe the song or is commonly associated with the song.
- the second device 330 may be configured to compare the entries in the received list to the music metadata database 335 to assign music metadata to the entries. As described below, this metadata may be useful when the second device 330 is selecting songs from the list in accordance with a predefined profile.
- the list of music files may already include several items of metadata associated with each music file identified in the list.
- the music files stored in the first device 310 may each be associated with such metadata as the song title, the artist, the album, the year, and/or the genre.
- the metadata may be associated with a media file using, for example, an ID3 tag format or the like.
- the list sent to the second device 330 may include some or all of the metadata associated with the music files identified by the list.
- the process illustrated by block 440 may be eliminated, since, in some embodiments, the list of music files may include enough metadata information that will allow the second device 330 to select music files from the list to use in a playlist.
- the second device 330 may be configured to compare music identified in the received list and/or the music's associated metadata (e.g., metadata included in the list or associated with a list entry by the second device 330 , as described above with regard to block 440 ) with information associated with the selected profile.
- the second device 330 may have a database 336 of profiles and associated information stored in a memory 334 .
- the second device 330 may be configured to associate an entry (e.g., a song) from the received list with a selected profile by comparing the list entry and any of the entry's associated metadata with entries in the profile database 336 and any metadata associated with the database entries.
- the profiles database 336 may include entries for a plurality of different profiles, such as a plurality of different celebrity profiles and/or a plurality of different theme profiles. Each profile may include music metadata associated with the profile that the processor can use to select music.
- each profile in the database 336 has a list of songs associated with the profile.
- the processor 338 of the second device 330 may then be configured to compare the songs identified by the list received from the first device 310 with the songs identified in the list associated with the selected profile in the profiles database 336 .
- the processor 338 may be configured to identify any songs that are in both lists and use such songs to generate a playlist, as illustrated by block 460 of FIG. 4 .
- the user of the first device 310 can indicate to the second device 330 that the playlist generated by the second device 330 should not exceed a specified length or should not exceed a specified number of songs.
- the songs associated with the profiles database 336 may be ranked based on their relevance to the profile's theme or on the profile person's preferences, as the case may be.
- the second device 330 may then be configured to select only the highest ranked songs from the list if the list contains more relevant songs than are needed to fill a playlist of the specified length or number of files.
- the second device 330 may be configured to select the song from the received list based on other song metadata. For example, a profile may have a particular artist or album associated with it or may have a plurality of songs associated with it that are all from the same artist or album. In such an embodiment, the second device 330 may be configured to select songs from the received list that are associated with the same artist or album.
- the profile database 336 may include a list of the songs, artists, and/or albums that the athlete prefers to listen to when exercising at the gym.
- the profiles database may also include a list of song attributes that the athlete looks for in a song when the athlete is exercising at the gym.
- an athlete may choose to workout to a song that has a “fast” beat or to a song that is considered to have an “intense” tone or is considered by the athlete or by people in general to be “motivational” or “a good workout song.”
- a song may then be selected by the second device 330 for the playlist if the music metadata database 335 associates any of these attributes to the song.
- Such a list of songs, attributes, or other music metadata associated with a celebrity profile may be generated by the celebrity or may be generated by someone else based on knowledge of the celebrity's preferences.
- a profile stored in the profiles database 336 may be associated with a list of songs and/or attributes that a particular person prefers or that are commonly associated with a particular theme or mood
- a profile may also be associated with a list of songs and/or attributes that a particular person specifically does not like or that is commonly not associated with a particular theme or mood.
- the profiles database 336 may indicate that the processor 338 should not select songs from the list that are considered “romantic ballads” if the athlete does not like to workout to songs identified as such.
- the processor 338 of the second device 330 can select music from the received list to use in a playlist, as illustrated by block 460 of FIG. 4 .
- the processor 338 randomly orders the selected songs in the playlist.
- the processor 338 may order the songs based on predefined rules and/or on information associated with the selected profile. For example, where the selected profile includes a list of songs, the selected profile may specify a preferred order such that the processor 338 orders the selected songs in the order in which they appear in the playlist.
- the order may be based on a rank associated with the song or its relevance to the selected profile based on the number or type of metadata correlations between the listed media file and the profile.
- ordering rules may specify an order based on attributes associated with the selected songs. For example, if the selected profile is one that is intended to generate a playlist for a party, the profile may include a rule that instructs the processor 338 to place songs at the end of the playlist if the song has metadata associated with it that indicates the song as a “good party ending song.” Alternatively, the profile may include lists of beginning party songs, middle party songs, and ending party songs and the processor may order the playlist accordingly.
- the second device 330 may be configured to use the communication interface 330 to communicate the playlist to the first device 310 .
- the second device 330 may be configured to communicate the playlist via a web page, e-mail, Short Message Service (SMS), or any other communication means. Since, in the preferred embodiment, the playlist only includes music selected from the list of music files stored in the memory 314 of the first device 310 , the playlist is generally only a list of music file identifiers that the first device 310 and/or the first device's user can recognize.
- SMS Short Message Service
- block 510 illustrates that the first device 310 may initially access the second device 330 .
- the first device 310 may use its communication interface 312 to access a web page hosted on the Internet by the second device 330 .
- the first device 330 may receive from the second device 330 an option to select a profile from a plurality of selectable profiles.
- the first device 310 may receive a list of profiles stored in a memory 334 of the second device 330 , and the first device 310 may display this list for the user on a display device of the user interface 316 .
- the second device may host a web page that allows a user to search for profiles amongst a profiles database 336 stored in the memory 334 , for example, by keyword searching.
- the first device may use its communication interface 312 to communicate a selection of one of the profiles offered by the second device 330 .
- the user of the first device may actuate a user input device of the user interface 316 to select a profile and communicate the selected profile to the second device 330 .
- the first device may also communicate a list of music files to the second device 330 .
- the list communicated to the second device may not actually contain any actual music files, but may only contain indications, such as music file names, of music files stored in the memory 314 of the first device 310 .
- the user of the first device 310 uses a user input device to select the music files that the user desires to communicate to the second device 330 ; however, as also described above, in another embodiment the first device 310 may provide the second device 330 with access to a shared folder in the first device's memory 314 so that the second device 330 can see any music files contained within the folder.
- the user of the first device 310 may communicate a list of all music files stored in the first device 310 , while in other embodiments, the user may select only some of the music files.
- the first device 310 may be configured to communicate a list of only some of the music files by communicating only files with of a certain file type (e.g., .mp3 files, .wav files, etc.), with certain metadata (e.g., files containing songs of a particular genre, time period, artist, album, or the like), or contained in a particular selected folder or subfolder.
- a certain file type e.g., .mp3 files, .wav files, etc.
- metadata e.g., files containing songs of a particular genre, time period, artist, album, or the like
- the user of the first device 310 may also communicate other information to the second device about the playlist that the user would like to receive in return.
- the user of the first device 310 may specify that the playlist should not exceed a certain length of time or a certain number of songs.
- the user of the first device 310 may specify the manner with which the second device 330 should communicate the playlist to the first device 310 .
- the first device 310 eventually receives a playlist from the second device 330 .
- the first device 310 may then store this playlist in the memory 314 and may be configured to play the music files 315 stored in the memory 314 in accordance with the received playlist, as illustrated by block 560 .
- FIGS. 4 and 5 represent exemplary embodiments of the present invention and that in other embodiments of the invention one or more of the steps or processes associated with blocks 410 - 470 and 510 - 560 may be considered optional or may be performed in an order other than that illustrated in FIGS. 4 and 5 .
- the first device 310 may communicate the list of music files to the second device before, after, or contemporaneous with the communication of the selection of a profile.
- the second device 330 may generate a playlist that identifies one or more songs or files not identified by the first device 310 .
- the second device 330 may be configured to generate a playlist of recommended music that the user may want to purchase based on the music files identified by the first device 310 .
- the second device 330 may be configured to compare metadata associated with the music files identified in the received list of music files with metadata associated with music stored in a database of the second device 330 .
- the second device 330 can select music that the user of the first device does not own that is similar to the user's music and/or to the selected profile. For example, in an exemplary embodiment, when the second device 330 provides the first device 310 with an arrangement of the music identified by first device 310 , the second device 330 is further configured to provide the first device 310 with options to purchase music (or video) files that are similar to the music files identified by the first device 310 and/or associated with the selected profile.
- the first device 310 may communicate a request for a profile and the second device 330 may communicate the requested profile and metadata associated with the requested profile to the first device 310 .
- the first device 310 may then be configured to generate a playlist using the profile and profile metadata received from the second device 330 .
- the first device 310 may, for example, obtain a celebrity's profile from the second device 330 and then use that profile to generate a playlist inside the first device 310 .
- the second device 330 may be, for example, a mobile terminal 10 .
- the first device 310 may then be configured to use a peer-to-peer network, a local radio interface, or the like, to request a playlist from a second device 330 .
- the user of the first device 310 may send a list of available music files to the second device 330 and request that the user of the second device 330 create a playlist using the files available to the user of the first device 310 .
- the functions described above with respect to the various embodiments of the present invention may be carried out in many ways. For example, any suitable means for carrying out each of the functions described above may be employed to carry out embodiments of the invention.
- all or a portion of the system generally operates under control of a computer program product.
- the computer program product for performing the various processes and operations of embodiments of the present invention includes a computer-readable storage medium, such as a non-volatile storage medium, and computer-readable program code portions, such as a series of computer instructions, embodied in the computer-readable storage medium.
- the processor of the second device generally operates under the control of a computer program product to execute an arrangement generating application in order to perform the various functions described above with reference to generating an arrangement of media files in accordance with a selected profile.
- FIGS. 3-5 are flowcharts or block diagrams of operations performed by methods, systems, devices, and computer program products according to embodiments of the present invention. It will be understood that each block of a flowchart or each step of a described method can be implemented by computer program instructions. These computer program instructions may be loaded onto a computer or other programmable apparatus to produce a machine, such that the instructions which execute on the computer or other programmable apparatus create means for implementing the functions specified in the described block(s) or step(s).
- These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the described block(s) or step(s).
- the computer program instructions may also be loaded onto a computer or other programmable apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the described block(s) or step(s).
Abstract
Systems, methods, devices, and computer program products are provided for generating an arrangement of a user's media files. For example, a user of a first device may use the first device to access a second device. The second device may provide the user with the option to select a profile stored in the second device. The user may then use the first device to communicate, to the second device, a selection of a profile along with a list of music stored in the first device. The second device may then generate a playlist using music identified in the list received from the first device. The second device may generate the playlist based on the selected profile. The second device may then communicate the playlist back to the first device. The profile used by the second device to generate the playlist may be based on a particular theme or on the music preferences of a particular person.
Description
- Embodiments of the invention relate generally to systems, methods, and computer program products configured to generate an arrangement of a user's media files based on a selected profile. More particularly, embodiments of the invention relate to a system where a user can send a list of media files to a server and, in return, receive a list of at least some of these media files arranged according to a selected profile.
- Many people have accumulated large collections of electronic media files, such as digital music files. A problem associated with having so many music files is that a user may have a difficult time selecting which music files to play. A user may have more music files than he or she can easily manage and may resort to picking the same songs or combinations of songs over and over again, which can become boring.
- In response to this problem, many electronic devices that are configured to play music files have a “shuffle” option that randomly plays music files stored on the electronic device. Playing songs at random, however, has other problems. For example, a user may have a wide variety of songs stored on an electronic device, and randomly selecting songs may lead to selections of songs from different genres that do not fit well together or do not correspond to the type of music that the user wants to listen to at that moment.
- Many applications allow a user to create and save playlists, which allows a user to select certain songs and arrange them into a particular playback order. Thus, different user's using the same device can each create a playlist of their favorite songs or users can create different playlists that correspond to different genres of music or different situations or moods. Creating playlists, however, can be time consuming. Furthermore, if a user is creating a playlist of songs to play at a party or an event, a user may not know which songs are currently popular with the attendees of the party or event.
- In light of the foregoing background, exemplary embodiments of the present invention provide systems, methods, devices, and computer program products configured to automatically generate an arrangement of a user's media files based on a selected profile. For example, a user of a first device may use the first device to access a second device. The second device may provide the user with the option to select a profile stored in the second device. The user may then use the first device to communicate, to the second device, a selection of a profile along with a list of music stored in the first device. The second device may then generate a playlist using music identified in the list received from the first device. The second device may generate the playlist based on the selected profile. The second device may then communicate the playlist back to the first device. The profile used by the second device to generate the playlist may be based on a particular theme or on the music preferences of a particular person.
- In more general terms, embodiments of the present invention provide for an apparatus having a communication interface configured to receive a first electronic communication from a first device, where the first electronic communication includes an identification of a plurality of media files. The apparatus further includes a processing device configured to generate an arrangement of select media files from the plurality of media files accessible by the first device based on a predefined profile. The processing device is then configured to use the communication interface to communicate a second electronic communication to the first device, where the second electronic communication includes the arrangement.
- In one embodiment, the processing device is configured to generate an arrangement in accordance with any one of a plurality of profiles. In such an embodiment, the first electronic communication may further include an indication of a selected profile from the plurality of profiles. In this regard, the processing device may be configured to use the communication interface to provide the first device with a plurality of selectable profiles. The communication interface may then be configured to receive, from the first device, a selection of a profile from the plurality of selectable profiles. The processing device may then be configured to generate the arrangement based on the selected profile.
- In an embodiment, a plurality of media files are associated with the profile used to generate the arrangement. In such an embodiment, the processing device may be configured to compare the plurality of media files accessible by the first device to the plurality of media files associated with the profile. In another embodiment, the processing device may be configured to compare metadata associated with a media file identified by the plurality of media files accessible by the first device to metadata associated with the profile used by the processing device to generate the arrangement.
- The processing device may also be configured to generate the arrangement based on a predefined profile by: (1) determining attributes of the media files identified by the plurality of media files accessible by first device; and (2) comparing the attributes of the media files in the plurality of media files to attributes associated with the profile. For example, the processing device may be configured to determine attributes of the media files identified by the plurality of media files by comparing the media files identified by the plurality of media files to predefined attributes associated with each of a plurality of different media files.
- In an exemplary embodiment, the communication device comprises a server, such as a web server, and the first device comprises a mobile terminal. In one embodiment, the profile used by the processing device to generate the arrangement is based on arrangement preferences of a person other than the user of the first device, such as a celebrity.
- In an exemplary embodiment, the media files are music files and the arrangement includes a playlist. Where the plurality of media files comprises a plurality of music files, the processing device may be configured to generate the arrangement by comparing the plurality of music files and metadata associated with the music files to music artists, music albums, music titles, or music attributes associated with a profile.
- In one embodiment, the processor is configured to select a plurality of media files from the plurality of media files accessible by the first device based on the profile, and the processor is further configured to order the selected plurality of media files based on the profile. In one embodiment, the apparatus includes a memory device having at least one profile stored therein.
- Embodiments of the present invention further provide a method comprising: (1) receiving a first electronic communication from a first device, the electronic communication comprising an identification of a plurality of media files accessible by the first device; (2) generating an arrangement of select media files from the plurality of media files based on a predefined profile; and (3) communicating a second electronic communication to the first device, the second electronic communication comprising the arrangement. The first electronic communication may further include an indication of the predefined profile used to generate the arrangement. In this regard, the method may further involve: providing the first device with a plurality of selectable predefined profiles; receiving, from the first device, a selection of a predefined profile from the plurality of selectable profiles; and using the selected predefined profile to generate the arrangement.
- In one embodiment, generating an arrangement includes comparing the plurality of media files accessible by the first device to a plurality of media files associated with the predefined profile. In another embodiment, generating an arrangement includes: determining attributes of the media files identified by the plurality of media files accessible by the first device; and comparing the attributes of the media files in the plurality of media files to attributes associated with the predefined profile. In such an embodiment, determining attributes of the media files identified by the plurality of media files may involve comparing the media files identified by the plurality of media files to predefined attributes associated with each of a plurality of different media files. For example, the plurality of media files accessible by the first device may be compared to a database, the database having attributes assigned to each of a plurality of different media files. In one embodiment, the predefined profile used to generate the arrangement is based on the arrangement preferences of a person other than the user of the first device, such as a celebrity.
- In one embodiment, the predefined profile is stored in the memory of a second device, and the second device may include a web server. The first device may include a mobile terminal. In an exemplary embodiment, the media files are music files and the arrangement is a playlist. Where the plurality of media files includes a plurality of music files, the method may involve comparing the plurality of music files and metadata associated with the music files to music artists, music albums, music titles, or music attributes associated with the predefined profile.
- In one embodiment of the method, generating an arrangement involves selecting a plurality of media files from the plurality of media files received from the first device based on the predefined profile, and ordering the selected plurality of media files based on the predefined profile.
- Embodiments of the present invention further provide a computer program product. The computer program product may comprise at least one computer-readable storage medium having computer-readable program code logic stored therein. The computer-readable program code logic may include: (1) a first code logic configured for receiving a first communication from a first device, the communication comprising an identification of a plurality of media files accessible by the first device; (2) a second code logic configured for generating an arrangement of select media files from the plurality of media files based on a predefined profile; and (3) a third code logic configured for communicating a second communication to the first device, the second communication comprising the arrangement.
- The computer program product may further include: code logic configured for providing the first device with a plurality of selectable predefined profiles; and code logic configured for receiving, from the first device, a selection of a predefined profile from the plurality of selectable profiles, wherein the second code logic is configured to generate the arrangement based on the selected predefined profile.
- In one embodiment, the second code logic is further configured for comparing the plurality of media files accessible by the first device to a plurality of media files associated with the predefined profile. The second code logic may be further configured to determine attributes of the media files identified by the plurality of media files accessible by the first device, and may then compare the attributes of the media files identified in the plurality of media files to attributes associated with the predefined profile. For example, the second code logic may determine attributes of the media files identified by the plurality of media files by comparing the media files identified by the list of media files to predefined attributes associated with each of a plurality of different media files.
- In an exemplary embodiment, the predefined profile is stored in the memory of a second device. In an exemplary embodiment, the media files are music files and the arrangement is a playlist.
- Embodiments of the present invention further provide a method, which may, in one embodiment, be executed at a first device. Such a method may include (1) accessing a second device; (2) receiving, from the second device, an option to select a profile from a plurality of profiles; (3) communicating a selection of a selected profile from the plurality of profiles; (4) identifying a plurality of media files to the second device; and (5) receiving, from the second device, an arrangement of at least some of the identified media files.
- In one embodiment, where the plurality of media files includes a plurality of audio files stored in a memory of the first device, and where the arrangement includes a playlist, the method may further include playing the audio files on the first device in accordance with the playlist received from the second device.
- Embodiments of the present invention further provide an apparatus having a communication interface configured for communicating with a second apparatus, and a processor operatively coupled to the communication interface. The processor may be configured to (1) receive, from the second apparatus, an option to select a profile from a plurality of profiles; (2) use the communication interface to communicate, to the second apparatus, a selection of a selected profile from the plurality of profiles; (3) use the communication interface to communicate an identification of a plurality of media files to the second apparatus; and (4) receive, from the second apparatus, an arrangement of at least some of the plurality of media files. In one embodiment, the apparatus further includes a memory device and a user output device, both operatively coupled to the processor. In an exemplary embodiment, the plurality of media files includes a plurality of audio files stored in the memory device and the arrangement received from the second apparatus includes a playlist. In such an embodiment, the processor may further be configured to use the user output device to play the audio files in accordance with the playlist received from the second apparatus.
- Having thus described the invention in general terms, reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein:
-
FIG. 1 is a schematic block diagram of a mobile terminal in accordance with an exemplary embodiment of the present invention; -
FIG. 2 is a schematic block diagram of one type of system in which embodiments of the present invention may be configured to operate, according to an exemplary embodiment of the present invention; -
FIG. 3 is a schematic block diagram of a system for arranging a user's media files in accordance with an exemplary embodiment of the present invention; -
FIG. 4 is a flow diagram illustrating the process executed by the second device ofFIG. 3 , in accordance with an exemplary embodiment of the present invention; and -
FIG. 5 is a flow diagram illustrating the process executed by the first device ofFIG. 3 , in accordance with an exemplary embodiment of the present invention. - The present invention now will be described more fully hereinafter with reference to the accompanying drawings, in which some, but not all embodiments of the inventions are shown. Indeed, these inventions may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will satisfy applicable legal requirements. Like numbers refer to like elements throughout.
-
FIG. 1 illustrates a block diagram of an electronic device, and specifically amobile terminal 10, that may benefit from embodiments of the present invention. While several embodiments of themobile terminal 10 are illustrated and will be hereinafter described for purposes of example, other types of electronic devices, such as digital cameras, portable digital assistants (PDAs), pagers, mobile televisions, computers, laptop computers, and other types of systems that manipulate and/or store data files, can readily employ embodiments of the present invention. Such devices may or may not be mobile. - The
mobile terminal 10 includes a communication interface comprising anantenna 12 in operable communication with a transmitter 14 and areceiver 16. Themobile terminal 10 further includes aprocessor 20 or other processing element that provides signals to and receives signals from the transmitter 14 andreceiver 16, respectively. The signals include signaling information in accordance with the air interface standard of the applicable cellular system, and also user speech and/or user generated data. In this regard, themobile terminal 10 is capable of operating with one or more air interface standards, communication protocols, modulation types, and access types. By way of illustration, themobile terminal 10 is capable of operating in accordance with any of a number of first, second and/or third-generation communication protocols or the like. For example, themobile terminal 10 may be capable of operating in accordance with second-generation (2G) wireless communication protocols IS-136 (TDMA), GSM, and IS-95 (CDMA) or third-generation wireless communication protocol Wideband Code Division Multiple Access (WCDMA). - It is understood that the
processor 20 includes circuitry required for implementing audio and logic functions of themobile terminal 10. For example, theprocessor 20 may be comprised of a digital signal processor device, a microprocessor device, and various analog to digital converters, digital to analog converters, and other support circuits. Control and signal processing functions of themobile terminal 10 are allocated between these devices according to their respective capabilities. Theprocessor 20 thus may also include the functionality to convolutionally encode and interleave message and data prior to modulation and transmission. Theprocessor 20 can additionally include an internal voice coder, and may include an internal data modem. Further, theprocessor 20 may include functionality to operate one or more software programs, which may be stored in memory. For example, theprocessor 20 may be capable of operating a connectivity program, such as a conventional Web browser. The connectivity program may then allow themobile terminal 10 to transmit and receive Web content, such as location-based content, according to a Wireless Application Protocol (WAP), for example. - The
mobile terminal 10 also comprises a user interface including an output device such as a conventional earphone orspeaker 24, aringer 22, amicrophone 26, a display 28, and a user input interface, all of which are coupled to theprocessor 20. The user input interface, which allows themobile terminal 10 to receive data, may include any of a number of devices allowing themobile terminal 10 to receive data, such as akeypad 30, a touch display (not shown) or other input device. In embodiments including thekeypad 30, thekeypad 30 may include the conventional numeric (0-9) and related keys (#, *), and other keys used for operating themobile terminal 10. Alternatively, thekeypad 30 may include a conventional QWERTY keypad. Themobile terminal 10 further includes abattery 34, such as a vibrating battery pack, for powering various circuits that are required to operate themobile terminal 10, as well as optionally providing mechanical vibration as a detectable output. - In an exemplary embodiment, the
mobile terminal 10 includes acamera 36 in communication with theprocessor 20. Thecamera 36 may be any means for capturing an image for storage, display or transmission. For example, thecamera 36 may include a digital camera capable of forming a digital image file from a captured image. As such, thecamera 36 includes all hardware, such as a lens or other optical device, and software necessary for creating a digital image file from a captured image. Alternatively, thecamera 36 may include only the hardware needed to view an image, while a memory device of the mobile terminal 10 stores instructions for execution by theprocessor 20 in the form of software necessary to create a digital image file from a captured image. In an exemplary embodiment, thecamera 36 may further include a processing element such as a co-processor which assists theprocessor 20 in processing image data and an encoder and/or decoder for compressing and/or decompressing image data. The encoder and/or decoder may encode and/or decode according to a JPEG standard format. - The
mobile terminal 10 may further include a user identity module (UIM) 38. TheUIM 38 is typically a memory device having a processor built in. TheUIM 38 may include, for example, a subscriber identity module (SIM), a universal integrated circuit card (UICC), a universal subscriber identity module (USIM), a removable user identity module (R-UIM), etc. TheUIM 38 typically stores information elements related to a mobile subscriber. In addition to theUIM 38, themobile terminal 10 may be equipped with memory. For example, themobile terminal 10 may includevolatile memory 40, such as volatile Random Access Memory (RAM) including a cache area for the temporary storage of data. Themobile terminal 10 may also include othernon-volatile memory 42, which can be embedded and/or may be removable. Thenon-volatile memory 42 can additionally or alternatively comprise an EEPROM, flash memory or the like. The memories can store any of a number of pieces of information, and data, used by themobile terminal 10 to implement the functions of themobile terminal 10. For example, the memories can include an identifier, such as an international mobile equipment identification (IMEI) code, capable of uniquely identifying themobile terminal 10. - Referring now to
FIG. 2 , an illustration is provided of one type of system in which embodiments of the present invention may be configured to operate. The system includes a plurality of network devices. As shown, one or moremobile terminals 10 may each include anantenna 12 for transmitting signals to and for receiving signals from a base site or base station (BS) 44. Thebase station 44 may be a part of one or more cellular or mobile networks each of which includes elements required to operate the network, such as a mobile switching center (MSC) 46. As well known to those skilled in the art, the mobile network may also be referred to as a Base Station/MSC/Interworking function (BMI). In operation, theMSC 46 is capable of routing calls to and from themobile terminal 10 when themobile terminal 10 is making and receiving calls. TheMSC 46 can also provide a connection to landline trunks when themobile terminal 10 is involved in a call. In addition, theMSC 46 can be capable of controlling the forwarding of messages to and from themobile terminal 10, and can also control the forwarding of messages for themobile terminal 10 to and from a messaging center. It should be noted that although theMSC 46 is shown in the system ofFIG. 2 , theMSC 46 is merely an exemplary network device and embodiments of the present invention are not limited to use in a network employing an MSC. - The
MSC 46 can be coupled to a data network, such as a local area network (LAN), a metropolitan area network (MAN), and/or a wide area network (WAN). TheMSC 46 can be directly coupled to the data network. In one typical embodiment, however, theMSC 46 is coupled to aGTW 48, and theGTW 48 is coupled to a WAN, such as theInternet 50. In turn, devices such as processing elements (e.g., personal computers, server computers or the like) can be coupled to themobile terminal 10 via theInternet 50. For example, as explained below, the processing elements can include one or more processing elements associated with a computing system 52 (two shown inFIG. 2 ), origin server 54 (one shown inFIG. 2 ) or the like, as described below. - The
BS 44 can also be coupled to a signaling GPRS (General Packet Radio Service) support node (SGSN) 56. As known to those skilled in the art, theSGSN 56 is typically capable of performing functions similar to theMSC 46 for packet switched services. TheSGSN 56, like theMSC 46, can be coupled to a data network, such as theInternet 50. TheSGSN 56 can be directly coupled to the data network. In a more typical embodiment, however, theSGSN 56 is coupled to a packet-switched core network, such as aGPRS core network 58. The packet-switched core network is then coupled to anotherGTW 48, such as a GTW GPRS support node (GGSN) 60, and theGGSN 60 is coupled to theInternet 50. In addition to theGGSN 60, the packet-switched core network can also be coupled to aGTW 48. Also, theGGSN 60 can be coupled to a messaging center. In this regard, theGGSN 60 and theSGSN 56, like theMSC 46, may be capable of controlling the forwarding of messages, such as MMS messages. TheGGSN 60 andSGSN 56 may also be capable of controlling the forwarding of messages for themobile terminal 10 to and from the messaging center. - In addition, by coupling the
SGSN 56 to theGPRS core network 58 and theGGSN 60, devices such as acomputing system 52 and/ororigin server 54 may be coupled to themobile terminal 10 via theInternet 50,SGSN 56 andGGSN 60. In this regard, devices such as thecomputing system 52 and/ororigin server 54 may communicate with themobile terminal 10 across theSGSN 56,GPRS core network 58 and theGGSN 60. By directly or indirectly connectingmobile terminals 10 and the other devices (e.g.,computing system 52,origin server 54, etc.) to theInternet 50, themobile terminals 10 may communicate with the other devices and with one another, such as according to the Hypertext Transfer Protocol (HTTP), to thereby carry out various functions of themobile terminals 10. - Although not every element of every possible mobile network is shown and described herein, it should be appreciated that the
mobile terminal 10 may be coupled to one or more of any of a number of different networks through theBS 44. In this regard, the network(s) can be capable of supporting communication in accordance with any one or more of a number of first-generation (1G), second-generation (2G), 2.5G, third-generation (3G) and/or future mobile communication protocols or the like. For example, one or more of the network(s) can be capable of supporting communication in accordance with 2G wireless communication protocols IS-136 (TDMA), GSM, and IS-95 (CDMA). Also, for example, one or more of the network(s) can be capable of supporting communication in accordance with 2.5G wireless communication protocols GPRS, Enhanced Data GSM Environment (EDGE), or the like. Further, for example, one or more of the network(s) can be capable of supporting communication in accordance with 3G wireless communication protocols such as Universal Mobile Telephone System (UMTS) network employing Wideband Code Division Multiple Access (WCDMA) radio access technology. Some narrow-band AMPS (NAMPS), as well as TACS, network(s) may also benefit from embodiments of the present invention, as should dual or higher mode mobile stations (e.g., digital/analog or TDMA/CDMA/analog phones). - The
mobile terminal 10 can further be coupled to one or more wireless access points (APs) 62. TheAPs 62 may comprise access points configured to communicate with themobile terminal 10 in accordance with techniques such as, for example, radio frequency (RF), Bluetooth (BT), infrared (IrDA) or any of a number of different wireless networking techniques, including wireless LAN (WLAN) techniques such as IEEE 802.11 (e.g., 802.11a, 802.11b, 802.11g, 802.11n, etc.), WiMAX techniques such as IEEE 802.16, and/or ultra wideband (UWB) techniques such as IEEE 802.15 or the like. TheAPs 62 may be coupled to theInternet 50. Like with theMSC 46, theAPs 62 can be directly coupled to theInternet 50. In one embodiment, however, theAPs 62 are indirectly coupled to theInternet 50 via aGTW 48. Furthermore, in one embodiment, theBS 44 may be considered as anotherAP 62. As will be appreciated, by directly or indirectly connecting themobile terminals 10 and thecomputing system 52, theorigin server 54, and/or any of a number of other devices, to theInternet 50, themobile terminals 10 can communicate with one another, the computing system, etc., to thereby carry out various functions of themobile terminals 10, such as to transmit data, content or the like to, and/or receive content, data or the like from, thecomputing system 52. As used herein, the terms “data,” “content,” “information” and similar terms may be used interchangeably to refer to data capable of being transmitted, received and/or stored in accordance with embodiments of the present invention. Thus, use of any such terms should not be taken to limit the spirit and scope of the present invention. - Although not shown in
FIG. 2 , in addition to or in lieu of coupling themobile terminal 10 tocomputing systems 52 across theInternet 50, themobile terminal 10 andcomputing system 52 may be coupled to one another and communicate in accordance with, for example, RF, BT, IrDA or any of a number of different wireline or wireless communication techniques, including LAN, WLAN, WiMAX and/or UWB techniques. One or more of thecomputing systems 52 can additionally, or alternatively, include a removable memory capable of storing content, which can thereafter be transferred to themobile terminal 10. Further, themobile terminal 10 can be coupled to one or more electronic devices, such as printers, digital projectors and/or other multimedia capturing, producing and/or storing devices (e.g., other terminals). Like with thecomputing systems 52, themobile terminal 10 may be configured to communicate with the portable electronic devices in accordance with techniques such as, for example, RF, BT, IrDA or any of a number of different wireline or wireless communication techniques, including USB, LAN, WLAN, WiMAX and/or UWB techniques. - Referring now to
FIG. 3 , a schematic block diagram is provided of asystem 300 for generating an arrangement of a user's media files in accordance with one embodiment of the present invention. It should be noted that, althoughFIGS. 3-5 and the associated descriptions below generally describe a system configured for generating a playlist comprised of music stored in a user's device, other embodiments of the present invention may be configured to generate arrangements of any type of media file stored in the user's device, such as audio files, video files, digital images, text files, podcast files, and the like. In other words, a music file is an exemplary embodiment of a media file that may be manipulated by embodiments of the present invention. - As illustrated in
FIG. 3 , in an exemplary embodiment, the system includes afirst device 310 and asecond device 330 communicatively coupled to each other via a network or other communication system. In one embodiment, thefirst device 310 is a mobile terminal, such as themobile terminal 10 described above with respect toFIG. 1 . In another embodiment, thefirst device 310 may be a personal computer or other computing device. Thesecond device 330 is also an electronic device and, in one embodiment, comprises a server communicatively coupled to a network, such as a web-server coupled to the Internet. In other embodiments, however, thesecond device 330 may be a mobile terminal, such as themobile terminal 10 described above, or any other electronic device. In one embodiment, the network or communication system (not shown) coupling the two devices includes the Internet. As such, in one embodiment, the devices may be configured to communicate with each other using hypertext transfer protocol (HTTP) or any other communication protocol. In other embodiments, the communication system communicatively coupling the two devices may include some or all of the communication system described above with respect toFIG. 2 . - In general, the
first device 310 is configured to provide thesecond device 330 with a list of media files and selection of a profile. Thesecond device 330 is then configured to arrange at least some of the music files identified in the received list into a playlist according to the selected profile. In one embodiment, the profile and associated information used to make the arrangement are stored in thesecond device 330. Thesecond device 330 may then communicate the playlist back to thefirst device 310 so that the user of thefirst device 310 can play the music identified in the received playlist. - More particularly, the
first device 310 generally includes aprocessor 318. Operably coupled to theprocessor 318 is amemory 314, thememory 314 having a plurality of music files (or other media files) stored therein. Thememory 314 may also include computer-readable program instructions stored therein that can be executed by theprocessor 318 to perform certain predefined processes or process steps in thefirst device 310, such as the processes described below with reference toFIG. 5 . Thefirst device 310 may further include auser interface 316 operably coupled to theprocessor 318. Theuser interface 316 may be configured to receive input from a user and communicate the input to theprocessor 318. For example, theuser interface 316 may include a touch screen, touchpad, microphone, mouse, joystick, keypad, and the like. Theuser interface 316 may also be configured to communicate output to a user based on signals received from theprocessor 318. For example, thefirst device 310 will typically include a display device and a speaker. Theprocessor 318 may be configured to use the speaker to play themusic 315 stored in thememory 314. Theprocessor 316 may be configured to display visual information on the display device, such as textual metadata or other visual metadata associated with the music files 315 stored in thememory 314. Such metadata may include such information as a song's title, artist, album, genre, lyrics, and the like. Thefirst device 312 may further include acommunication interface 312 operably coupled to theprocessor 318 and configured to send and receive communications to and from other devices, such as thesecond device 330 or some other network device. - The
second device 330 also typically includes means, such as aprocessor 338, for generating an arrangement, e.g., a playlist, of media files accessible by the first device. Theprocessor 338 is operably coupled to means, such as acommunication interface 332, for communicating with the first device and amemory 334. Thecommunication interface 332 is configured to send and receive communications from other devices, such as thefirst device 310 or some other network device. Thememory 334 is configured to store information therein that can be accessed by theprocessor 338. In this regard, thememory 334 may include computer-readable program instructions stored therein that are configured to be executed by theprocessor 338 to perform certain predefined processes or process steps in thesecond device 330, such as the processes described below with reference toFIG. 4 . Thememory 334 may also include a music metadata database ordata store 335 and a profiles database ordata store 336. These databases are described in greater detail below with reference toFIGS. 4 and 5 . -
FIG. 4 is a flow diagram illustrating aprocess 400 that may be executed by thesecond device 330 ofFIG. 3 in accordance with an exemplary embodiment of the present invention. As illustrated byblock 410, thesecond device 330 may provide thefirst device 310 with the option to select a profile from a plurality of selectable profiles. For example, thefirst device 310 may access thesecond device 330 via a communication network, such as the Internet. Thesecond device 330 may then use itscommunication interface 332 to provide thefirst device 310 with an option to select one of a plurality of profiles by, for example, sending a list of the profiles to thefirst device 310 so that thefirst device 310 can display the list on its display device. In one embodiment, thesecond device 330 hosts a web page and communicates with thefirst device 310 using the web page. In such an embodiment, thesecond device 330 may display a list of available profiles on one or more web pages. - In this regard, the
second device 330 will generally have a plurality ofpredefined profiles 336 stored in amemory 334. As used herein, a “profile” may include a predefined set of rules and/or other information that can be used by theprocessor 338 to select music that corresponds to a certain theme and/or to a certain person's preferences. For example, in one embodiment, a profile is generated for a particular celebrity and therefore has rules and/or other information that can be used by the processor 338 (e.g., when executing computer-readable program instructions) to select music that the celebrity may prefer or otherwise choose to listen to in a given situation. In one embodiment, the profile may further include information about the order in which selected music should be played. In other embodiments, a profile may be generated for a particular theme or mood. For example, a profile that is configured to help theprocessor 338 select music that corresponds to particular mood may be configured to help the processor select music that is sad, happy, angry, lazy, aggressive, or is commonly associated with any other type of mood. A profile that is configured to help theprocessor 338 select music that corresponds to a particular theme may be configured to help the processor select music that is commonly played at a party for 20-30 year olds, a nightclub, a wedding reception, a wedding ceremony, a gym, a child's birthday party, or on a lazy Sunday morning. In other words, profiles may be generated to help theprocessor 338 select music that is commonly associated with any type of event, occasion, purpose, or audience. In other embodiments, the profile may be configured for a combination of a particular person and a mood or theme. In such an embodiment, the profile would be configured to help theprocessor 338 select an arrangement of music that would correspond to music that may be selected by the particular person when that person is in a particular mood or is selecting music for a particular theme. Thus, a user of thefirst device 310 who has a large collection of music files stored in amemory 314 can access thesecond device 330 and have thesecond device 330 generate an appropriate playlist of the user's music. At the request of the user, thesecond device 330 may tailor the playlist to some event that the user is planning. In another example, if the user is a fan of a particular celebrity, thesecond device 330 may tailor the playlist to correspond to music that the celebrity may listen to in a given situation or mood. - Returning again to
FIG. 4 , as illustrated byblock 420, thesecond device 330 may receive an indication from thefirst device 310 of a user's selection of a profile. Thesecond device 330 may receive this selection via thecommunication interface 332 and communicate it to theprocessor 338. - As illustrated by
block 430, thesecond device 330 may also receive a list of music files from thefirst device 310. In an exemplary embodiment, the list of music files identifies a plurality of music files stored within amemory 314 of thefirst device 310. Such a list may include the media files themselves; however, in a preferred embodiment, the list merely identifies the files by some sort of file title or other metadata associated with the files. For example, the list may comprise a list of the file names, the titles, artists, or albums associated with the music file, a portion of the recording or the lyrics, and/or any other information that may be used to identify the contents of the media files stored on thefirst device 310. In one embodiment, the user of thefirst device 310 uses theuser interface 316 to instruct theprocessor 318 to generate a list of music files and to communicate the list to thesecond device 330. In other embodiments, however, thesecond device 330 may be configured to automatically interact with thefirst device 310 to obtain an indication of themedia files 315 stored in thememory 314 of thefirst device 310. For example, thesecond device 330 may be configured to access a shared folder on thememory 314 of thefirst device 310, the shared folder containing the music files of thefirst device 310. - In some embodiments, the
first device 310 communicates a list of all its music files to thesecond device 330. In other embodiments, however, thefirst device 310 may communicate a list of only a portion of its music files. For example, thesecond device 330 may be configured to store a list of a user's files (such as the first device user's files stored on the first device 310) under a user profile. In such an embodiment, thefirst device 310 may be configured to communicate a list of only any new files acquired by the user since the last time the user sent a list of music files to thesecond device 330. In this way, bandwidth may be saved when communicating with thesecond device 330. Thesecond device 330 may then consolidate the received list with the earlier stored information, e.g. by deleting some file entries and adding files to the list communicated of thefirst device 310. Furthermore, where thesecond device 330 is configured to store the music files received from the first device 310 (or to store a list of the music files identified by the first device) thefirst device 310 may only need to communicate to the second device 330 a request to generate a new playlist on subsequent playlist generation requests. - In the exemplary embodiment of
FIG. 4 , after thesecond device 330 receives the list of music from thefirst device 310, thesecond device 330 may then associate the music identified in the list with predefined metadata or a predefined identifier. For example, in one embodiment, thefirst device 310 provides a list of music in the form of the titles of the music files stored in the first device'smemory 315. File names for music files typically include the song title; however, the song title may be misspelled, incorrect, or missing from the file name since file names are often customized by the user. As such, it may be difficult to identify songs in the list since the same song may be saved under different file names by different users or even by the same user. Thus, before thesecond device 330 begins the process of generating a playlist, thesecond device 330 may need to first attempt to identify the music that is identified in the received list. In one embodiment, thesecond device 330 is configured to identify music from the list using theprocessor 338 to compare entries in the received list to entries in amusic metadata database 335 stored in the second device'smemory 334. Themusic metadata database 335 may include entries for each of a plurality of songs or other recordings and may have a plurality of alternate titles that may be associated with each song or recording. In this way, theprocessor 338 may take an entry from the received list of music and try to match the entry to one of the alternate titles in thedatabase 335. In addition to or as an alternative to using such a database, thesecond device 330 may have an algorithm, typically embodied in software executed by theprocessor 338, used to identify the most likely song that an entry in the list corresponds to. For example, such an algorithm may be configured to identify a song title despite minor misspellings or variations in the title. Once an entry from the received list is identified as corresponding to a particular known song or other recording, thesecond device 330 may associate a new identifier to the list entry, the new identifier being one that is known by the second device as corresponding to a certain song or recording. Such an identifier may be text-based, such as a song title, or such an identifier may include a numeric or alphanumeric code that corresponds to a known song or recording. - In addition to identifying the entries in the music list, the
second device 330 may also be configured to associate metadata with each list entry. In this regard, themusic metadata database 335 may include a database of songs and other recordings along with metadata associated with each song or other recording. Such metadata may include information such as song titles, artist information, album information, year of release, year of production, genre, movies that the song was played in, and the like. Such metadata may also include one or more attributes assigned to each song in the database. For example, an attribute may be a feeling, mood, event, audience, or theme often associated with the song or other recording, or an attribute may be any other information that is commonly used to describe the song or is commonly associated with the song. Thesecond device 330 may be configured to compare the entries in the received list to themusic metadata database 335 to assign music metadata to the entries. As described below, this metadata may be useful when thesecond device 330 is selecting songs from the list in accordance with a predefined profile. - In other embodiments of the present invention, the list of music files may already include several items of metadata associated with each music file identified in the list. For example, the music files stored in the
first device 310 may each be associated with such metadata as the song title, the artist, the album, the year, and/or the genre. The metadata may be associated with a media file using, for example, an ID3 tag format or the like. As such, the list sent to thesecond device 330 may include some or all of the metadata associated with the music files identified by the list. Thus, in some embodiments, the process illustrated byblock 440 may be eliminated, since, in some embodiments, the list of music files may include enough metadata information that will allow thesecond device 330 to select music files from the list to use in a playlist. - Returning to
FIG. 4 , as illustrated byblock 450, thesecond device 330 may be configured to compare music identified in the received list and/or the music's associated metadata (e.g., metadata included in the list or associated with a list entry by thesecond device 330, as described above with regard to block 440) with information associated with the selected profile. In this regard, thesecond device 330 may have adatabase 336 of profiles and associated information stored in amemory 334. Thesecond device 330 may be configured to associate an entry (e.g., a song) from the received list with a selected profile by comparing the list entry and any of the entry's associated metadata with entries in theprofile database 336 and any metadata associated with the database entries. For example, theprofiles database 336 may include entries for a plurality of different profiles, such as a plurality of different celebrity profiles and/or a plurality of different theme profiles. Each profile may include music metadata associated with the profile that the processor can use to select music. - In one embodiment, each profile in the
database 336 has a list of songs associated with the profile. Theprocessor 338 of thesecond device 330 may then be configured to compare the songs identified by the list received from thefirst device 310 with the songs identified in the list associated with the selected profile in theprofiles database 336. Theprocessor 338 may be configured to identify any songs that are in both lists and use such songs to generate a playlist, as illustrated byblock 460 ofFIG. 4 . In one embodiment, the user of thefirst device 310 can indicate to thesecond device 330 that the playlist generated by thesecond device 330 should not exceed a specified length or should not exceed a specified number of songs. In such an embodiment, the songs associated with theprofiles database 336 may be ranked based on their relevance to the profile's theme or on the profile person's preferences, as the case may be. Thesecond device 330 may then be configured to select only the highest ranked songs from the list if the list contains more relevant songs than are needed to fill a playlist of the specified length or number of files. - In one embodiment, even if a song from the received list does not match a song associated with the selected profile, the
second device 330 may be configured to select the song from the received list based on other song metadata. For example, a profile may have a particular artist or album associated with it or may have a plurality of songs associated with it that are all from the same artist or album. In such an embodiment, thesecond device 330 may be configured to select songs from the received list that are associated with the same artist or album. - For example, in an exemplary embodiment where the profile is configured to be used to select music that a particular famous athlete may listen to during a workout, the
profile database 336 may include a list of the songs, artists, and/or albums that the athlete prefers to listen to when exercising at the gym. The profiles database may also include a list of song attributes that the athlete looks for in a song when the athlete is exercising at the gym. For example, an athlete may choose to workout to a song that has a “fast” beat or to a song that is considered to have an “intense” tone or is considered by the athlete or by people in general to be “motivational” or “a good workout song.” A song may then be selected by thesecond device 330 for the playlist if themusic metadata database 335 associates any of these attributes to the song. Such a list of songs, attributes, or other music metadata associated with a celebrity profile may be generated by the celebrity or may be generated by someone else based on knowledge of the celebrity's preferences. - It should be noted that, just as a profile stored in the
profiles database 336 may be associated with a list of songs and/or attributes that a particular person prefers or that are commonly associated with a particular theme or mood, a profile may also be associated with a list of songs and/or attributes that a particular person specifically does not like or that is commonly not associated with a particular theme or mood. For example, to return to the example of a profile associated with a famous athlete's preferred workout music, theprofiles database 336 may indicate that theprocessor 338 should not select songs from the list that are considered “romantic ballads” if the athlete does not like to workout to songs identified as such. - By comparing the music identified by the received list or the music's associated metadata to music or metadata associated with the selected profile, the
processor 338 of thesecond device 330 can select music from the received list to use in a playlist, as illustrated byblock 460 ofFIG. 4 . In one embodiment, theprocessor 338 randomly orders the selected songs in the playlist. In other embodiments, however, theprocessor 338 may order the songs based on predefined rules and/or on information associated with the selected profile. For example, where the selected profile includes a list of songs, the selected profile may specify a preferred order such that theprocessor 338 orders the selected songs in the order in which they appear in the playlist. In other embodiments, the order may be based on a rank associated with the song or its relevance to the selected profile based on the number or type of metadata correlations between the listed media file and the profile. In some cases, ordering rules may specify an order based on attributes associated with the selected songs. For example, if the selected profile is one that is intended to generate a playlist for a party, the profile may include a rule that instructs theprocessor 338 to place songs at the end of the playlist if the song has metadata associated with it that indicates the song as a “good party ending song.” Alternatively, the profile may include lists of beginning party songs, middle party songs, and ending party songs and the processor may order the playlist accordingly. - As illustrated by
block 470 inFIG. 4 , thesecond device 330 may be configured to use thecommunication interface 330 to communicate the playlist to thefirst device 310. Thesecond device 330 may be configured to communicate the playlist via a web page, e-mail, Short Message Service (SMS), or any other communication means. Since, in the preferred embodiment, the playlist only includes music selected from the list of music files stored in thememory 314 of thefirst device 310, the playlist is generally only a list of music file identifiers that thefirst device 310 and/or the first device's user can recognize. - Referring now to
FIG. 5 , a flow diagram is provided illustrating aprocess 500 that may be executed by thefirst device 310 ofFIG. 3 , in accordance with an exemplary embodiment of the present invention. In this regard, block 510 illustrates that thefirst device 310 may initially access thesecond device 330. For example, thefirst device 310 may use itscommunication interface 312 to access a web page hosted on the Internet by thesecond device 330. As illustrated byblock 520, thefirst device 330 may receive from thesecond device 330 an option to select a profile from a plurality of selectable profiles. For example, thefirst device 310 may receive a list of profiles stored in amemory 334 of thesecond device 330, and thefirst device 310 may display this list for the user on a display device of theuser interface 316. In one embodiment, the second device may host a web page that allows a user to search for profiles amongst aprofiles database 336 stored in thememory 334, for example, by keyword searching. - As illustrated by
block 530, the first device may use itscommunication interface 312 to communicate a selection of one of the profiles offered by thesecond device 330. For example, the user of the first device may actuate a user input device of theuser interface 316 to select a profile and communicate the selected profile to thesecond device 330. - As illustrated by
block 540, the first device may also communicate a list of music files to thesecond device 330. As described above, the list communicated to the second device may not actually contain any actual music files, but may only contain indications, such as music file names, of music files stored in thememory 314 of thefirst device 310. In one embodiment, the user of thefirst device 310 uses a user input device to select the music files that the user desires to communicate to thesecond device 330; however, as also described above, in another embodiment thefirst device 310 may provide thesecond device 330 with access to a shared folder in the first device'smemory 314 so that thesecond device 330 can see any music files contained within the folder. In one embodiment, the user of thefirst device 310 may communicate a list of all music files stored in thefirst device 310, while in other embodiments, the user may select only some of the music files. Thefirst device 310 may be configured to communicate a list of only some of the music files by communicating only files with of a certain file type (e.g., .mp3 files, .wav files, etc.), with certain metadata (e.g., files containing songs of a particular genre, time period, artist, album, or the like), or contained in a particular selected folder or subfolder. - Although not illustrated in
FIG. 5 , the user of thefirst device 310 may also communicate other information to the second device about the playlist that the user would like to receive in return. For example, the user of thefirst device 310 may specify that the playlist should not exceed a certain length of time or a certain number of songs. In another example, the user of thefirst device 310 may specify the manner with which thesecond device 330 should communicate the playlist to thefirst device 310. - As illustrated by
block 550, thefirst device 310 eventually receives a playlist from thesecond device 330. Thefirst device 310 may then store this playlist in thememory 314 and may be configured to play the music files 315 stored in thememory 314 in accordance with the received playlist, as illustrated byblock 560. - It should be noted that
FIGS. 4 and 5 represent exemplary embodiments of the present invention and that in other embodiments of the invention one or more of the steps or processes associated with blocks 410-470 and 510-560 may be considered optional or may be performed in an order other than that illustrated inFIGS. 4 and 5 . For example, inFIG. 5 , thefirst device 310 may communicate the list of music files to the second device before, after, or contemporaneous with the communication of the selection of a profile. - Although the figures described herein generally illustrate an embodiment of the present invention where the
second device 330 creates a playlist using music files identified by thefirst device 310, in other embodiments of the invention thesecond device 330 may generate a playlist that identifies one or more songs or files not identified by thefirst device 310. For example, thesecond device 330 may be configured to generate a playlist of recommended music that the user may want to purchase based on the music files identified by thefirst device 310. In this regard, thesecond device 330 may be configured to compare metadata associated with the music files identified in the received list of music files with metadata associated with music stored in a database of thesecond device 330. In this way, thesecond device 330 can select music that the user of the first device does not own that is similar to the user's music and/or to the selected profile. For example, in an exemplary embodiment, when thesecond device 330 provides thefirst device 310 with an arrangement of the music identified byfirst device 310, thesecond device 330 is further configured to provide thefirst device 310 with options to purchase music (or video) files that are similar to the music files identified by thefirst device 310 and/or associated with the selected profile. - In addition to or as an alternative to the embodiments described above, the
first device 310 may communicate a request for a profile and thesecond device 330 may communicate the requested profile and metadata associated with the requested profile to thefirst device 310. Thefirst device 310 may then be configured to generate a playlist using the profile and profile metadata received from thesecond device 330. For example, thefirst device 310 may, for example, obtain a celebrity's profile from thesecond device 330 and then use that profile to generate a playlist inside thefirst device 310. - In still another exemplary embodiment, the
second device 330 may be, for example, amobile terminal 10. Thefirst device 310 may then be configured to use a peer-to-peer network, a local radio interface, or the like, to request a playlist from asecond device 330. In such an embodiment, the user of thefirst device 310 may send a list of available music files to thesecond device 330 and request that the user of thesecond device 330 create a playlist using the files available to the user of thefirst device 310. - The functions described above with respect to the various embodiments of the present invention may be carried out in many ways. For example, any suitable means for carrying out each of the functions described above may be employed to carry out embodiments of the invention. According to one aspect of the present invention, all or a portion of the system generally operates under control of a computer program product. The computer program product for performing the various processes and operations of embodiments of the present invention includes a computer-readable storage medium, such as a non-volatile storage medium, and computer-readable program code portions, such as a series of computer instructions, embodied in the computer-readable storage medium. For example, in one embodiment, the processor of the second device generally operates under the control of a computer program product to execute an arrangement generating application in order to perform the various functions described above with reference to generating an arrangement of media files in accordance with a selected profile.
- In this regard,
FIGS. 3-5 are flowcharts or block diagrams of operations performed by methods, systems, devices, and computer program products according to embodiments of the present invention. It will be understood that each block of a flowchart or each step of a described method can be implemented by computer program instructions. These computer program instructions may be loaded onto a computer or other programmable apparatus to produce a machine, such that the instructions which execute on the computer or other programmable apparatus create means for implementing the functions specified in the described block(s) or step(s). These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the described block(s) or step(s). The computer program instructions may also be loaded onto a computer or other programmable apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the described block(s) or step(s). - It will also be understood that each block or step of a described herein, and combinations of blocks or steps, can be implemented by special purpose hardware-based computer systems which perform the specified functions or steps, or combinations of special purpose hardware and computer instructions.
- Many modifications and other embodiments of the inventions set forth herein will come to mind to one skilled in the art to which these inventions pertain having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the inventions are not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.
Claims (37)
1. An apparatus comprising:
a communication interface configured to receive a first electronic communication from a first device, the electronic communication comprising an identification of a plurality of media files accessible by the first device; and
a processing device configured to generate an arrangement of select media files from the plurality of media files accessible by the first device based on a predefined profile; wherein the processing device is further configured to use the communication interface to communicate a second electronic communication to the first device, the second electronic communication comprising the arrangement.
2. The apparatus of claim 1 , wherein the processing device is configured to generate an arrangement in accordance with any one of a plurality of profiles, wherein the first electronic communication further comprises an indication of a selected profile from the plurality of profiles, and wherein the processing device is configured to generate the arrangement based on the selected profile.
3. The apparatus of claim 1 , wherein the processing device is further configured to use the communication interface to provide the first device with a plurality of selectable profiles.
4. The apparatus of claim 3 , wherein the communication interface is further configured to receive, from the first device, a selection of a profile from the plurality of selectable profiles, and wherein the processing device is configured to use the selected profile to generate the arrangement.
5. The apparatus of claim 1 , wherein a plurality of media files are associated with the profile used to generate the arrangement, and wherein the processing device is configured to compare the plurality of media files accessible by the first device to the plurality of media files associated with the profile.
6. The apparatus of claim 1 , wherein the processing device is configured to compare metadata associated with a media file identified by the plurality of media files accessible by the first device to metadata associated with the profile used by the processing device to generate the arrangement.
7. The apparatus of claim 1 , wherein the processing device is configured to generate the arrangement based on a predefined profile by determining attributes of the media files identified by the plurality of media files accessible by the first device, and by comparing the attributes of the media files in the plurality of media files to attributes associated with the profile.
8. The apparatus of claim 7 , wherein the processing device is configured to determine attributes of the media files identified by the plurality of media files by comparing the media files identified by the plurality of media files to predefined attributes associated with each of a plurality of different media files.
9. The apparatus of claim 1 , wherein the communication device comprises a web server.
10. The apparatus of claim 1 , wherein the first device comprises a mobile terminal.
11. The apparatus of claim 1 , wherein the profile used by the processing device to generate the arrangement is based on arrangement preferences of a person other than the user of the first device.
12. The apparatus of claim 11 , wherein the person other than the user of the first device is a celebrity.
13. The apparatus of claim 1 , wherein the media files are music files, and wherein the arrangement comprises a playlist.
14. The apparatus of claim 1 , wherein the plurality of media files comprises a plurality of music files, and wherein the processing device is further configured to generate the arrangement based on a profile by comparing the plurality of music files and metadata associated with the music files to music artists, music albums, music titles, or music attributes associated with the profile.
15. The apparatus of claim 1 , wherein the processing device is configured to select a plurality of media files from the plurality of media files accessible by the first device based on the profile, and wherein the processing device is further configured to order the selected plurality of media files based on the profile.
16. A method comprising:
receiving a first electronic communication from a first device, the electronic communication comprising an identification of a plurality of media files accessible by the first device;
generating an arrangement of select media files from the plurality of media files based on a predefined profile; and
communicating a second electronic communication to the first device, the second electronic communication comprising the arrangement.
17. The method of claim 16 , wherein the first electronic communication further comprises an indication of the predefined profile used to generate the arrangement.
18. The method of claim 16 , further comprising:
providing the first device with a plurality of selectable predefined profiles;
receiving, from the first device, a selection of a predefined profile from the plurality of selectable profiles; and
using the selected predefined profile to generate the arrangement.
19. The method of claim 16 , wherein generating an arrangement comprises:
comparing the plurality of media files accessible by the first device to a plurality of media files associated with the predefined profile.
20. The method of claim 16 , wherein generating an arrangement comprises:
determining attributes of the media files identified by the plurality of media files accessible by the first device; and
comparing the attributes of the media files in the plurality of media files to attributes associated with the predefined profile.
21. The method of claim 20 , wherein determining attributes of the plurality of media files comprises comparing the media files identified by the plurality of media files to predefined attributes associated with each of a plurality of different media files.
22. The method of claim 16 , wherein the predefined profile is stored in the memory of a second device.
23. The method of claim 16 , wherein the predefined profile used to generate the arrangement is based on the arrangement preferences of a person other than the user of the first device.
24. The method of claim 16 , wherein the plurality of media files comprises a plurality of music files, the method further comprising:
comparing the plurality of music files and metadata associated with the music files to music artists, music albums, music titles, or music attributes associated with the predefined profile.
25. The method of claim 16 , wherein generating an arrangement comprises:
selecting a plurality of media files from the plurality of media files accessible by the first device based on the predefined profile; and
ordering the selected plurality of media files based on the predefined profile.
26. A computer program product comprising at least one computer-readable storage medium having computer-readable program code logic stored therein, the computer-readable program code logic comprising:
a first code logic configured for receiving a first communication from a first device, the communication comprising an identification of a plurality of media files accessible by the first device;
a second code logic configured for generating an arrangement of select media files from the plurality of media files based on a predefined profile; and
a third code logic configured for communicating a second communication to the first device, the second communication comprising the arrangement.
27. The computer program product of claim 26 , further comprising:
a fourth code logic configured for providing the first device with a plurality of selectable predefined profiles.
28. The computer program product of claim 27 , further comprising:
a fifth code logic configured for receiving, from the first device, a selection of a predefined profile from the plurality of selectable profiles, wherein the second code logic is configured to generate the arrangement based on the selected predefined profile.
29. The computer program product of claim 26 , wherein the second code logic is further configured for comparing the plurality of media files accessible by the first device to a plurality of media files associated with the predefined profile.
30. The computer program product of claim 26 , wherein the second code logic is further configured for determining attributes of the media files identified by the plurality of media files accessible by the first device, and comparing the attributes of the media files in the plurality of media files to attributes associated with the predefined profile.
31. The computer program product of claim 30 , wherein the second code logic is further configured for determining attributes of the media files identified by the plurality of media files by comparing the media files identified by the plurality of media files to predefined attributes associated with each of a plurality of different media files.
32. The computer program product of claim 26 , wherein the predefined profile is stored in the memory of a second device.
33. An apparatus comprising:
communication means for receiving a first electronic communication from a first device, the electronic communication comprising an identification of a plurality of media files accessible by the first device; and
processing means for generating an arrangement of select media files from the plurality of media files accessible by the first device based on a predefined profile; wherein the processing means is further configured for using the communication interface to communicate a second electronic communication to the first device, the second electronic communication comprising the arrangement.
34. A method comprising:
accessing a second device;
receiving, from the second device, an option to select a profile from a plurality of profiles;
communicating a selection of a selected profile from the plurality of profiles;
identifying a plurality of media files to the second device; and
receiving, from the second device, an arrangement of at least some of the identified media files.
35. The method of claim 34 , wherein the plurality of media files comprises a plurality of audio files stored in a memory of a first device, and wherein the arrangement comprises a playlist, the method further comprising:
playing the audio files on the first device in accordance with the playlist received from the second device.
36. An apparatus comprising:
a communication interface configured for communicating with a second apparatus; and
a processor operatively coupled to the communication interface,
wherein the processor is configured to receive, from the second apparatus, an option to select a profile from a plurality of profiles,
wherein the processor is further configured to use the communication interface to communicate, to the second apparatus, a selection of a selected profile from the plurality of profiles,
wherein the processor is further configured to use the communication interface to communicate an identification of a plurality of media files to the second apparatus, and
wherein the processor is further configured to receive, from the second apparatus, an arrangement of at least some of the plurality of media files.
37. The apparatus of claim 36 , further comprising:
a memory device operatively coupled to the processor; and
a user output device operatively coupled to the processor,
wherein the plurality of media files comprises a plurality of audio files stored in the memory device,
wherein the arrangement comprises a playlist, and
wherein the processor is further configured to use the user output device to play the audio files in accordance with the playlist received from the second apparatus.
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/695,851 US20080250328A1 (en) | 2007-04-03 | 2007-04-03 | Systems, methods, devices, and computer program products for arranging a user's media files |
CN200880010309A CN101652776A (en) | 2007-04-03 | 2008-01-31 | Systems, methods, devices, and computer program products for arranging a user's media files |
PCT/IB2008/050378 WO2008120111A1 (en) | 2007-04-03 | 2008-01-31 | Systems, methods, devices, and computer program products for arranging a user's media files |
KR1020097022944A KR20100004108A (en) | 2007-04-03 | 2008-01-31 | Systems, methods, devices, and computer program products for arranging a user's media files |
EP08709957.8A EP2130150B1 (en) | 2007-04-03 | 2008-01-31 | Systems, methods, devices, and computer program products for arranging a user's media files |
TW097105301A TW200841669A (en) | 2007-04-03 | 2008-02-15 | Systems, methods, devices, and computer program products for arranging a user's media files |
US15/426,522 US9977783B2 (en) | 2007-04-03 | 2017-02-07 | Systems, methods, devices, and computer program products for arranging a user's media files |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/695,851 US20080250328A1 (en) | 2007-04-03 | 2007-04-03 | Systems, methods, devices, and computer program products for arranging a user's media files |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/426,522 Continuation US9977783B2 (en) | 2007-04-03 | 2017-02-07 | Systems, methods, devices, and computer program products for arranging a user's media files |
Publications (1)
Publication Number | Publication Date |
---|---|
US20080250328A1 true US20080250328A1 (en) | 2008-10-09 |
Family
ID=39471785
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/695,851 Abandoned US20080250328A1 (en) | 2007-04-03 | 2007-04-03 | Systems, methods, devices, and computer program products for arranging a user's media files |
US15/426,522 Active US9977783B2 (en) | 2007-04-03 | 2017-02-07 | Systems, methods, devices, and computer program products for arranging a user's media files |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/426,522 Active US9977783B2 (en) | 2007-04-03 | 2017-02-07 | Systems, methods, devices, and computer program products for arranging a user's media files |
Country Status (6)
Country | Link |
---|---|
US (2) | US20080250328A1 (en) |
EP (1) | EP2130150B1 (en) |
KR (1) | KR20100004108A (en) |
CN (1) | CN101652776A (en) |
TW (1) | TW200841669A (en) |
WO (1) | WO2008120111A1 (en) |
Cited By (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080259042A1 (en) * | 2007-04-17 | 2008-10-23 | Sony Ericsson Mobile Communications Ab | Using touches to transfer information between devices |
US20090150445A1 (en) * | 2007-12-07 | 2009-06-11 | Tilman Herberger | System and method for efficient generation and management of similarity playlists on portable devices |
US20090275310A1 (en) * | 2008-05-02 | 2009-11-05 | Fletcher Benjamin J | Techniques for Avoiding Redundant Transmissions of Data During Multimedia Mobile Phone Communications |
US20100037752A1 (en) * | 2008-08-13 | 2010-02-18 | Emil Hansson | Music player connection system for enhanced playlist selection |
US20100241529A1 (en) * | 2009-03-17 | 2010-09-23 | Samsung Electronics Co., Ltd. | Content transaction method and system |
US20100274816A1 (en) * | 2009-04-28 | 2010-10-28 | Whp Workflow Solutions, Llc | Correlated media for distributed sources |
US20110018998A1 (en) * | 2009-04-28 | 2011-01-27 | Whp Workflow Solutions, Llc | Correlated media source management and response control |
US20110145263A1 (en) * | 2008-09-05 | 2011-06-16 | Takayuki Sakamoto | Content recommendation system, content recommendation method, content recommendation apparatus, program, and information storage medium |
US20110153638A1 (en) * | 2009-12-17 | 2011-06-23 | International Business Machines Corporation | Continuity and quality of artistic media collections |
US20110288929A1 (en) * | 2010-05-24 | 2011-11-24 | Microsoft Corporation | Enhancing Photo Browsing through Music and Advertising |
US20110307817A1 (en) * | 2010-06-11 | 2011-12-15 | Microsoft Corporation | Secure Application Interoperation via User Interface Gestures |
US20120172016A1 (en) * | 2010-12-30 | 2012-07-05 | STMicroelectronics NV, Country of Incorporation: Italy | Method and system for controlling communication between an uicc and an external application |
US8229219B1 (en) | 2009-08-06 | 2012-07-24 | Google Inc. | Full-length video fingerprinting |
US8290918B1 (en) * | 2009-09-29 | 2012-10-16 | Google Inc. | Robust hashing of digital media data |
US20130144755A1 (en) * | 2011-12-01 | 2013-06-06 | Microsoft Corporation | Application licensing authentication |
US20130173034A1 (en) * | 2011-12-28 | 2013-07-04 | Robert Reimann | Methods and Systems to Select an Audio Track |
US20130198038A1 (en) * | 2012-01-26 | 2013-08-01 | Microsoft Corporation | Document template licensing |
US20140033123A1 (en) * | 2009-07-30 | 2014-01-30 | Adobe Systems, Inc. | User interface and method for comparing a local version of a profile to an online update |
WO2014066411A1 (en) * | 2012-10-22 | 2014-05-01 | Beats Music, Llc | Systems and methods for compiling music playlists based on various parameters |
US20140126751A1 (en) * | 2012-11-06 | 2014-05-08 | Nokia Corporation | Multi-Resolution Audio Signals |
US20150150030A1 (en) * | 2007-08-31 | 2015-05-28 | At&T Intellectual Property I, L.P. | Method and system for determining subscriber demand for multimedia content |
US20150207839A1 (en) * | 2005-03-24 | 2015-07-23 | Sony Corporation | Playlist sharing methods and apparatus |
CN104866214A (en) * | 2014-02-21 | 2015-08-26 | 联想(北京)有限公司 | Information processing method and electronic equipment |
US9183585B2 (en) | 2012-10-22 | 2015-11-10 | Apple Inc. | Systems and methods for generating a playlist in a music service |
US20150381671A1 (en) * | 2014-06-30 | 2015-12-31 | Quanta Computer Inc. | Virtual file sharing method |
US9326071B2 (en) | 2014-02-21 | 2016-04-26 | Sonos, Inc. | Media content suggestion based on playback zone awareness |
US9672213B2 (en) | 2014-06-10 | 2017-06-06 | Sonos, Inc. | Providing media items from playback history |
US9760573B2 (en) | 2009-04-28 | 2017-09-12 | Whp Workflow Solutions, Llc | Situational awareness |
US10565065B2 (en) | 2009-04-28 | 2020-02-18 | Getac Technology Corporation | Data backup and transfer across multiple cloud computing providers |
US10643074B1 (en) | 2018-06-08 | 2020-05-05 | Amazon Technologies, Inc. | Automated video ratings |
US10754890B2 (en) * | 2014-03-18 | 2020-08-25 | Timothy Chester O'Konski | Method and system for dynamic playlist generation |
US20200342011A1 (en) * | 2018-06-04 | 2020-10-29 | Amazon Technologies, Inc. | Profile disambiguation |
US10897649B1 (en) | 2018-09-26 | 2021-01-19 | Amazon Technologies, Inc. | Mature themes prediction for online content |
US11153655B1 (en) | 2018-09-26 | 2021-10-19 | Amazon Technologies, Inc. | Content appeal prediction using machine learning |
US11636855B2 (en) | 2019-11-11 | 2023-04-25 | Sonos, Inc. | Media content based on operational data |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI402699B (en) * | 2008-12-09 | 2013-07-21 | Kinpo Elect Inc | Sorting method of multimedia files |
TWI492070B (en) * | 2009-08-10 | 2015-07-11 | 鴻海精密工業股份有限公司 | A music video server and a method for setting favorite music video list |
TWI414949B (en) * | 2009-08-10 | 2013-11-11 | Hon Hai Prec Ind Co Ltd | A music video server and a method for setting favorite music video list |
CN103187070B (en) * | 2011-12-28 | 2016-03-30 | 宇龙计算机通信科技(深圳)有限公司 | Based on audio file disposal route and the system of mobile terminal |
US9654821B2 (en) | 2011-12-30 | 2017-05-16 | Sonos, Inc. | Systems and methods for networked music playback |
US9674587B2 (en) | 2012-06-26 | 2017-06-06 | Sonos, Inc. | Systems and methods for networked music playback including remote add to queue |
US9247363B2 (en) | 2013-04-16 | 2016-01-26 | Sonos, Inc. | Playback queue transfer in a media playback system |
US9501533B2 (en) | 2013-04-16 | 2016-11-22 | Sonos, Inc. | Private queue for a media playback system |
US9361371B2 (en) | 2013-04-16 | 2016-06-07 | Sonos, Inc. | Playlist update in a media playback system |
KR102133450B1 (en) * | 2013-05-30 | 2020-07-13 | 삼성전자 주식회사 | Method and apparatus for setting profile |
CN103327111A (en) * | 2013-07-01 | 2013-09-25 | 百度在线网络技术(北京)有限公司 | multimedia file recommendation method, system thereof and server |
KR101505151B1 (en) * | 2013-12-06 | 2015-03-30 | 주식회사 한국인터넷기술원 | The apparatus and method for sharing the list of multimedia files over cloud system |
US20150373483A1 (en) * | 2014-06-23 | 2015-12-24 | Qualcomm Incorporated | Methods, apparatus, and computer-readable medium for providing alternate visualization via wireless docking |
CN104183250B (en) * | 2014-08-26 | 2017-04-12 | 惠州Tcl移动通信有限公司 | Method and system for synchronizing function of music player of intelligent device and Bluetooth headset |
CN105183920B (en) * | 2015-10-20 | 2018-12-11 | 广东欧珀移动通信有限公司 | Playlist information processing method and processing device |
CN105898426A (en) * | 2015-12-14 | 2016-08-24 | 乐视网信息技术(北京)股份有限公司 | Multimedia content processing method and device and server |
US10261963B2 (en) * | 2016-01-04 | 2019-04-16 | Gracenote, Inc. | Generating and distributing playlists with related music and stories |
US20170242859A1 (en) * | 2016-02-24 | 2017-08-24 | David Sazan | Digital media content comparator |
TWI789647B (en) * | 2018-10-08 | 2023-01-11 | 慧榮科技股份有限公司 | Mobile device and method capable of earlier determining that a number of files in a directory of an external connected storage device is about to full |
US11372812B2 (en) | 2018-10-08 | 2022-06-28 | Silicon Motion, Inc. | Mobile device and method capable of earlier determining that a number of files in a directory of an external connected storage device is about to full |
KR20210072979A (en) * | 2019-12-10 | 2021-06-18 | 현대자동차주식회사 | Audio video navigation for a vehicle and method for playing a media thereof |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6526411B1 (en) * | 1999-11-15 | 2003-02-25 | Sean Ward | System and method for creating dynamic playlists |
US20040073924A1 (en) * | 2002-09-30 | 2004-04-15 | Ramesh Pendakur | Broadcast scheduling and content selection based upon aggregated user profile information |
US20050038819A1 (en) * | 2000-04-21 | 2005-02-17 | Hicken Wendell T. | Music Recommendation system and method |
US20050197961A1 (en) * | 2004-03-08 | 2005-09-08 | Miller Gregory P. | Preference engine for generating predictions on entertainment products of services |
US7028082B1 (en) * | 2001-03-08 | 2006-04-11 | Music Choice | Personalized audio system and method |
US20060143236A1 (en) * | 2004-12-29 | 2006-06-29 | Bandwidth Productions Inc. | Interactive music playlist sharing system and methods |
US7076561B1 (en) * | 2000-03-08 | 2006-07-11 | Music Choice | Personalized audio system and method |
US20060265421A1 (en) * | 2005-02-28 | 2006-11-23 | Shamal Ranasinghe | System and method for creating a playlist |
US20070012163A1 (en) * | 2005-06-29 | 2007-01-18 | Sony Corporation | Content acquisition apparatus, content acquisition method and content acquisition program |
US20070256021A1 (en) * | 2000-03-08 | 2007-11-01 | Prager Justin B | Systems and methods for providing customized media channels |
US7325043B1 (en) * | 2000-03-08 | 2008-01-29 | Music Choice | System and method for providing a personalized media service |
US20090055759A1 (en) * | 2006-07-11 | 2009-02-26 | Concert Technology Corporation | Graphical user interface system for allowing management of a media item playlist based on a preference scoring system |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101142935B1 (en) * | 2003-06-03 | 2012-05-10 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | Method and device for generating a user profile on the basis of playlists |
US20050210507A1 (en) * | 2004-03-17 | 2005-09-22 | Sony Corporation | System and method for multimedia playlist |
JP2005293195A (en) | 2004-03-31 | 2005-10-20 | Fujitsu Ten Ltd | Contents selecting device |
-
2007
- 2007-04-03 US US11/695,851 patent/US20080250328A1/en not_active Abandoned
-
2008
- 2008-01-31 KR KR1020097022944A patent/KR20100004108A/en active IP Right Grant
- 2008-01-31 CN CN200880010309A patent/CN101652776A/en active Pending
- 2008-01-31 WO PCT/IB2008/050378 patent/WO2008120111A1/en active Application Filing
- 2008-01-31 EP EP08709957.8A patent/EP2130150B1/en active Active
- 2008-02-15 TW TW097105301A patent/TW200841669A/en unknown
-
2017
- 2017-02-07 US US15/426,522 patent/US9977783B2/en active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6526411B1 (en) * | 1999-11-15 | 2003-02-25 | Sean Ward | System and method for creating dynamic playlists |
US7076561B1 (en) * | 2000-03-08 | 2006-07-11 | Music Choice | Personalized audio system and method |
US20070256021A1 (en) * | 2000-03-08 | 2007-11-01 | Prager Justin B | Systems and methods for providing customized media channels |
US7325043B1 (en) * | 2000-03-08 | 2008-01-29 | Music Choice | System and method for providing a personalized media service |
US20050038819A1 (en) * | 2000-04-21 | 2005-02-17 | Hicken Wendell T. | Music Recommendation system and method |
US7028082B1 (en) * | 2001-03-08 | 2006-04-11 | Music Choice | Personalized audio system and method |
US20040073924A1 (en) * | 2002-09-30 | 2004-04-15 | Ramesh Pendakur | Broadcast scheduling and content selection based upon aggregated user profile information |
US20050197961A1 (en) * | 2004-03-08 | 2005-09-08 | Miller Gregory P. | Preference engine for generating predictions on entertainment products of services |
US20060143236A1 (en) * | 2004-12-29 | 2006-06-29 | Bandwidth Productions Inc. | Interactive music playlist sharing system and methods |
US20060265421A1 (en) * | 2005-02-28 | 2006-11-23 | Shamal Ranasinghe | System and method for creating a playlist |
US20070012163A1 (en) * | 2005-06-29 | 2007-01-18 | Sony Corporation | Content acquisition apparatus, content acquisition method and content acquisition program |
US20090055759A1 (en) * | 2006-07-11 | 2009-02-26 | Concert Technology Corporation | Graphical user interface system for allowing management of a media item playlist based on a preference scoring system |
Non-Patent Citations (1)
Title |
---|
"Review of iTunes Celebrity Playlists - Death Cab for Cutie". 16 January 2006. http://musicforants.com/blog/review-of-itunes-celebrity-playlists-death-cab-for-cutie. * |
Cited By (78)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150207839A1 (en) * | 2005-03-24 | 2015-07-23 | Sony Corporation | Playlist sharing methods and apparatus |
US7884805B2 (en) * | 2007-04-17 | 2011-02-08 | Sony Ericsson Mobile Communications Ab | Using touches to transfer information between devices |
US8593419B2 (en) | 2007-04-17 | 2013-11-26 | Sony Corporation | Using touches to transfer information between devices |
US20080259042A1 (en) * | 2007-04-17 | 2008-10-23 | Sony Ericsson Mobile Communications Ab | Using touches to transfer information between devices |
US20110102369A1 (en) * | 2007-04-17 | 2011-05-05 | Sony Ericsson Mobile Communications Ab | Using touches to transfer information between devices |
US20150150030A1 (en) * | 2007-08-31 | 2015-05-28 | At&T Intellectual Property I, L.P. | Method and system for determining subscriber demand for multimedia content |
US9420339B2 (en) * | 2007-08-31 | 2016-08-16 | At&T Intellectual Property I, L.P. | Method and system for determining subscriber demand for multimedia content |
US20090150445A1 (en) * | 2007-12-07 | 2009-06-11 | Tilman Herberger | System and method for efficient generation and management of similarity playlists on portable devices |
US9838855B2 (en) | 2008-05-02 | 2017-12-05 | International Business Machines Corporation | Avoiding redundant transmissions of data during multimedia mobile phone communications |
US8346218B2 (en) * | 2008-05-02 | 2013-01-01 | International Business Machines Corporation | Avoiding redundant transmissions of data during multimedia mobile phone communications |
US9253684B2 (en) | 2008-05-02 | 2016-02-02 | International Business Machines Corporation | Avoiding redundant transmissions of data during multimedia mobile phone communications |
US20090275310A1 (en) * | 2008-05-02 | 2009-11-05 | Fletcher Benjamin J | Techniques for Avoiding Redundant Transmissions of Data During Multimedia Mobile Phone Communications |
US8548436B2 (en) | 2008-05-02 | 2013-10-01 | International Business Machines Corporation | Avoiding redundant transmissions of data during multimedia mobile phone communications |
US7786367B2 (en) * | 2008-08-13 | 2010-08-31 | Sony Ericsson Mobile Communications Ab | Music player connection system for enhanced playlist selection |
US20100037752A1 (en) * | 2008-08-13 | 2010-02-18 | Emil Hansson | Music player connection system for enhanced playlist selection |
US10459948B2 (en) | 2008-09-05 | 2019-10-29 | Sony Corporation | Content recommendation system, content recommendation method, and information storage medium |
US20110145263A1 (en) * | 2008-09-05 | 2011-06-16 | Takayuki Sakamoto | Content recommendation system, content recommendation method, content recommendation apparatus, program, and information storage medium |
US8856159B2 (en) * | 2008-09-05 | 2014-10-07 | Sony Corporation | Content recommendation system, content recommendation method, content recommendation apparatus, program, and information storage medium |
US20100241529A1 (en) * | 2009-03-17 | 2010-09-23 | Samsung Electronics Co., Ltd. | Content transaction method and system |
US10565065B2 (en) | 2009-04-28 | 2020-02-18 | Getac Technology Corporation | Data backup and transfer across multiple cloud computing providers |
US10728502B2 (en) | 2009-04-28 | 2020-07-28 | Whp Workflow Solutions, Inc. | Multiple communications channel file transfer |
US9214191B2 (en) | 2009-04-28 | 2015-12-15 | Whp Workflow Solutions, Llc | Capture and transmission of media files and associated metadata |
WO2010126557A1 (en) * | 2009-04-28 | 2010-11-04 | Whp Workflow Solutions, Llc | Correlated media for distributed sources |
US10419722B2 (en) | 2009-04-28 | 2019-09-17 | Whp Workflow Solutions, Inc. | Correlated media source management and response control |
US8311983B2 (en) | 2009-04-28 | 2012-11-13 | Whp Workflow Solutions, Llc | Correlated media for distributed sources |
US20100274816A1 (en) * | 2009-04-28 | 2010-10-28 | Whp Workflow Solutions, Llc | Correlated media for distributed sources |
US20110018998A1 (en) * | 2009-04-28 | 2011-01-27 | Whp Workflow Solutions, Llc | Correlated media source management and response control |
US9760573B2 (en) | 2009-04-28 | 2017-09-12 | Whp Workflow Solutions, Llc | Situational awareness |
US20140033123A1 (en) * | 2009-07-30 | 2014-01-30 | Adobe Systems, Inc. | User interface and method for comparing a local version of a profile to an online update |
US8229219B1 (en) | 2009-08-06 | 2012-07-24 | Google Inc. | Full-length video fingerprinting |
US8290918B1 (en) * | 2009-09-29 | 2012-10-16 | Google Inc. | Robust hashing of digital media data |
US20110153638A1 (en) * | 2009-12-17 | 2011-06-23 | International Business Machines Corporation | Continuity and quality of artistic media collections |
US8504422B2 (en) * | 2010-05-24 | 2013-08-06 | Microsoft Corporation | Enhancing photo browsing through music and advertising |
US20110288929A1 (en) * | 2010-05-24 | 2011-11-24 | Microsoft Corporation | Enhancing Photo Browsing through Music and Advertising |
US20110307817A1 (en) * | 2010-06-11 | 2011-12-15 | Microsoft Corporation | Secure Application Interoperation via User Interface Gestures |
US8335991B2 (en) * | 2010-06-11 | 2012-12-18 | Microsoft Corporation | Secure application interoperation via user interface gestures |
US20120172016A1 (en) * | 2010-12-30 | 2012-07-05 | STMicroelectronics NV, Country of Incorporation: Italy | Method and system for controlling communication between an uicc and an external application |
US9143922B2 (en) * | 2010-12-30 | 2015-09-22 | Stmicroelectronics International N.V. | Method and system for controlling communication between an UICC and an external application |
US20130144755A1 (en) * | 2011-12-01 | 2013-06-06 | Microsoft Corporation | Application licensing authentication |
US10678500B2 (en) | 2011-12-28 | 2020-06-09 | Sonos, Inc. | Audio track selection and playback |
US10095469B2 (en) | 2011-12-28 | 2018-10-09 | Sonos, Inc. | Playback based on identification |
US11474778B2 (en) | 2011-12-28 | 2022-10-18 | Sonos, Inc. | Audio track selection and playback |
US11036467B2 (en) | 2011-12-28 | 2021-06-15 | Sonos, Inc. | Audio track selection and playback |
US11016727B2 (en) | 2011-12-28 | 2021-05-25 | Sonos, Inc. | Audio track selection and playback |
US20130173034A1 (en) * | 2011-12-28 | 2013-07-04 | Robert Reimann | Methods and Systems to Select an Audio Track |
US11886769B2 (en) | 2011-12-28 | 2024-01-30 | Sonos, Inc. | Audio track selection and playback |
US9665339B2 (en) * | 2011-12-28 | 2017-05-30 | Sonos, Inc. | Methods and systems to select an audio track |
US10359990B2 (en) | 2011-12-28 | 2019-07-23 | Sonos, Inc. | Audio track selection and playback |
US11886770B2 (en) | 2011-12-28 | 2024-01-30 | Sonos, Inc. | Audio content selection and playback |
US11474777B2 (en) | 2011-12-28 | 2022-10-18 | Sonos, Inc. | Audio track selection and playback |
US8725650B2 (en) * | 2012-01-26 | 2014-05-13 | Microsoft Corporation | Document template licensing |
US20130198038A1 (en) * | 2012-01-26 | 2013-08-01 | Microsoft Corporation | Document template licensing |
WO2014066411A1 (en) * | 2012-10-22 | 2014-05-01 | Beats Music, Llc | Systems and methods for compiling music playlists based on various parameters |
US9183585B2 (en) | 2012-10-22 | 2015-11-10 | Apple Inc. | Systems and methods for generating a playlist in a music service |
US20140126751A1 (en) * | 2012-11-06 | 2014-05-08 | Nokia Corporation | Multi-Resolution Audio Signals |
US10194239B2 (en) * | 2012-11-06 | 2019-01-29 | Nokia Technologies Oy | Multi-resolution audio signals |
US10516940B2 (en) * | 2012-11-06 | 2019-12-24 | Nokia Technologies Oy | Multi-resolution audio signals |
US9723418B2 (en) | 2014-02-21 | 2017-08-01 | Sonos, Inc. | Media content based on playback zone awareness |
US9326071B2 (en) | 2014-02-21 | 2016-04-26 | Sonos, Inc. | Media content suggestion based on playback zone awareness |
CN104866214A (en) * | 2014-02-21 | 2015-08-26 | 联想(北京)有限公司 | Information processing method and electronic equipment |
US11556998B2 (en) | 2014-02-21 | 2023-01-17 | Sonos, Inc. | Media content based on playback zone awareness |
US9516445B2 (en) | 2014-02-21 | 2016-12-06 | Sonos, Inc. | Media content based on playback zone awareness |
US20150243252A1 (en) * | 2014-02-21 | 2015-08-27 | Lenovo (Beijing) Co., Ltd. | Information processing method and electronic device |
US11170447B2 (en) | 2014-02-21 | 2021-11-09 | Sonos, Inc. | Media content based on playback zone awareness |
US11948205B2 (en) | 2014-02-21 | 2024-04-02 | Sonos, Inc. | Media content based on playback zone awareness |
US9332348B2 (en) | 2014-02-21 | 2016-05-03 | Sonos, Inc. | Media content request including zone name |
US9326070B2 (en) | 2014-02-21 | 2016-04-26 | Sonos, Inc. | Media content based on playback zone awareness |
US10754890B2 (en) * | 2014-03-18 | 2020-08-25 | Timothy Chester O'Konski | Method and system for dynamic playlist generation |
US11068528B2 (en) | 2014-06-10 | 2021-07-20 | Sonos, Inc. | Providing media items from playback history |
US10055412B2 (en) | 2014-06-10 | 2018-08-21 | Sonos, Inc. | Providing media items from playback history |
US9672213B2 (en) | 2014-06-10 | 2017-06-06 | Sonos, Inc. | Providing media items from playback history |
US20150381671A1 (en) * | 2014-06-30 | 2015-12-31 | Quanta Computer Inc. | Virtual file sharing method |
US20200342011A1 (en) * | 2018-06-04 | 2020-10-29 | Amazon Technologies, Inc. | Profile disambiguation |
US11734326B2 (en) * | 2018-06-04 | 2023-08-22 | Amazon Technologies, Inc. | Profile disambiguation |
US10643074B1 (en) | 2018-06-08 | 2020-05-05 | Amazon Technologies, Inc. | Automated video ratings |
US11153655B1 (en) | 2018-09-26 | 2021-10-19 | Amazon Technologies, Inc. | Content appeal prediction using machine learning |
US10897649B1 (en) | 2018-09-26 | 2021-01-19 | Amazon Technologies, Inc. | Mature themes prediction for online content |
US11636855B2 (en) | 2019-11-11 | 2023-04-25 | Sonos, Inc. | Media content based on operational data |
Also Published As
Publication number | Publication date |
---|---|
EP2130150A1 (en) | 2009-12-09 |
WO2008120111A1 (en) | 2008-10-09 |
US20170147574A1 (en) | 2017-05-25 |
TW200841669A (en) | 2008-10-16 |
CN101652776A (en) | 2010-02-17 |
EP2130150B1 (en) | 2013-08-28 |
KR20100004108A (en) | 2010-01-12 |
US9977783B2 (en) | 2018-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9977783B2 (en) | Systems, methods, devices, and computer program products for arranging a user's media files | |
US8713079B2 (en) | Method, apparatus and computer program product for providing metadata entry | |
TWI436276B (en) | Method for handling media files, media player apparatus and computer program | |
US20090100093A1 (en) | Apparatus, system, method and computer program product for previewing media files | |
US7636509B2 (en) | Media data representation and management | |
CN105677905B (en) | Apparatus, method and computer program product for filtering media files | |
US20100169778A1 (en) | System and method for browsing, selecting and/or controlling rendering of media with a mobile device | |
US20090199697A1 (en) | Systems, methods, devices, and computer program products for providing music recommendation trekking | |
US20120071996A1 (en) | Embedded media recommendations | |
US20090119614A1 (en) | Method, Apparatus and Computer Program Product for Heirarchical Navigation with Respect to Content Items of a Media Collection | |
US20090003797A1 (en) | Method, Apparatus and Computer Program Product for Providing Content Tagging | |
JP2010536077A (en) | System and method for creating thumbnail images for audiovisual files | |
JP2013507704A (en) | How to set up a list of audio files on mobile devices | |
US8819551B2 (en) | Display device and method, and program | |
CN101460918A (en) | One-click selection of music or other content | |
JP6265711B2 (en) | Music playback apparatus and computer program | |
JP6481016B2 (en) | Music playback apparatus and computer program | |
US20110225147A1 (en) | Apparatus and method for providing tag information of multimedia data in mobile terminal | |
KR101954802B1 (en) | System for providing presence infromation audio data, apparatus and method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: NOKIA CORPORATION, FINLAND Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:KONTTINEN, HANNU;REEL/FRAME:019290/0136 Effective date: 20070409 |
|
AS | Assignment |
Owner name: NOKIA TECHNOLOGIES OY, FINLAND Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:NOKIA CORPORATION;REEL/FRAME:035544/0708 Effective date: 20150116 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION |