System for providing lyrics with streaming music

Methods and systems are disclosed for providing lyrics with streaming music. A music stream is accessed that includes timing information for a song. Lyrics and other textual information such as song title, song artist, and album title are also accessed. A lyric file may be accessed that includes further timing information. The timing information is used to synchronize the song lyrics and music stream. A user may be permitted access to the synchronized lyrics and music stream by presentation on a display through a digital television set-top box.

BACKGROUND

1. Field of the Disclosure

The present disclosure generally relates to multimedia content provider networks and more particularly to systems for providing lyrics with streaming music.

2. Description of the Related Art

Multimedia content provider networks may present users access to songs through streaming audio. Song lyrics are not provided to users that receive the streaming audio. Lyrics to songs are often provided with hard copies of songs, for example with liner notes included inside a compact disc jewel case.

DESCRIPTION OF THE EMBODIMENT(S)

In one aspect, a system for providing lyrics with streaming music includes a music server for accessing a music stream. The music stream includes timing information for a song. The system further includes a lyric server for accessing text information that includes lyrics to the song. The system further includes a synchronization server that uses the timing information to synchronize the lyrics with the music stream. The system further includes a network switch that permits user access to the synchronized plurality of words in the music stream. In some embodiments, the streaming music is received as an analog stream and the system further includes an encoder enabled for converting the analog stream into a bit stream. The encoder may further be enabled to compress the streaming multimedia content. The system may provide user access through a digital television set-top box (STB). The system may further include, in some embodiments, an encoder enabled for encapsulating the synchronized lyrics and the music stream into a series of Moving Picture Experts Group (MPEG) transport stream packets.

In another aspect, a disclosed computer program product is enabled for providing lyrics with streaming music. The computer program product has instructions stored on a computer readable media, for accessing a music stream that includes timing information for a song, for accessing a lyrics file for the song, for using the timing information to synchronize the lyrics with the music stream, and for delivering to a user the synchronized lyrics and music stream.

In some embodiments, the computer program product includes instructions for digitizing the analog stream into a bit stream. In some embodiments, permitting user access to the synchronized lyrics and music stream includes providing a digital STB with access to the synchronized lyrics and music stream. Some embodiments include instructions for encapsulating the lyrics and the music stream into packets. Any of these packets may include a plurality of MPEG transport stream packets. In some embodiments, encapsulating the lyrics and the music stream occurs at least partially at a real-time transport protocol layer. In some embodiments, the encapsulating occurs at least partially at a user datagram protocol layer.

In still another aspect, a disclosed method for providing song lyrics with streaming music includes accessing a music stream that includes a song and meta information for identifying the song, accessing a lyric file associated with the song, and presenting a user with an audio portion of the song and a visual depiction of the lyrics timed, using the timing information, to coincide with the audio portion of a song. In some embodiments, presenting the user with the audio portion of the song and the visual depiction of the lyrics occurs at least partially through a digital television STB. The method, in some embodiments, may include converting the analog stream into a bit stream if the streaming music is received as an analog stream. The method may further include encapsulating the music stream and the lyrics plurality into a series of MPEG transport stream packets. In some embodiments, encapsulating the music stream and the lyrics into a series of MPEG transport stream packets occurs at least partially at real-time transport protocol layer.

In the following description, examples are set forth with sufficient detail to enable one of ordinary skill in the art to practice the disclosed subject matter without undue experimentation. It should be apparent to a person of ordinary skill that the disclosed examples are not exhaustive of all possible embodiments. Regarding reference numerals used to describe elements in the figures, a hyphenated form of a reference numeral refers to a specific instance of an element and an un-hyphenated form of the reference numeral refers to the element generically or collectively. Thus, for example, element121-1refers to an instance of an STB, which may be referred to collectively as STBs121and any one of which may be referred to generically as an STB121. Before describing other details of embodied methods and devices, selected aspects of multimedia content provider networks that provide multimedia programs are described to provide further context.

Television programs, video on-demand (VOD) movies, digital television content, music programming, and a variety of other types of multimedia content may be distributed to multiple users (e.g., subscribers) over various types of networks. Suitable types of networks that may be configured to support the provisioning of multimedia content services by a service provider include, as examples, telephony-based networks, coaxial-based networks, satellite-based networks, and the like.

