[Not Applicable]
[Not Applicable]
Certain embodiments of the invention relate to processing of audio data. More specifically, certain embodiments of the invention relate to a method and system for transmission of multi-channel digital audio in SPDIF format.
Digital data communications have increased in popularity in recent years and have found a wide variety of applications. One such application includes the transmission and reception of digital audio using the Sony/Philips Data Interface Format (SPDIF). The SPDIF protocol is further described in International Electrotechnical Commission publication 60958-3 Ed. 1.0 entitled “Digital audio interface—Part 3: Consumer applications.”
The SPDIF protocol defines a serial data stream organized in sub-frames, frames and blocks. Upon transmission, digital audio data is encoded and is transmitted via specialized SPDIF cable to one or more location for processing. Each of the receiving locations uses an SPDIF receiver/decoder that receives the encoded SPDIF data, decodes it and communicates it to one or more speakers. This conventional digital audio processing scenario is not efficient as the specialized SPDIF cable connecting the SPDIF transmitter to the SPDIF receiver, as well as the SPDIF decoder itself, are very expensive. Furthermore, expenses may increase exponentially if the encoded SPDIF audio data is transmitted to more than one location. In this regard, additional SPDIF cable is required to communicate the encoded data, and additional SPDIF receivers/decoders are required at each location. Additionally, at present, the SPDIF protocol handles transmission of decoded stereo data. The SPDIF protocol does not make any provisions for transmission of decoded multi-channel audio data.
Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with the present invention as set forth in the remainder of the present application with reference to the drawings.
A method and system for transmission of decoded multi-channel digital audio in SPDIF format, substantially as shown in and/or described in connection with at least one of the figures, as set forth more completely in the claims.
Various advantages, aspects and novel features of the present invention, as well as details of an illustrated embodiment thereof, will be more fully understood from the following description and drawings.
Certain aspects of the invention may be found in a method and system for processing decoded multi-channel audio data, and may include selecting one or more SPDIF data frames from a plurality of multi-channel audio data frames. The selected one or more SPDIF data frames and/or one or more channel status bits corresponding to the one or more SPDIF data frames may be packetized. The one or more channel status bits may indicate one or more audio channels for the selected one or more SPDIF data frames. The indication of the one or more audio channels may be stored in at least one multi-channel mode field of the one or more channel status bits. The packetized one or more SPDIF data frames may be from a single audio channel and/or from a plurality of audio channels. The packetized one or more SPDIF data frames may comprise an SPDIF audio block from a single audio channel. The plurality of multi-channel audio data frames may comprise decoded SPDIF audio data frames. At least one SPDIF packet may be generated based on the packetizing of the selected one or more SPDIF data frames. At least one header may be generated for the at least one SPDIF packet, and the generated header for the at least one SPDIF packet may comprises the one or more channel status bits and/or a packet sequence number. The at least one SPDIF packet comprising the generated at least one header may be transmitted to at least one receiver for processing. The at least one SPDIF packet may be transmitted via the Internet, an Intranet, a wireless LAN, and/or a Bluetooth connection.
The preamble 116 may comprise 4 bits (b0, . . . , b3). Bits b4, . . . , b27 may be used to represent digital data. In some instances, the auxiliary data field 118 may be used to provide non-audio information, such as information which may be used to identify the type of audio data. For example, in one embodiment of the invention, the auxiliary data field 118 may be used to identify whether the audio data 120 is stereo audio data or multi-channel audio data. The ancillary information may comprise four additional bits 122, . . . , 128, designated as bits b28, . . . , b31. Bit 28 (122) may comprise a validity bit, which may be used to encode a data sample validity flag. Bit 29 (124) may comprise a user data bit 124, which may be used to encode user information. Bit 30 (126) may comprise a channel status bit, which may be used to encode channel status information. Bit 31 (128) may comprise a parity bit.
In an exemplary embodiment of the invention, one or more of bits b28, b31 from the ancillary information fields of the SPDIF sub-frames 102, . . . , 108 may be used for transmission of decoded SPDIF digital audio data to one or more receivers. For example, the channel status bit 126 from each of the 192 SPDIF frames 110, . . . , 112 may be extracted to obtain a total of 192 channel status bits (CSBs). The extracted CSBs may be transmitted with the decoded SPDIF digital audio data to one or more receivers via, for example, the Internet and/or an Intranet.
In an exemplary embodiment of the invention, one or more of CSBs from the ancillary information fields 134 and 135 of the SPDIF sub-frames 136 and 138 may be used for transmission of decoded SPDIF digital stereo data to one or more receivers. The extracted CSBs may be transmitted with the decoded SPDIF digital stereo audio data to one or more receivers via, for example, the Internet and/or an Intranet.
Even though four-channel audio data frames are utilized in reference to at least
Referring to
U.S. patent application Ser. No. ______ (Attorney Docket No. 18346US01), filed on even date herewith, discloses various ways of packetizing and transmitting decoded SPDIF audio data over the Internet, an Intranet, a wireless LAN and/or a Bluetooth connection, for example, and is incorporated herein by reference in its entirety.
In one embodiment of the invention, the SPDIF protocol may be modified so as to allow identification of the specific audio channel, or channels, for a transmitted packet of multi-channel SPDIF data. For example, the “multi-channel mode number” field in the channel status bits may be used to indicate multi-channel configuration for decoded multi-channel SPDIF data. In some instances, the “user defined multi-channel mode” field in the channels status bits may be used to indicate the audio channel for corresponding multi-channel SPDIF data. In other instances, the currently reserved states of the channel status bits may be used to indicate the audio channel for corresponding multi-channel SPDIF data.
The SPDIF Tx 202 may comprise suitable logic, circuitry, and/or code that may enable encoding and transmission of multi-channel SPDIF digital audio data. For example, the SPDIF Tx 202 may encode multi-channel SPDIF digital audio data and may transmit the encoded multi-channel SPDIF digital audio data to one or more receivers, such as the SPDIF Rx 204, . . . , 208. The encoded multi-channel SPDIF digital audio data may be transmitted to the SPDIF Rx 204, . . . , 208 via specialized SPDIF cables 216, . . . , 220, respectively.
The SPDIF Rx 204, . . . , 208 may comprise suitable logic, circuitry, and/or code that may enable receiving and decoding of the multi-channel SPDIF digital audio data transmitted by the SPDIF Tx 202. The SPDIF Rx 204, . . . , 208 may communicate the decoded multi-channel SPDIF digital audio data to corresponding speaker systems 210, . . . , 214. The speaker systems 210, . . . , 214 may comprise a plurality of speakers adapted for use with multi-channel audio. For example, the speaker systems 210, . . . , 214 may each comprise surround sound speakers adapted for use with multi-channel audio, such as 5.1 or 7.1 audio, for example.
In one embodiment of the invention, the implementation cost and the efficiency of the multi-channel SPDIF digital audio processing system 200 may be significantly improved by using only a single decoder to decode the received encoded multi-channel SPDIF digital audio data, instead of using an SPDIF decoder at each remote location as illustrated with regard to
The SPDIF Tx 302 may comprise suitable logic, circuitry, and/or code that may enable encoding and transmission of multi-channel SPDIF digital audio data. For example, the SPDIF Tx 202 may encode multi-channel SPDIF digital audio data and may transmit the encoded multi-channel SPDIF digital audio data to a single receiver/decoder, such as the SPDIF Rx 304. The encoded multi-channel SPDIF digital audio data may be transmitted to the SPDIF Rx 304 via a SPDIF cable 303.
The SPDIF Rx/decoder 304 may comprise suitable logic, circuitry, and/or code that may enable receiving and decoding of the SPDIF digital audio data transmitted by the SPDIF Tx 302 via the SPDIF cable 303. The SPDIF Rx/decoder 304 may communicate the decoded SPDIF digital audio data to the SPDIF packetizer 306. The SPDIF packetizer 306 may comprise suitable logic, circuitry, and/or code that may enable packetizing of SPDIF data into, for example, SPDIF data packets suitable for transmission over the Internet or an Intranet. The SPDIF packetizer 306 may also enable generating one or more headers for the SPDIF data packets, where the headers may comprise one or more extracted CSBs and/or a packet sequence number. In some instances, the SPDIF packetizer 306 may packetize the extracted CSBs into separate CSB packets, which may be transmitted together with the SPDIF data packets to the SPDIF depacketizers 314, . . . , 318. In another embodiment of the invention, the CSBs packets may be sent via Transmission Control Protocol (TCP), and the SPDIF data packets may be sent via User Datagram Protocol (UDP), for example.
The SPDIF depacketizers 314, . . . , 318 may comprise suitable logic, circuitry, and/or code that may enable depacketization of the received multi-channel SPDIF data packets and/or the CSBs packets and/or the headers. The depacketized multi-channel SPDIF digital audio information may then be communicated to the corresponding SPDIF Rx (multichannel speaker sets) 320, . . . , 322. The SPDIF Rx (audio players/speaker sets) 210, . . . , 214 may comprise a plurality of speakers adapted for use with multi-channel audio, such as surround sound speakers adapted for use with 5.1 or 7.1 audio, for example.
In operation, the SPDIF Tx 302 may encode multi-channel SPDIF digital audio data and may transmit the encoded multi-channel SPDIF digital audio data to the SPDIF Rx/decoder 304 via the SPDIF cable connection 303. The SPDIF Rx/decoder 304 may decode the received encoded multi-channel SPDIF digital audio data. The decoded multi-channel SPDIF digital audio data may be communicated to the SPDIF packetizer 306. The SPDIF packetizer 306 may collect each block of multi-channel SPDIF data, comprising 192 frames, and may extract the 192 channel status bits from each multi-channel SPDIF data block. The SPDIF packetizer 306 may then break up each of the SPDIF blocks into packets using one or more different techniques.
For example, in one embodiment of the invention, the following SPDIF data packetization technique may be used: each multi-channel SPDIF data block may be broken into n data packets. In this regard, each data packet may comprise 192/n SPDIF data frames, and the size of each SPDIF data packet will be (192*8/n). In yet another embodiment of the invention, the following SPDIF data packetization technique may be used: the SPDIF data packet size of X may be used, where X may be a multiple of 8. The SPDIF packetizer 306 may then fill each SPDIF data packet with size X with as many SPDIF frames as possible.
Even though only two packetization techniques used by the SPDIF packetizer 306 are disclosed, the present invention may not be so limited. In this regard, the SPDIF packetizer 306 may also utilize other techniques for packetization of SPDIF data and/or CSBs.
The multi-channel SPDIF data packets generated by the SPDIF packetizer 306 may be communicated to the SPDIF depacketizers 314, . . . , 318 with or without packet headers. In Instances when the multi-channel SPDIF data packets comprise a header, each packet header may be used to communicate additional information or information for error recovery, for example. Each header may comprise, for example, 192 CSBs extracted from each SPDIF block (each SPDIF block comprises 192 SPDIF frames, each frame contributing a single CSB). In addition, one or more of the CSBs may be used to carry audio channel information for the corresponding multi-channel SPDIF data within the packets. The SPDIF data packet header may also comprise a packet sequence number, which may designate the sequence number of the SPDIF packet in the block. The headers may be used at the SPDIF depacketizers 314, . . . , 318, for error recovery or for transmission of any additional information.
In another embodiment of the invention, the 192 CSBs extracted from each SPDIF block may be packetized and transmitted in a separate packet. In such instances when the CSBs are packetized separately, the SPDIF data packet header may comprise only the packet sequence number. The CSB packets and the SPDIF data packets may then be encapsulated and transmitted over the Internet or an Intranet to the SPDIF depacketizers 314, . . . , 318. The SPDIF packetizer 306 may encapsulate the SPDIF data packets and/or the CSBs packets and/or the headers as Ethernet packets, as transport layer protocol packets, such as TCP and/or UDP packets, as Wireless LAN (802.11) packets, and/or as Bluetooth packets.
After the SPDIF packetizer 306 generates the SPDIF data packets (with or without headers) and/or the CSBs packets, the SPDIF data packets (with or without headers) and/or the CSBs packets may be transmitted via the Internet/Intranet/WLAN, or Bluetooth and the connections 308, . . . , 312 to the SPDIF depacketizers 314, . . . , 318. The SPDIF depacketizers 314, . . . , 318 may depacketize the received SPDIF data packets and/or CSBs packets and communicate the depacketized and decided SPDIF digital audio data to the corresponding multichannel speaker sets 320, . . . , 324.
Even though the SPDIF Rx/decoder 304 and the SPDIF packetizer 306 are shown in
Referring to
In instances when a multi-channel SPDIF data packet has been lost in transmission, the SPDIF DPB 400 may use the frame sequence number from the header and the CSB information to formulate and insert the correct channel status bit information for the frames contained in the missing packet. The SPDIF DPB 400 may also extract critical information from the CSBs, such as sample rate information, SPDIF data type information and/or copyright assertion information. The depacketizer 406 may communicate the critical information to, for example, the SPDIF Rx (multichannel speaker set) 405 and to one or more of audio players/speakers. The SPDIF Rx (multichannel speaker set) 405 may use the extracted critical information to maintain its clock functioning without interruption, in instances when one or more SPDIF data packets are lost in transmission. In this regard, even if some of the frames containing crucial channel status information are lost, the SPDIF Rx (multichannel speaker set) 405 may recover and play SPDIF frames from the decoded and depacketized SPDIF data block. If the SPDIF Rx (multichannel speaker set) 405 is not able to recover the lost frames, it may construct them from the previous frames by, for example, applying suitable methods.
At 510, the packetized multichannel SPDIF data may be received by the SPDIF DPB 400 via a network. The received data may be depacketized by the SPDIF depacketizer 314. In this regard, the multichannel SPDIF audio data and/or the CBIT information and/or the header information may then be extracted. The extracted multichannel SPDIF audio data may be communicated to a speaker system, such as the multichannel speaker set 320.
At 610, the SPDIF depacketizer 314 may extract from the transmitted at least one channel status bits packet audio channel information, sample rate information, SPDIF data type information and/or copyright assertion information related to at least a portion of the plurality of SPDIF data frames. Furthermore, the SPDIF depacketizer 314 may also extract the multichannel SPDIF audio data and/or the CBIT information and/or the header information. The extracted multichannel SPDIF audio data may be communicated to a speaker system, such as the multichannel speaker set 320.
Certain embodiments of the invention may comprise a machine-readable storage having stored thereon, a computer program having at least one code section for processing multi-channel audio data, the at least one code section being executable by a machine for causing the machine to perform one or more of the steps described herein.
Accordingly, aspects of the invention may be realized in hardware, software, firmware or a combination thereof. The invention may be realized in a centralized fashion in at least one computer system or in a distributed fashion where different elements are spread across several interconnected computer systems. Any kind of computer system or other apparatus adapted for carrying out the methods described herein is suited. A typical combination of hardware, software and firmware may be a general-purpose computer system with a computer program that, when being loaded and executed, controls the computer system such that it carries out the methods described herein.
One embodiment of the present invention may be implemented as a board level product, as a single chip, application specific integrated circuit (ASIC), or with varying levels integrated on a single chip with other portions of the system as separate components. The degree of integration of the system will primarily be determined by speed and cost considerations. Because of the sophisticated nature of modern processors, it is possible to utilize a commercially available processor, which may be implemented external to an ASIC implementation of the present system. Alternatively, if the processor is available as an ASIC core or logic block, then the commercially available processor may be implemented as part of an ASIC device with various functions implemented as firmware.
The present invention may also be embedded in a computer program product, which comprises all the features enabling the implementation of the methods described herein, and which when loaded in a computer system is able to carry out these methods. Computer program in the present context may mean, for example, any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: a) conversion to another language, code or notation; b) reproduction in a different material form. However, other meanings of computer program within the understanding of those skilled in the art are also contemplated by the present invention.
While the invention has been described with reference to certain embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted without departing from the scope of the present invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the present invention without departing from its scope. Therefore, it is intended that the present invention not be limited to the particular embodiments disclosed, but that the present invention will include all embodiments falling within the scope of the appended claims.
This application makes reference to U.S. patent application Ser. No. ______ (Attorney Docket No. 18346US01), filed on Oct. 15, 2007, which is incorporated herein by reference in its entirety.