In some networks including, for example, traditional coaxial-based “cable” networks, whether analog or digital, a service provider distributes a mixed signal that includes a large number of multimedia content channels (also referred to herein as “channels”), each occupying a different frequency band or frequency channel, through a coaxial cable, a fiber-optic cable, or a combination of the two. The bandwidth required to transport simultaneously a large number of multimedia channels may challenge the bandwidth capacity of cable-based networks. In these types of networks, a tuner within a STB, television, or other form of receiver is required to select a channel from the mixed signal for playing or recording. A user wishing to play or record multiple channels typically needs to have distinct tuners for each desired channel. This is an inherent limitation of cable networks and other mixed signal networks.

In contrast to mixed signal networks, IPTV networks generally distribute content to a user only in response to a user request so that, at any given time, the number of content channels being provided to a user is relatively small, e.g., one channel for each operating television plus possibly one or two channels for simultaneous recording. As suggested by the name, IPTV networks typically employ IP and other open, mature, and pervasive networking technologies to distribute multimedia content. Instead of being associated with a particular frequency band, an IPTV television program, movie, or other form of multimedia content is a packet-based stream that corresponds to a particular network endpoint, e.g., an IP address and a transport layer port number. In these networks, the concept of a channel is inherently distinct from the frequency channels native to mixed signal networks. Moreover, whereas a mixed signal network requires a hardware intensive tuner for every channel to be played, IPTV channels can be “tuned” simply by transmitting to a server an indication of a network endpoint that is associated with the desired channel.

IPTV may be implemented, at least in part, over existing infrastructure including, for example, a proprietary network that may include existing telephone lines, possibly in combination with customer premises equipment (CPE) including, for example, a digital subscriber line (DSL) modem in communication with an STB, a display, and other appropriate equipment to receive multimedia content and convert it into usable form. In some implementations, a core portion of an IPTV network is implemented with fiber optic cables while the so-called “last mile” may include conventional, unshielded, twisted-pair, copper cables.

IPTV networks support bidirectional (i.e., two-way) communication between a subscriber's CPE and a service provider's equipment. Bidirectional communication allows a service provider to deploy advanced features, such as VOD, pay-per-view, advanced programming information (e.g., sophisticated and customizable electronic programming guides (EPGs), and the like. Bidirectional networks may also enable a service provider to collect information related to a user's preferences, whether for purposes of providing preference based features to the user, providing potentially valuable information to service providers, or providing potentially lucrative information to content providers and others.

Referring now to the drawings,FIG. 1illustrates selected aspects of a multimedia content distribution network (MCDN)100for providing music lyrics with streaming music in accordance with disclosed embodiments. MCDN100, as shown, is a multimedia content provider network that may be generally divided into a client side101and a service provider side102(a.k.a. server side102). Client side101includes all or most of the resources depicted to the left of access network130while server side102encompasses the remainder.

Client side101and server side102are linked by access network130. In embodiments of MCDN100that leverage telephony hardware and infrastructure, access network130may include the “local loop” or “last mile,” which refers to the physical cables that connect a subscriber's home or business to a local exchange. In these embodiments, the physical layer of access network130may include varying ratios of twisted pair copper cables and fiber optics cables. In a fiber to the curb (FTTC) access network, the last mile portion that employs copper is generally less than approximately 300 miles in length. In fiber to the home (FTTH) access networks, fiber optic cables extend all the way to the premises of the subscriber.

Access network130may include hardware and firmware to perform signal translation when access network130includes multiple types of physical media. For example, an access network that includes twisted-pair telephone lines to deliver multimedia content to consumers may utilize DSL. In embodiments of access network130that implement FTTC, a DSL access multiplexer (DSLAM) may be used within access network130to transfer signals containing multimedia content from optical fiber to copper wire for DSL delivery to consumers.

Access network130may transmit radio frequency (RF) signals over coaxial cables. In these embodiments, access network130may utilize quadrature amplitude modulation (QAM) equipment for downstream traffic. In these embodiments, access network130may receive upstream traffic from a consumer's location using quadrature phase shift keying (QPSK) modulated RF signals. In such embodiments, a cable modem termination system (CMTS) may be used to mediate between IP-based traffic on private network110and access network130.

Services provided by the server side resources as shown inFIG. 1may be distributed over a private network110. In some embodiments, private network110is referred to as a “core network.” In at least some embodiments, private network110includes a fiber optic wide area network (WAN), referred to herein as the fiber backbone, and one or more video hub offices (VHOs). In large-scale implementations of MCDN100, which may cover a geographic region comparable, for example, to the region served by telephony-based broadband services, private network110includes a hierarchy of VHOs.

A national VHO, for example, may deliver national content feeds to several regional VHOs, each of which may include its own acquisition resources to acquire local content, such as the local affiliate of a national network, and to inject local content such as advertising and public service announcements from local entities. The regional VHOs may then deliver the local and national content to users served by the regional VHO. The hierarchical arrangement of VHOs, in addition to facilitating localized or regionalized content provisioning, may conserve bandwidth by limiting the content that is transmitted over the core network and injecting regional content “downstream” from the core network.

Segments of private network110, as shown inFIG. 1, are connected together with a plurality of network switching and routing devices referred to simply as switches113through117. The depicted switches include client facing switch113, acquisition switch114, operations-systems-support/business-systems-support (OSS/BSS) switch115, database switch116, and an application switch117. In addition to providing routing/switching functionality, switches113through117preferably include hardware or firmware firewalls, not depicted, that maintain the security and privacy of network110. Other portions of MCDN100may communicate over a public network112, including, for example, Internet or other type of web-network where the public network112is signified inFIG. 1by the World Wide Web icons111.

As shown inFIG. 1, client side101of MCDN100depicts two of a potentially large number of client side resources referred to herein simply as client(s)120. Each client120, as shown, includes an STB121, a residential gateway (RG)122, a display124, and a remote control device126. In the depicted embodiment, STB121communicates with server side devices through access network130via RG122.

As shown inFIG. 1, RG122may include elements of a broadband modem such as a DSL or cable modem, as well as elements of a firewall, router, and/or access point for an Ethernet or other suitable local area network (LAN)123. In this embodiment, STB121is a uniquely addressable Ethernet compliant device. In some embodiments, display124may be any National Television System Committee (NTSC) and/or Phase Alternating Line (PAL) compliant display device. Both STB121and display124may include any form of conventional frequency tuner. Remote control device126communicates wirelessly with STB121using infrared (IR) or RF signaling. STB121-1and STB121-2, as shown, may communicate through LAN123in accordance with disclosed embodiments to select multimedia programs for viewing.

In IPTV compliant implementations of MCDN100, clients120are configured to receive packet-based multimedia streams from access network130and process the streams for presentation on displays124. In addition, clients120are network-aware resources that may facilitate bidirectional-networked communications with server side102resources to support network hosted services and features. Because clients120are configured to process multimedia content streams while simultaneously supporting more traditional web-like communications, clients120may support or comply with a variety of different types of network protocols including streaming protocols such as real-time transport protocol (RTP) over user datagram protocol/internet protocol (UDP/IP) as well as web protocols such as hypertext transport protocol (HTTP) over transport control protocol (TCP/IP).

The server side102of MCDN100as depicted inFIG. 1emphasizes network capabilities including application resources105, which may have access to database resources109, content acquisition resources106, content delivery resources107, and OSS/BSS resources108.

Before distributing multimedia content to users, MCDN100first obtains multimedia content from content providers. To that end, acquisition resources106encompass various systems and devices to acquire multimedia content, reformat it when necessary, and process it for delivery to subscribers over private network110and access network130.

Acquisition resources106may include, for example, systems for capturing analog and/or digital content feeds, either directly from a content provider or from a content aggregation facility. Content feeds transmitted via VHF/UHF broadcast signals may be captured by an antenna141and delivered to live acquisition server140. Similarly, live acquisition server140may capture downlinked signals transmitted by a satellite142and received by a parabolic dish144. In addition, live acquisition server140may acquire programming feeds transmitted via high-speed fiber feeds or other suitable transmission means. Acquisition resources106may further include signal conditioning systems and content preparation systems for encoding content.

As depicted inFIG. 1, content acquisition resources106include a VOD acquisition server150. VOD acquisition server150receives content from one or more VOD sources that may be external to the MCDN100including, as examples, discs represented by a DVD player151, or transmitted feeds (not shown). VOD acquisition server150may temporarily store multimedia content for transmission to a VOD delivery server158in communication with client-facing switch113.

After acquiring multimedia content, acquisition resources106may transmit acquired content over private network110, for example, to one or more servers in content delivery resources107. As shown, live acquisition server140is communicatively coupled to an encoder which, prior to transmission, encodes acquired content using for example, MPEG-2, H.263, MPEG-4, H.264, a Windows Media Video (WMV) family codec, or another suitable video codec. The term “H.264” is an example standard for video compression. It may also be known by other terms such as “MPEG-4 Part 10”, or “MPEG-4 AVC,” in which “AVC” stands for “Advanced Video Coding.” H.264 is a block-oriented, motion-estimation-based codec. H.264 is used for the compression of audio-visual (AV) data for streaming media, web distribution, voice applications, videophone applications, multimedia content distribution, and the like. Reference herein to H.264 is for illustration purposes and is not meant to limit the disclosed subject matter.

Content delivery resources107, as shown inFIG. 1, are in communication with private network110via client facing switch113. In the depicted implementation, content delivery resources107include a content delivery server155in communication with a live or real-time content server156and a VOD delivery server158. For purposes of this disclosure, the use of the term “live” or “real-time” in connection with content server156is intended primarily to distinguish the applicable content from the content provided by VOD delivery server158. The content provided by a VOD server is sometimes referred to as time-shifted content to emphasize the ability to obtain and view VOD content substantially without regard to the time of day or the day of week.

Content delivery server155, in conjunction with live content server156and VOD delivery server158, responds to user requests for content by providing the requested content to the user. The content delivery resources107are, in some embodiments, responsible for creating video streams that are suitable for transmission over private network110and/or access network130. In some embodiments, creating video streams from the stored content generally includes generating data packets by encapsulating relatively small segments of the stored content according to the network communication protocol stack in use. These data packets are then transmitted across a network to a receiver (e.g., STB121of client120), where the content is parsed from individual packets and re-assembled into multimedia content suitable for processing by a decoder.

User requests received by content delivery server155may include an indication of the content that is being requested. In some embodiments, this indication includes a network endpoint associated with the desired content. The network endpoint may include an IP address and a transport layer port number. For example, a particular local broadcast television station may be associated with a particular channel and the feed for that channel may be associated with a particular IP address and transport layer port number. When a user wishes to view the station, the user may interact with remote control device126to send a signal to STB121indicating a request for the particular channel. When STB121responds to the remote control signal, the STB121changes to the requested channel by transmitting a request that includes an indication of the network endpoint associated with the desired channel to content delivery server155.

Content delivery server155may respond to such requests by making a streaming video or audio signal accessible to the user. Content delivery server155may employ a multicast protocol to deliver a single originating stream to multiple clients. When a new user requests the content associated with a multicast stream, there may be latency associated with updating the multicast information to reflect the new user as a part of the multicast group. To avoid exposing this undesirable latency to a user, content delivery server155may temporarily unicast a stream to the requesting user. When the user is ultimately enrolled in the multicast group, the unicast stream is terminated and the user receives the multicast stream. Multicasting desirably reduces bandwidth consumption by reducing the number of streams that must be transmitted over the access network130to clients120.

As illustrated inFIG. 1, a client-facing switch113provides a conduit between client side101, including client120, and server side102. Client-facing switch113, as shown, is so-named because it connects directly to the client120via access network130and it provides the network connectivity of IPTV services to users' locations. To deliver multimedia content, client-facing switch113may employ any of various existing or future Internet protocols for providing reliable real-time streaming multimedia content. In addition to the TCP, UDP, and HTTP protocols referenced above, such protocols may use, in various combinations, other protocols including, RTP, real-time control protocol (RTCP), file transfer protocol (FTP), and real-time streaming protocol (RTSP), as examples.

In some embodiments, client-facing switch113routes multimedia content encapsulated into IP packets over access network130. For example, an MPEG-2 transport stream may be sent, in which the transport stream consists of a series of 188-byte transport packets. The MPEG-2 transport stream may include video and audio portions of a song with lyrics for a presentation on a user's display, which may receive one or more signals from a digital television STB, in accordance with disclosed embodiments. Client-facing switch113, as shown, is coupled to a content delivery server155, acquisition switch114, applications switch117, a client gateway153, and a terminal server154that is operable to provide terminal devices with a connection point to the private network110. Client gateway153may provide subscriber access to private network110and the resources coupled thereto.

In some embodiments, STB121may access MCDN100using information received from client gateway153. Subscriber devices may access client gateway153and client gateway153may then allow such devices to access the private network110once the devices are authenticated or verified. Similarly, client gateway153may prevent unauthorized devices, such as hacker computers or stolen STBs, from accessing the private network110. Accordingly, in some embodiments, when an STB121accesses MCDN100, client gateway153verifies subscriber information by communicating with user store172via the private network110. Client gateway153may verify billing information and subscriber status by communicating with an OSS/BSS gateway167. OSS/BSS gateway167may transmit a query to the OSS/BSS server181via an OSS/BSS switch115that may be connected to a public network112. Upon client gateway153confirming subscriber and/or billing information, client gateway153may allow STB121access to IPTV content, VOD content, and other services. If client gateway153cannot verify subscriber information (i.e., user information) for STB121, for example, because it is connected to an unauthorized local loop or RG, client gateway153may block transmissions to and from STB121beyond the private access network130.

MCDN100, as depicted, includes application resources105, which communicate with private network110via application switch117. Application resources105as shown include an application server160operable to host or otherwise facilitate one or more subscriber applications165that may be made available to system subscribers. For example, subscriber applications165as shown include an EPG application163. Subscriber applications165may include other applications as well. In addition to subscriber applications165, application server160may host or provide a gateway to operation support systems and/or business support systems. In some embodiments, communication between application server160and the applications that it hosts and/or communication between application server160and client120may be via a conventional web based protocol stack such as HTTP over TCP/IP or HTTP over UDP/IP.

Application server160as shown also hosts an application referred to generically as user application164. User application164represents an application that may deliver a value added feature to a user, who may be a subscriber to a service provided by MCDN100. For example, in accordance with disclosed embodiments, user application164may be an application that provides a user with one or more selectable audio tracks and lyrics to be received and played in synchronized form through an STB by audio and video equipment. User application164, as illustrated inFIG. 1, emphasizes the ability to extend the network's capabilities by implementing a network-hosted application. Because the application resides on the network, it generally does not impose any significant requirements or imply any substantial modifications to client120including STB121. In some instances, an STB121may require knowledge of a network address associated with user application164, but STB121and the other components of client120are largely unaffected.

As shown inFIG. 1, a database switch116as connected to applications switch117provides access to database resources109. Database resources109include a database server170that manages a system storage resource172, also referred to herein as user store172. User store172, as shown, includes one or more user profiles174where each user profile includes account information and may include preferences information that may be retrieved by applications executing on application server160including user applications165.

As shown, MCDN100includes synchronization server199, lyric server197, and music server193. Music server193, in accordance with disclosed embodiments, provides MCDN100access to a music stream through one or more potential sources including the Internet, live acquisition resources, compact disc recordings, and the like. Lyric server197, in accordance with disclosed embodiments, provides MCDN100with access to textual information including lyrics, song titles, artists, and album titles, as examples. Lyric server197may pull such textual information from external sources and store the information internally within MCDN100. In accordance with disclosed embodiments, synchronization server199synchronizes song lyrics with streaming music using timing information that may be included within metadata received with streaming music. In addition, lyrics files may include timing information for a song to permit synchronization of the lyrics with the streaming music. Switch117permits access to the synchronized lyrics and music stream to STB121-2, for example.

In some embodiments, music server193receives streaming music as an analog stream and synchronization server199, music server193, or other components within MCDN100act as an encoder for digitizing the analog stream, i.e., converting or otherwise processing the analog stream into a bit stream. In addition to digitizing the analog stream, music server193may compress and encrypt the bit stream. Music server193may also be configured to encapsulate the song lyrics and music stream into a series of MPEG transport stream packets. In some embodiments, encapsulating the lyrics and music stream into a series of MPEG transport stream packets occurs at least partially at a real-time transport protocol layer. In addition, encapsulating the song lyrics and music stream into an MPEG transport stream may occur at least partially at a user datagram protocol layer.

FIG. 2depicts selected operations of an embodiment of a method200for providing song lyrics with streaming music. As shown, method200includes accessing (operation202) a music stream that includes a song and meta information for the song. The meta information is used (operation203) to identify a song lyrics file associated with the song. The identified song lyrics are accessed (operation204). The music stream may be an Internet music cast, a simulcast of a radio station, or another type of real time broadcast of music content. Song lyrics may reside internally within a multi-media content distribution network (e.g., MCDN100,FIG. 1) or may be accessed in real time from external sources such as the Internet or from music production companies, as examples.

The music stream accessed in operation202may be from compact discs, streaming radio sources on the Internet, live acquisition resources obtained from satellite broadcasts, or live radio received from over-the-air broadcasts, as examples. The accessed music stream may include timing information, or timing information may be added within a multimedia content provider network to allow for synchronization with song lyrics, in accordance with disclosed embodiments.

As depicted inFIG. 2, method200includes retrieving synchronization information (operation205) from the lyric file or the music stream. Method200also includes synchronizing (operation206) the music stream with lyrics in the lyric file. In some embodiments, synchronized song lyrics are displayed on a user's television screen. As a user listens to the audio portion of a song, song lyrics which coincide to the audio portion may be displayed to allow the user to read or sing along with the audio portion. As shown, method200further includes presenting (operation208) the audio portion of the song and a visual depiction of the lyrics that is timed to coincide with the song.

FIG. 3illustrates, in block diagram form, selected elements of an embodiment of a data processing system300within which a set of instructions may operate to perform one or more of the methodologies discussed herein. Data processing system300may operate as a standalone device or may be connected (e.g., networked) to other data processing systems. In a networked deployment, data processing system300may operate in the capacity of a server or a client data processing system in a server-client network environment, or as a peer computer in a peer-to-peer (or distributed) network environment. Example data processing systems include, but are not limited to, an encoder, a digital video recorder, a personal computer (PC), a tablet PC, an STB, a cable box, a satellite box, an EPG box, a personal data assistant, a cellular telephone, a smart phone, a web appliance, a network router, a switch, a bridge, a server, or any machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine. Further, while only a single data processing system is illustrated, the term “data processing system” shall also be taken to include any collection of data processing systems that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.

As shown inFIG. 3, data processing system300includes a processor302(e.g., a central processing unit, a graphics processing unit, or both) and storage media301that includes a main memory304and a non-volatile memory306, and a disc drive unit316that may communicate with each other via a bus308. In some embodiments, the main memory304and/or the non-volatile memory306may be used to store the indicators or values that relate to multimedia content accessed or requested by a consumer. Data processing system300may further include a video display unit310(e.g., a television, a liquid crystal display or a cathode ray tube) on which to display multimedia content such as the presentation of textual information (e.g., song lyrics) for a song, pay-per-view sporting events, television programs, VOD movies, and the like. Data processing system300also includes an alphanumeric input device312(e.g., a keyboard), a user interface (UI) navigation device314(e.g., a remote control or a mouse), a signal generation device318(e.g., a speaker) and a network interface device320. The input device312and/or the UI navigation device314(e.g., the remote control) may include a processor (not shown), and a memory (not shown). The disk drive unit316includes a magnetic or solid state machine-readable medium322that may have stored thereon one or more sets of instructions324and data structures not depicted embodying or utilized by any one or more of the methodologies or functions described herein. The instructions324may also reside, completely or at least partially, within the main memory304, within non-volatile memory306, within network interface device320, and/or within the processor302during execution thereof by the data processing system300.

The instructions324may be transmitted or received over a network326(e.g., a multimedia content provider) via the network interface device320utilizing any one of a number of transfer protocols (e.g., broadcast transmissions, HTTP). While the machine-readable medium322is depicted as a single medium, the term “machine-readable medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions. The term “machine-readable medium” shall also be taken to include any medium that is capable of storing, encoding or carrying a set of instructions for execution by the machine (i.e., data processing system) and that cause the machine to perform any one or more of the methodologies of the present invention, or that is capable of storing, encoding, or carrying data structures utilized by or associated with such a set of instructions. The term “machine-readable medium” shall accordingly be taken to include, but not be limited to, solid-state memories, optical and magnetic media.

In accordance with some embodiments, instructions324are stored on at least one computer readable media and enable data processing system300to provide song lyrics with streaming music. Accordingly, in some embodiments, instructions324enable data processing system300to access a music stream that includes meta information for a song, to access a lyrics file for the song that includes timing information to use the timing information to synchronize the lyrics with the music stream, and to permit user access to the synchronized lyrics and music stream. In some embodiments, instructions324include instructions to digitize an analog stream containing the streaming music into a bit stream and compress the bit stream. Instructions324may also include instructions to permit a user access to the synchronized lyrics and music stream by encoding the synchronized lyrics and music stream for use by a digital television STB and encapsulating the lyrics and the music stream. In some embodiments, individual packets of a plurality of packets include a plurality of MPEG transport stream packets. Encapsulating the plurality of packets may occur at least partially at a real-time transport protocol layer or at a user datagram protocol layer.

While the disclosed subject matter has been described in connection with one or more embodiments, the disclosed embodiments are not intended to limit the subject matter of the claims to the particular forms set forth. On the contrary, disclosed embodiments are intended to encompass alternatives, modifications and equivalents.