WO2009071115A1 - A packet generator - Google Patents
A packet generator Download PDFInfo
- Publication number
- WO2009071115A1 WO2009071115A1 PCT/EP2007/063202 EP2007063202W WO2009071115A1 WO 2009071115 A1 WO2009071115 A1 WO 2009071115A1 EP 2007063202 W EP2007063202 W EP 2007063202W WO 2009071115 A1 WO2009071115 A1 WO 2009071115A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- signal
- packets
- encoded
- value
- encoded signal
- Prior art date
Links
- 230000001419 dependent effect Effects 0.000 claims abstract description 74
- 239000010410 layer Substances 0.000 claims description 145
- 239000012792 core layer Substances 0.000 claims description 64
- 238000000034 method Methods 0.000 claims description 61
- 238000012545 processing Methods 0.000 claims description 10
- 230000001360 synchronised effect Effects 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 4
- 230000005236 sound signal Effects 0.000 description 29
- 238000013459 approach Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 9
- 238000013461 design Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 239000004065 semiconductor Substances 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 230000000295 complement effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000012092 media component Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 230000007727 signaling mechanism Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/18—Vocoders using multiple modes
- G10L19/24—Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/70—Media network packetisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/167—Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
Definitions
- the present invention relates to media transport, and in particular, but not exclusively to transport of encoded speech, audio or video signal.
- Audio signals like speech or music, are encoded for example for enabling an efficient transmission or storage of the audio signals.
- Audio encoders and decoders are used to represent audio based signals, such as music and background noise. These types of coders typically do not utilise a speech model for the coding process, rather they use processes for representing all types of audio signals, including speech.
- Speech encoders and decoders are usually optimised for speech signals, and can operate at either a fixed or variable bit rate.
- An audio codec can also be configured to operate with varying bit rates. At lower bit rates, such an audio codec may work with speech signals at a coding rate equivalent to a pure speech codec. At higher bit rates, the audio codec may code any signal including music, background noise and speech, with higher quality and performance.
- the input signal is divided into a limited number of bands.
- Each of the band signals may be quantized. From the theory of psychoacoustics it is known that the highest frequencies in the spectrum are perceptually less important than the low frequencies. This in some audio codecs is reflected by a bit allocation where fewer bits are allocated to high frequency signals than low frequency signals.
- the scalable media data consists of a core layer, which is always needed to enable reconstruction in the receiving end, and one or several enhancement layers that can be used to provide added value to the reconstructed media (e.g. improved media quality or increased robustness against transmission errors, etc).
- the scalability of these codecs may be used in a transmission level e.g. for controlling the network capacity or shaping a multicast media stream to facilitate operation with participants behind access links of different bandwidth.
- the scalability may be used for controlling such variables as computational complexity, encoding delay, or desired quality level. Note that whilst in some scenarios the scalability can be applied at the transmitting end- point, there are also operating scenarios where it is more suitable that an intermediate network element is able to perform the scaling.
- this scalable layer operation to audio encoding may be employed in telephony.
- VoIP Voice over IP
- the audio signal is layer encoded using packets transmitted according to the Real-time Transport Protocol (RTP) encapsulated in the User Datagram Protocol (UDP), further encapsulated in Internet Protocol (IP).
- RTP Real-time Transport Protocol
- UDP User Datagram Protocol
- IP Internet Protocol
- the enhancement layers may be transmitted in the same packets, i.e. in the same RTP session as the core layer data.
- the approach of carrying all of the layers (of a media frame) in a single packet provides low overhead and easy cross-layer synchronization as the receiver decoder knows that all information for a certain media frame is carried in the same packet, which implicitly also provides cross-layer media synchronization.
- the drawback of this approach is that any intermediate network element carrying out a scaling operation needs to be aware of the details of the packet and media content structure, and then carry out a filtering operation by reading, parsing, and then modifying the packet contents.
- the second approach is that the enhancement layers (or the subsets of enhancement layers) may be transmitted in separate packet stream(s) as the core layer data.
- This second approach requires also a signalling mechanism that can be used to synchronize the separate packet data streams carrying layers of the same media source.
- This approach therefore does not require in-depth knowledge about the packet structure but the scaling operations can be performed based on information about the relationship between the data streams,
- Multiple data streams using multiple RTP sessions is the traditional way to transmit layered media data within a RTP framework (the approach is often referred to as scalable multicast). Synchronization of multiple data streams is obviously a problem when the receiver is reconstructing a media frame using layers distributed across multiple RTP sessions.
- the timeline of a media stream received in RTP packets can be reconstructed using Time Stamp (TS) information included in the RTP header.
- TS Time Stamp
- the RTP TS provides information on the temporal difference compared to other RTP packets transmitted in the same RTP session, which enables putting each received media frame in its correct place in the timeline.
- the initial value of the RTP TS of an RTP session is a random value.
- the RTP TS does NOT indicate an absolute time (i.e. "wallclock time") but only a relative time or timing reference within the RTP session. Note that this "randomness" may be considered to be an unknown offset from an absolute time. The unknown offset may and is likely to be different in each RTP session.
- the prior-art mechanism for synchronizing multiple RTP sessions is to use the control protocol associated with the transport protocol to send additional information.
- RTCP Real-Time Control Protocol
- the transmitter of these RTCP reports includes both a timing reference (NTP) and a sending instant in the RTP TS domain in the RTCP Sender Reports (SR) transmitted according to a specified pattern.
- NTP timing reference
- SR RTCP Sender Reports
- an RTCP packet also includes an identifier (SSRC) that is used to map an RTCP packet to the correct stream of RTP packets.
- SSRC identifier
- the receiver on receiving the control protocol packets may use these control protocol packets within the timing reference and the RTP time stamps to compute the RTP TS offset from the tinning reference (NTP) for each of the RTP sessions it receives. These offsets values may then be used to match the timing of the media data received in separate RTP sessions. Therefore, for example, the receiver may combine layers of a media frame received in multiple RTP sessions.
- NTP tinning reference
- a problem associated with such a system is that it requires a RTCP SRs for each of the RTP sessions to be received before any full reconstruction of a media frame can be carried out.
- Such an approach would provide synchronization at the RTP (header) level, but only for the subset of RTP payloads which were pre- synchronized.
- Such payload type-dependent processing at RTP level may be considered a non-desirable feature in a system handling multiple payload types.
- a further prior-art solution has been to attach additional information for each transmitted data unit (e.g. a layer of a media frame in a layered encoding transport) indicating its temporal location in the presentation timeline.
- additional information may be for example a cross-layer sequence number or an additional timestamp information value that can be used at the receiver/intermediate network element to reconstruct the presentation order of media frames and layers within the frames.
- This additional information adds additional overhead for each packet and although it may be possible to use information with data fields smaller than a RTP Sequence Number (SN) and RTP TS (16 bits and 32 bits, respectively), any information added to each packet would still introduce additional overhead for each transmitted layer. For example in the case of smallish pieces of speech/audio data (in order of 10-20 bytes) even one additional byte of overhead per layer may have a significant effect on the overall system performance.
- SN RTP Sequence Number
- RTP TS 16 bits and 32 bits, respectively
- This application proposes a mechanism that facilitates efficient cross-layer synchronization with minimal overhead where multiple RTP sessions are used.
- Embodiments of the present invention aim to address the above problem.
- a packet generator for generating packets from an input signal configured to: generate at least one first signal, dependent on the input signal, the first signal comprising a first relative time value; generate at least one second signal, dependent on the input signal and associated with the at least one first signal; generate at least one indicator associated with each of the at least one second signal, each indicator dependent on the first relative time value.
- the first signal may comprise a core layer encoded signal.
- Each of the at least one second signal may comprise an enhancement layer.
- the indicator may comprise an identifier identifying the corresponding first signal.
- the first relative time value may comprise a real-time transport protocol time stamp and wherein the identifier may comprise the real-time transport protocol time stamp of the first encoded signal.
- Each second signal may comprise an associated second relative time value.
- the indicator may comprise the difference between the first relative time value and the associated second relative time value.
- the first signal may further comprise a sequence number; and wherein the each indicator may comprise the sequence number value.
- the first signal may further comprise a first identifier value dependent on the first relative time value.
- Each indicator may comprise the first identifier value.
- Each indicator may comprise at least one second identifier value, the second identifier value being preferably dependent on the first identifier value and the at least one second signal.
- the packet generator for generating packets from the input signal may further be configured to determine if a synchronization point has been reached.
- the packet generator is preferably configured to generate the indicator only if a synchronization point has been reached.
- the synchronization point is preferably determined dependent on receiving a synchronization request.
- the at least a first signal may comprise a plurality of packets and wherein the synchronization point is preferably determined dependent on detecting any of a predetermined number of packets, wherein the predetermined number of packets may comprise at least one of: the first predetermined number of packets of the plurality of packets; at least one of the predetermined number of packets separated from a second of the predetermined number of packets by a second predetermined number of packets; at least one of the predetermined number of packets separated from a second of the predetermined number of packets by a predetermined time period.
- the at least a first signal may comprise a plurality of packets and wherein the synchronization point is preferably determined dependent on detecting a discontinuity in the stream of packets.
- the at least a first signal may comprise a plurality of packets and wherein the synchronization point is preferably determined dependent on detecting the changing of the configuration of at least one of the first and second signais.
- the at least a first signal may comprise a plurality of packets and wherein the synchronization point is preferably determined dependent on detecting a talk spurt or a restarting of a session.
- the first signal may comprise at least one of: an algebraic code excited linear prediction signal; a variable rate multi-rate encoded signal; and ITU-T G729 core layer signal.
- the packet generator is preferably further configured to encode the input stream to generate the first signal and the second signal.
- the input stream preferably comprises at least one of: audio data; video data; MIDI data; animated graphics data; and text data.
- a packet synchronizer for synchronizing an encoded signal, configured to: receive an encoded signal comprising at least one first encoded signal, comprising a first relative time value, at least one second encoded signal comprising a second relative time value, and at least one indicator associated with each of the at least one second encoded signal; synchronize each of the at least one second encoded signal with at least one of at least one first encoded signal dependent on the associated at least one indicator first relative time value.
- the packet synchronizer for synchronizing an encoded signal may further be configured to decode each of the at least one second encoded signal synchronized with the at least one of the first encoded signals to generate a decoded signal.
- the at least one first encoded signal may comprise at least one core layer audio encoded signal, and the at least one second encoded signal may comprise at least one enhancement layer audio encoded signal.
- the indicator may comprise an identifier identifying one of the at least one first encoded signal.
- Each first relative time value may comprise a first time stamp value
- the indicator may comprise the first time stamp value for one of the first encoded signals associated with one of the second encoded signals.
- Each second relative time value may comprise a second time stamp value and the decoder is preferably further configured to determine a time offset value between the first time stamp value and the second time stamp value of the associated one of the second encoded signals.
- the indicator may comprise the difference between the first relative time value and the associated second relative time value.
- the first encoded signal may further comprise a sequence number; and wherein the each indicator may comprise the sequence number value of the associated first encoded signal.
- the first encoded signal may further comprise a first identifier value dependent on the first relative time value.
- Each indicator may comprise the first identifier value.
- Each indicator may comprise at least one second identifier value, the second identifier value may be dependent on the first identifier value and the at least one second encoded signal.
- a method for generating packets from an input signal comprising: generating at least one first signal, dependent on the input signal, the first signal comprising a first relative time value; generating at least one second signal, dependent on the input signal and associated with the at least one first signal; generating at least one indicator associated with each of the at least one second signal, each indicator dependent on the first relative time value.
- the first signal may comprise a core layer encoded signal
- Each of the at least one second signal may comprise an enhancement layer.
- the indicator may comprise an identifier identifying the corresponding first signal
- the first relative time value may comprise a real-time transport protocol time stamp and wherein the identifier comprises the real-time transport protocol time stamp of the first encoded signal.
- Each second signal may comprise an associated second relative time value.
- the indicator may comprise the difference between the first relative time value and the associated second relative time value.
- the first signal may further comprise a sequence number; and wherein the each indicator comprises the sequence number value.
- the first signal may further comprise a first identifier value dependent on the first relative time value.
- Each indicator may comprise the first identifier value.
- Each indicator may comprise at least one second identifier value, the second identifier value may be dependent on the first identifier value and the at least one second signal.
- the method for generating packets from the input signal may further comprise: determining if a synchronization point has been reached.
- the method for generating packets from the input signal may further comprise generating the indicator only if a synchronization point has been reached.
- the synchronization point is preferably determined dependent on receiving a synchronization request.
- the at ieast a first signal preferably comprises a plurality of packets and wherein the synchronization point is preferably determined dependent on detecting any of a predetermined number of packets, wherein the predetermined number of packets may comprise at ieast one of: the first predetermined number of packets of the plurality of packets; at (east one of the predetermined number of packets separated from a second of the predetermined number of packets by a second predetermined number of packets; at least one of the predetermined number of packets separated from a second of the predetermined number of packets by a predetermined time period.
- the at least a first signal may comprise a plurality of packets and wherein the synchronization point is preferably determined dependent on detecting a discontinuity in the stream of packets.
- the at least a first signal may comprise a plurality of packets and wherein the synchronization point is preferably determined dependent on detecting the changing of the configuration of at least one of the first and second signals.
- the at least a first signal may comprise a plurality of packets and wherein the synchronization point is preferably determined dependent on detecting a talk spurt or a restarting of a session.
- the first signal may comprise at least one of: an algebraic code excited linear prediction signal; a variable rate multi-rate encoded signal; and ITU-T G729 core layer signal.
- the method may further comprise encoding the input stream to generate the first signal and the second signal.
- the input stream may further comprise at least one of: audio data; video data; MIDI data; animated graphics data; and text data.
- a method for synchronizing an encoded signal comprising: receiving an encoded signal comprising at least one first encoded signal, comprising a first relative time value, at least one second encoded signal comprising a second relative time value, and at least one indicator associated with each of the at least one second encoded signal; and synchronizing each of the at least one second encoded signal with at least one of at least one first encoded signal dependent on the associated at least one indicator first relative time value.
- the method for synchronizing an encoded signal may further comprise decoding each of the at least one second encoded signal synchronized with the at least one of the first encoded signals to generate a decoded signal.
- the at least one first encoded signal may comprises at least one core layer encoded signal, and the at least one second encoded signal may comprise at least one enhancement layer encoded signal.
- the indicator may comprise an identifier identifying one of the at least one first encoded signal.
- Each first relative time value may comprise a first time stamp value
- the indicator may comprise the first time stamp value for one of the first encoded signals associated with one of the second encoded signals.
- Each second relative time value may comprise a second time stamp value and the method may further comprises determining a time offset value between the first time stamp value and the second time stamp value of the associated one of the second encoded signals.
- the indicator may comprise the difference between the first relative time value and the associated second relative time value.
- the first encoded signal may further comprise a sequence number; and wherein the each indicator comprises the sequence number value of the associated first encoded signal.
- the first encoded signal may further comprise a first identifier value dependent on the first relative time value
- Each indicator may comprise the first identifier value.
- Each indicator may comprise at least one second identifier value, the second identifier value may be dependent on the first identifier value and the at least one second encoded signal.
- An apparatus may comprise an encoder as featured above.
- An apparatus may comprise a decoder as featured above.
- An electronic device may comprise an encoder as featured above.
- An electronic device may comprise a decoder as featured above.
- a chipset may comprise an encoder as featured above.
- a chipset may comprise a decoder as featured above.
- a computer program product configured to perform a method for generating packets from an input signal comprising: generating at least one first signal, dependent on the input signai, the first signal comprising a first relative time value; generating at least one second signal, dependent on the input signal and associated with the at least one first signal; generating at least one indicator associated with each of the at least one second signal, each indicator dependent on the first relative time value.
- a computer program product configured to perform a method for synchronizing an encoded signal, comprising: receiving an encoded signal comprising at least one first encoded signal, comprising a first relative time vaiue, at least one second encoded signal comprising a second relative time value, and at least one indicator associated with each of the at least one second encoded signai; and synchronizing each of the at least one second encoded signal with at least one of at least one first encoded signal dependent on the associated at least one indicator first relative time value.
- a packet generator for generating packets from an input signal comprising: first processing means for generating at least one first signal, dependent on the input signal, the first signal comprising a first relative time value; second processing means for generating at least one second signal, dependent on the input signal and associated with the at least one first signal; and third processing means for generating at least one indicator associated with each of the at least one second signal, each indicator dependent on the first relative time value.
- a packet synchronizer for synchronizing packets comprising: receiving means for receiving an encoded signal comprising at least one first encoded signal, comprising a first relative time value, at least one second encoded signal comprising a second relative time value, and at least one indicator associated with each of the at least one second encoded signal; signal processing means for synchronizing each of the at least one second encoded signal with at least one of at least one first encoded signal dependent on the associated at least one indicator first relative time value.
- Figure 1 shows schematically an electronic device employing embodiments of the invention
- FIG. 2 shows schematically an audio codec system employing embodiments of the present invention
- Figure 3 shows schematically an encoder part of the audio codec system shown in figure 2;
- Figure 4 shows schematically a flow diagram illustrating the operation of an embodiment of the audio encoder as shown in figure 3 according to the present invention
- Figure 5 shows schematically a transport block as used in an embodiment of the invention
- Figure 6 shows a schematically a decoder part of the audio codec system shown in figure 2;
- Figure 7 shows a flow diagram illustrating the operation of an embodiment of the audio decoder as shown in figure 6 according to the present invention. Description of Preferred Embodiments of the Invention
- RTP sessions carrying media streams with other types of relationships than layered coding For example the same approach may be applied to a set of media streams constituting the data for multi descriptive coding. Furthermore, the mechanism described below may also apply to any different types of media components transmitted in separate RTP sessions, for example audio and video coding.
- figure 1 shows a schematic block diagram of an exemplary electronic device 10, which may incorporate a codec according to an embodiment of the invention.
- the electronic device 10 may for example be a mobile terminal or user equipment of a wireless communication system.
- the electronic device 10 comprises a microphone 11 , which is linked via an analogue-to-digital converter 14 to a processor 21.
- the processor 21 is further linked via a digital-to-analogue converter 32 to loudspeakers 33.
- the processor 21 is further linked to a transceiver (TX/RX) 13, to a user interface (Ui) 15 and to a memory 22.
- the processor 21 may be configured to execute various program codes.
- the implemented program codes comprise an audio encoding code for encoding a combined audio signal and code to extract and encode side information pertaining to the spatial information of the multiple channels.
- the implemented program codes 23 further comprise an audio decoding code.
- the implemented program codes 23 may be stored for example in the memory 22 for retrieval by the processor 21 whenever needed.
- the memory 22 could further provide a section 24 for storing data, for example data that has been encoded in accordance with the invention.
- the encoding and decoding code may in embodiments of the invention be implemented in hardware or firmware.
- the user interface 15 enables a user to input commands to the electronic device 10, for example via a keypad, and/or to obtain information from the electronic device 10, for example via a display.
- the transceiver 13 enables a communication with other electronic devices, for example via a wireless communication network.
- a user of the electronic device 10 may use the microphone 1 1 for inputting speech that is to be transmitted to some other electronic device or that is to be stored in the data section 24 of the memory 22.
- a corresponding application has been activated to this end by the user via the user interface 15.
- This application which may be run by the processor 21 , causes the processor 21 to execute the encoding code stored in the memory 22.
- the analogue-to-digital converter 14 converts the input analogue audio signal into a digital audio signal and provides the digital audio signal to the processor
- the processor 21 may then process the digital audio signal in the same way as described with reference to figures 2 and 3.
- the resulting bit stream is provided to the transceiver 13 for transmission to another electronic device.
- the coded data could be stored in the data section 24 of the memory 22, for instance for a later transmission or for a later presentation by the same electronic device 10.
- the electronic device 10 could also receive a bit stream with correspondingly encoded data from another eiectronic device via its transceiver 13.
- the processor 21 may execute the decoding program code stored in the memory 22.
- the processor 21 decodes the received data, and provides the decoded data to the digital-to-analogue converter 32.
- the digital-to-analogue converter 32 converts the digital decoded data into analogue audio data and outputs them via the loudspeakers 33. Execution of the decoding program code could be triggered as well by an application that has been called by the user via the user interface 15.
- the received encoded data could also be stored instead of an immediate presentation via the loudspeaker(s) 33 in the data section 24 of the memory 22, for instance for enabling a later presentation or a forwarding to still another eiectronic device.
- FIG. 1 The genera! operation of audio codecs as employed by embodiments of the invention is shown in figure 2.
- General audio coding/decoding systems consist of an encoder and a decoder, as illustrated schematically in figure 2. Illustrated is a system 102 with an encoder 104, a storage or media channel 106 and a decoder 108.
- the encoder 104 compresses an input audio signal 1 10 producing a bit stream 112, which is either stored or transmitted through a media channel 106.
- the bit stream 1 12 can be received within the decoder 108.
- the decoder 108 decompresses the bit stream 112 and produces an output audio signal 114.
- the bit rate of the bit stream 112 and the quality of the output audio signal 1 14 in relation to the input signal 110 are the main features, which define the performance of the coding system 102.
- Figure 3 depicts schematically an encoder 104 according to an exemplary embodiment of the invention.
- the encoder 104 comprises an input 203 which is arranged to receive an audio signal.
- the audio signal input 203 is connected to a layer codec processor 205.
- the output from the layer codec processor 205 is passed to the core layer RTP session generator 209 and an input of an enhancement layer RTP session generator 211.
- the core layer RTP session generator 209 is configured to have one output connected to an input of a network interface 213 and a further output connected to a further input of the enhancement layer RTP session generator 211.
- the enhancement layer RTP session generator 211 is configured to have an output connected to a further input of the network interface 213.
- the network interface 213 may then be arranged to output the output the RTP packet streams 112 via the output 206.
- the audio signal is received by the encoder 104.
- the audio signal is a digitally sampled signal.
- the audio input may be an analogue audio signal, for example from a microphone 6, which is analogue to digitally (A/D) converted.
- the audio input is converted from a pulse code modulation digital signal to amplitude modulation digital signal. The receiving of the audio signal is shown in figure 4 by step 301.
- the layer codec processor 205 receives the audio signal to be encoded and outputs the encoded parameters which represent the core level encoded signal.
- the layer codec processor 205 furthermore generates for internal use the synthesised audio signal (in other words the audio signal is encoded into parameters and then the parameters are decoded using the reciprocal process to produce the synthesised audio signal).
- the layer codec processor 205 may use any appropriate encoding technique, to generate the core layer.
- the layer codec processor 205 generates a core layer using an embedded variable bit rate codec (EV-VBR).
- EV-VBR embedded variable bit rate codec
- the core layer may be an algebraic code excited linear prediction encoding (ACELP) and is configured to output a bitstream of typical ACELP parameters.
- ACELP algebraic code excited linear prediction encoding
- the generation of the core layer coded signal is shown in figure 4 by step 303.
- the layer codec processor 205 uses the synthesized audio signal (in order words the audio signal is first encoded into parameters such as those described above and then decoded back into an audio signal within the same core layer codec). This synthesized signal is used within the layer codec processor 205 to generate the enhanced layer.
- the synthesized signal and the audio signal are transformed into the frequency domain and the difference between the two frequency domain signals is then encoded to produce the enhancement layer data.
- ITU-T Embedded Variable Bit-Rate (EV- VBR) speech/audio codec enhancement layers and ITU-T Scalable Video Codec (SVC) enhancement layers may be generated.
- EV- VBR Embedded Variable Bit-Rate
- SVC Scalable Video Codec
- VMR-WB Variable Multi-Rate Wideband
- ITU-T G.729 ITU-T G.729.1
- AMR-WB Adaptive Multirate Rate- Wide band
- AMR- WB+ Adaptive Multirate Rate-Wideband Plus
- any suitable enhancement layer codec may be employed to extract the correlation between the synthesized signal and the original audio signal to generate an enhanced layer data signal.
- the generation of the enhancement data is shown in figure 4 by step 305.
- the core layer RTP session generator 209 receives the core layer signal data and is configured to generate the RTP session data associated with the core layer signal data.
- the RTP session data will typically comprise a packet with a header comprising a time stamp value (TSc) which as described above marks a relative time which enables the packets of an RTP session to be reassembled in the correct order when having been received at the receiver.
- TSc time stamp value
- the generation of the core layer RTP session packet is shown in figure 4 by step 307.
- the enhancement layer RTP session generator 211 receives the enhancement layer data signal and initially generates an enhancement layer RTP session packet.
- the enhancement layer RTP packet will also comprise a header comprising a time stamp value (TSE) which marks a relative time with respect to the enhancement layer which would enable the receiver to reconstruct the order of the enhancement layer RTP packets received.
- TSE time stamp value
- the generation of the enhancement layer RTP session packet is shown in figure 4 by step 309.
- the enhancement layer RTP session generator furthermore checks whether the current packet being generated is at a synchronization point.
- the synchronization point is the first packet at the start of the session generation.
- the enhancement layer RTP session generator determines if this enhancement layer session packet is the first to be transmitted.
- the synchronization point is not only for the first packet at the start of a generated session but for a predetermined number of subsequent packets.
- the addition of synchronization information on additional packets alfows for a larger error rate where one or more packets may not be received, yet the synchronization information may still be received by the receiver.
- the synchronization point is taken to be every n'th packet.
- a synchronization point is determined after a predetermined number of packets have been transmitted. For example the synchronization point is determined after every 100 packets. This predetermined number may be chosen dependent on the bit or packet error rate from the transmitter to the receiver.
- the synchronization point is taken to be the packet generated or transmitted after a predetermined regular interval.
- This predetermined regular interval may be chosen dependent on the bit or packet error rate from the transmitter to the receiver so to optimise the ability of the receiver to receive synchronization information as disclosed below with the overhead requirements by transmitting the synchronization information.
- the information there may be a feedback ioop from the decoder/receiver 108 to the encoder/transmitter 104 which is configured to receive a request from the decoder/receiver 108 for synchronization information.
- the enhancement layer RTP session generator may be configured to determine that a synchronization point has been reached. The synchronization point may be determined to remain in place following the receipt of the request from the decoder/receiver for a predetermined number of packets.
- the enhancement layer RTP session generator 211 may be configured to determine that a synchronization point has been reached each time the encoder/transmitter 104 needs to introduce a discontinuity in the transmitted stream of packets. For example when the encoder needs to add new enhancement layers based on the media characteristics. For example audio stream switching from mono to stereo is impiemented by including an enhancement layer containing stereo bit stream as a separate RTP session.
- the available computational resources may vary in the encoding terminal allowing occasionally higher bit rate encoding causing discontinuities.
- Call on-hold functionality creates a discontinuity in encoding.
- the enhancement layer RTP session generator 211 may be configured to determine that a synchronization point has been reached each time the transmitted layer configuration is changed to include a higher number of layers.
- the enhancement layer RTP session generator 21 1 may be configured to determine that a synchronization point has been reached each time a talk spurt (in a speech session) is started,
- the enhancement layer RTP session generator 211 may be configured to determine that a synchronization point has been reached each time the session is re-started after a period of inactivity.
- step 311 The detection of the synchronization point is shown in figure 4 by step 311.
- the procedure inserts a synchronization element.
- the enhancement layer RTP session generator 211 inserts a synchronization element into the enhancement layer RTP session packet generated in step 309.
- the enhancement layer RTP session generator 21 1 inserts in the current enhancement layer RTP session packet, as a synchronization element, the current value of the RTP TS of the RTP session carrying the corresponding core layer data.
- the value of TS C is inserted into a packet of the (each) RTP session carrying the enhancement layer data in case a synchronization data needs to be provided for the receiver.
- each enhancement layer RTP session generator may insert the core layer RTP TS value associated with the frame of the enhancement layer signal and therefore each session can similarly use the TSc value to synchronize each layer at the decoder/receiver 108.
- each enhancement layer RTP session generator receives the core layer RTP session TS (TSc) and generates an offset value of the difference between the core layer RTP TS value and enhancement layer RTP TS value in a packet of the (each) RTP session carrying enhancement layer data.
- the enhancement layer RTP session generator 211 then inserts the TS offset value as the synchronization element into an enhancement layer RTP session packet at each RTP session carrying the layers of the corresponding core layer data.
- the RTP session generator includes a value of the common timing reference as the synchronization element in a packet of each of the RTP sessions carrying layers of the same media frame.
- a common time reference is NTP timestamp, which is carried also in the RTCP sender and receiver reports.
- the enhancement layer RTP session generator 211 inserts the RTP sequence number (SN) value for the RTP session carrying the core layer data in a packet of the (each) RTP session carrying the enhancement layer data from the same media frame as the synchronization element. This would enable, as described below, the decoder/receiver 108 to find the corresponding RTP TS values and compute the TS offsets required for cross-session synchronization.
- the enhancement layer RTP session generator 211 inserts an identifier, as a synchronization element, with the same value in a packet at each RTP session representing a layer or layers of the same media frame.
- the identifier value may change from layer to layer (from RTP session to RTP session) according to a predetermined pattern.
- the proposed EV-VBR codec RTP payload introduces a concept of transport block, which carries one or several layers from one or several encoded audio frames.
- Each transport block is independent, consisting of layer identification (L-ID) value indicating the layer configuration carried in the transport block, information on the number of frames included in the transport block, and the actual encoded audio data.
- L-ID layer identification
- the decoder/receiver 108 may use the L-ID value to uniquely identify the layers that are carried in each of the received transport blocks.
- an L-iD value to indicate a transport block carrying the inserted cross-layer synchronization element instead of encoded audio data is allocated.
- the transport block carrying the synchronization element may be transmitted together with the transport block(s) carrying the actual EV-VBR audio data.
- FIG. 5(a) shows in an embodiment where the synchronization element may be transmitted in the same packet with only a single transport block containing audio data.
- the packet may also contain several transport blocks carrying audio data.
- the synchronization element is included as part of the data stream but as its own RTP packet.
- the timing associated with the synchronization element is defined according to the embodiments of the invention by the RTP TS of the packet carrying the cross-layer synchronization element (alternatively, the timing could be specified to be computed from the (RTP) packet header information using a predefined method - e.g. it can be specified to have the same timing as the audio data block preceding/following it).
- the amount of information needed for the synchronization element is small compared to the size of the actual media data.
- the amount of information needed for the synchronization element is small compared to the size of the actual media data.
- only on RTP sessions conveying enhancement iayer data it may be possible to completely replace the enhancement layer audio data with the synchronization element in those few frames it is needed. This does not prevent media rendering in the receiver since reception of the core layer audio data ensures successful decoding, although the audio quality may be temporarily degraded.
- the synchronization element may be transmitted during non-speech periods and when it is feasible in the application point of view so to prevent using additional bandwidth during speech periods.
- the enhancement layer RTP session generator may then pass the generated enhancement layer RTP packets to the network interface 213.
- the network interface 213 on receiving the packets from the core layer RTP session generator 209 and the enhancement layer RTP session generator 211 outputs or stores the RTP packets.
- the decoder comprises an input 502 from which the encoded packet stream 112 may be received.
- the input 502 is connected to the packet receiver 501.
- the packet receiver is configured to forward the received packet stream 112 as at least two separate packet streams.
- the first packet stream from the receiver is passed to the core layer processor 503. This unpacking process is shown in figure 7 by step 601.
- the core layer processor 503 receives the core layer packets and is configured to pass core layer data and a core layer timing element associated with the core layer data to the core layer decoder 507.
- the enhancement layer processor 505 receives the enhancement layer packets and is configured to pass enhancement layer data and an enhancement layer timing element TS E associated with the enhancement layer data to the enhancement layer decoder 509.
- the extraction of the timing element TS E and the enhancement layer data is shown in figure 7 by the step 605.
- the enhancement layer processor 505 furthermore detects if there is a synchronization element within the enhancement layer packets or associated with the packets.
- the enhancement layer processor 505 extracts the synchronization element from the layer packets.
- the extraction of the synchronization element is shown in figure 7 by step 607.
- the enhancement layer processor on extracting the synchronization element determines the offset between the core layer and the enhancement layer.
- the offset can be determined by a simple subtraction.
- RTPi the core layer data
- RTP 3 the second carrying enhancement layer 2
- the encoder/transmitter 104 sends the core layer of encoded frame n in RTPi with the standard timestamp value TSn.
- a synchronization element containing the corresponding timestamp value in RTP-i i.e. TSn
- TSn the payload carrying enhancement layers 1 (in RTP 2 ) and 2 (in RTP 3 ) for encoded frame n. Note that these packets themselves will have standard RTP timestamp values TS t 2 and TS t3 in their RTP headers, respectively.
- the enhancement layer 1 for encoded frame n has the timestamp TS t2
- the core layer for the same encoded frame has the timestamp value TS t2 + TS 02 -
- any subsequent timestamp of the RTP 2 can be brought to the RTPi timeline by adding TS 02 to the TS value received in the RTP header of an RTP 2 packet.
- the offset may be determined by examining the synchronization elements in other embodiments of the invention, such as reading the offset value, or by comparing the received sequence number in the synchronization elements with the sequence number of the received core layer packet, or by comparing the identifier on the enhancement layer packet with the core layer packet.
- the layer decoder 507 performs the complementary operation to that performed by the core layer codec processor 205 on the core layer data to generate a synthetic audio signal for the core layer. Furthermore the core layer synthetic signal is used internally to generate the enhancement layer(s) .
- the decoding of the core layer is shown in figure 7 by step 611.
- the layer decoder 507 furthermore performs the complementary operation to that performed by the layer codec processor 205 to generate a synthetic enhancement layer signal.
- the enhancement layer signal from the enhancement layer processor is synchronized using the offset information passed from the enhancement layer processor.
- the synchronizing and decoding of the enhanced layer is shown in figure 7 by step 613.
- the synthetic enhancement iayer signal is then combined together with the synthetic core layer signal to generate the synthetic audio signal on the output 506.
- the synchronization of the synthetic signals may be carried out using the offset information after the decoding of the enhancement layer.
- user equipment may comprise an audio codec such as those described in embodiments of the invention above.
- user equipment is intended to cover any suitable type of wireless user equipment, such as mobile telephones, portable data processing devices or portable web browsers.
- PLMN public land mobile network
- elements of a public land mobile network may also comprise audio codecs as described above.
- the various embodiments of the invention may be implemented in hardware or special purpose circuits, software, logic or any combination thereof.
- some aspects may be implemented in hardware, while other aspects may be implemented in firmware or software which may be executed by a controller, microprocessor or other computing device, although the invention is not limited thereto.
- firmware or software which may be executed by a controller, microprocessor or other computing device, although the invention is not limited thereto.
- While various aspects of the invention may be illustrated and described as block diagrams, flow charts, or using some other pictorial representation, it is well understood that these blocks, apparatus, systems, techniques or methods described herein may be implemented in, as non-limiting examples, hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controller or other computing devices, or some combination thereof.
- the embodiments of the invention may be implemented as a chipset, in other words a series of integrated circuits communicating among each other.
- the chipset may comprise microprocessors arranged to run code, application specific integrated circuits (ASICs), or programmable digital signal processors for performing the operations described above.
- ASICs application specific integrated circuits
- programmable digital signal processors for performing the operations described above.
- the embodiments of this invention may be implemented by computer software executable by a data processor of the mobile device, such as in the processor entity, or by hardware, or by a combination of software and hardware. Further in this regard it should be noted that any blocks of the logic flow as in the Figures may represent program steps, or interconnected logic circuits, blocks and functions, or a combination of program steps and logic circuits, blocks and functions.
- the memory may be of any type suitable to the local technical environment and may be implemented using any suitable data storage technology, such as semiconductor-based memory devices, magnetic memory devices and systems, optical memory devices and systems, fixed memory and removable memory.
- the data processors may be of any type suitable to the local technical environment, and may include one or more of general purpose computers, special purpose computers, microprocessors, digital signal processors (DSPs) and processors based on multi-core processor architecture, as non-limiting examples.
- Embodiments of the inventions may be practiced in various components such as integrated circuit modules.
- the design of integrated circuits is by and large a highly automated process.
- Complex and powerful software tools are available for converting a logic level design into a semiconductor circuit design ready to be etched and formed on a semiconductor substrate.
- Programs such as those provided by Synopsys, Inc. of Mountain View, California and Cadence Design, of San Jose, California automatically route conductors and locate components on a semiconductor chip using well established rules of design as well as libraries of pre-stored design modules.
- the resultant design in a standardized electronic format (e.g., Opus, GDSII, or the iike) may be transmitted to a semiconductor fabrication facility or "fab" for fabrication.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
Description
Claims
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP07847713A EP2215797A1 (en) | 2007-12-03 | 2007-12-03 | A packet generator |
CN2007801020956A CN101911634A (en) | 2007-12-03 | 2007-12-03 | A packet generator |
KR1020107014705A KR20100096220A (en) | 2007-12-03 | 2007-12-03 | A packet generator |
PCT/EP2007/063202 WO2009071115A1 (en) | 2007-12-03 | 2007-12-03 | A packet generator |
US12/746,076 US8566108B2 (en) | 2007-12-03 | 2007-12-03 | Synchronization of multiple real-time transport protocol sessions |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2007/063202 WO2009071115A1 (en) | 2007-12-03 | 2007-12-03 | A packet generator |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2009071115A1 true WO2009071115A1 (en) | 2009-06-11 |
Family
ID=39777131
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/EP2007/063202 WO2009071115A1 (en) | 2007-12-03 | 2007-12-03 | A packet generator |
Country Status (5)
Country | Link |
---|---|
US (1) | US8566108B2 (en) |
EP (1) | EP2215797A1 (en) |
KR (1) | KR20100096220A (en) |
CN (1) | CN101911634A (en) |
WO (1) | WO2009071115A1 (en) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8515767B2 (en) * | 2007-11-04 | 2013-08-20 | Qualcomm Incorporated | Technique for encoding/decoding of codebook indices for quantized MDCT spectrum in scalable speech and audio codecs |
KR101001024B1 (en) * | 2007-12-18 | 2010-12-14 | 한국전자통신연구원 | Method and apparatus for preserving security in video multicasting service |
FR2927208B1 (en) * | 2008-01-31 | 2010-02-12 | Airbus France | METHOD AND DEVICE FOR MEASURING THE TEMPORAL DERIVATIVE OF AN ELECTRONIC EQUIPMENT CONNECTED TO A NETWORK |
EP2465241A1 (en) * | 2009-08-12 | 2012-06-20 | Koninklijke KPN N.V. | Dynamic rtcp relay |
US8811299B2 (en) * | 2009-09-15 | 2014-08-19 | Intel Corporation | Techniques for requesting bandwidth allocation |
WO2013049256A1 (en) * | 2011-09-26 | 2013-04-04 | Sirius Xm Radio Inc. | System and method for increasing transmission bandwidth efficiency ( " ebt2" ) |
CN105188075B (en) * | 2014-06-17 | 2018-10-12 | 中国移动通信集团公司 | Voice quality optimization method and device, terminal |
KR101761812B1 (en) | 2015-06-16 | 2017-07-26 | 주식회사 구버넷 | Method for generating packet using a unequal error protection |
GB2598255B (en) * | 2016-02-17 | 2022-07-27 | V Nova Int Ltd | Physical adapter, signal processing equipment, methods and computer programs |
US11250867B1 (en) * | 2019-10-08 | 2022-02-15 | Rockwell Collins, Inc. | Incorporating data into a voice signal with zero overhead |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0624983A2 (en) * | 1993-05-13 | 1994-11-17 | RCA Thomson Licensing Corporation | Synchronization arrangement for a compressed video signal |
US20050036557A1 (en) * | 2003-08-13 | 2005-02-17 | Jeyendran Balakrishnan | Method and system for time synchronized forwarding of ancillary information in stream processed MPEG-2 systems streams |
WO2006102991A1 (en) * | 2005-03-30 | 2006-10-05 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Device and method for producing a data flow and for producing a multi-channel representation |
US20070002902A1 (en) * | 2005-06-30 | 2007-01-04 | Nokia Corporation | Audio and video synchronization |
EP1773072A1 (en) * | 2005-09-28 | 2007-04-11 | Avaya Technology Llc | Synchronization watermarking in multimedia streams |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6510553B1 (en) * | 1998-10-26 | 2003-01-21 | Intel Corporation | Method of streaming video from multiple sources over a network |
US7161931B1 (en) * | 1999-09-20 | 2007-01-09 | Broadcom Corporation | Voice and data exchange over a packet based network |
US7221660B1 (en) * | 2000-08-08 | 2007-05-22 | E.F. Johnson Company | System and method for multicast communications using real time transport protocol (RTP) |
US7133449B2 (en) * | 2000-09-18 | 2006-11-07 | Broadcom Corporation | Apparatus and method for conserving memory in a fine granularity scalability coding system |
US20020191625A1 (en) * | 2001-05-25 | 2002-12-19 | Patrick Kelly | Table-based correlation of base and enhancement layer frames |
WO2004010250A2 (en) * | 2002-07-18 | 2004-01-29 | Koninklijke Philips Electronics N.V. | Adaptive dropping of prioritized transmission packets |
CN1726719A (en) * | 2002-12-20 | 2006-01-25 | 皇家飞利浦电子股份有限公司 | Method and apparatus for handling layered media data |
US20050058150A1 (en) * | 2003-09-16 | 2005-03-17 | Boles Glenn M. | Method and apparatus for enhancing packet communication |
WO2005043178A2 (en) * | 2003-10-29 | 2005-05-12 | University Of Pittsburgh Of The Commonwealth System Of Higher Education | Optimizing packetization for minimal end-to-end delay in voip networks |
KR100662350B1 (en) * | 2004-08-23 | 2007-01-02 | 엘지전자 주식회사 | Apparatus and Method for Transmission Video |
US7573912B2 (en) * | 2005-02-22 | 2009-08-11 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschunng E.V. | Near-transparent or transparent multi-channel encoder/decoder scheme |
US8879857B2 (en) * | 2005-09-27 | 2014-11-04 | Qualcomm Incorporated | Redundant data encoding methods and device |
US8358704B2 (en) * | 2006-04-04 | 2013-01-22 | Qualcomm Incorporated | Frame level multimedia decoding with frame information table |
-
2007
- 2007-12-03 KR KR1020107014705A patent/KR20100096220A/en not_active Application Discontinuation
- 2007-12-03 WO PCT/EP2007/063202 patent/WO2009071115A1/en active Application Filing
- 2007-12-03 EP EP07847713A patent/EP2215797A1/en not_active Ceased
- 2007-12-03 US US12/746,076 patent/US8566108B2/en not_active Expired - Fee Related
- 2007-12-03 CN CN2007801020956A patent/CN101911634A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0624983A2 (en) * | 1993-05-13 | 1994-11-17 | RCA Thomson Licensing Corporation | Synchronization arrangement for a compressed video signal |
US20050036557A1 (en) * | 2003-08-13 | 2005-02-17 | Jeyendran Balakrishnan | Method and system for time synchronized forwarding of ancillary information in stream processed MPEG-2 systems streams |
WO2006102991A1 (en) * | 2005-03-30 | 2006-10-05 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Device and method for producing a data flow and for producing a multi-channel representation |
US20070002902A1 (en) * | 2005-06-30 | 2007-01-04 | Nokia Corporation | Audio and video synchronization |
EP1773072A1 (en) * | 2005-09-28 | 2007-04-11 | Avaya Technology Llc | Synchronization watermarking in multimedia streams |
Non-Patent Citations (4)
Title |
---|
ARI LAKANIEMI NOKIA: "RTP payload format for the ITU-T Embedded Variable Bit-Rate speech/audio codec; draft-lakaniemi-avt-rtp-evbr-00.txt", IETF STANDARD-WORKING-DRAFT, INTERNET ENGINEERING TASK FORCE, IETF, CH, 12 November 2007 (2007-11-12), XP015054230, ISSN: 0000-0004 * |
ARI LAKANIEMI YE-KUI WANG NOKIA: "RTP payload format for G.718 speech/audio; draft-lakaniemi-avt-rtp-ev br-02.txt", IETF STANDARD-WORKING-DRAFT, INTERNET ENGINEERING TASK FORCE, IETF, CH, no. 2, 14 July 2008 (2008-07-14), XP015056638, ISSN: 0000-0004 * |
ARI LAKANIEMI: "EV-VBR RTP payload format proposal overview", NOKIA, 3 December 2007 (2007-12-03), XP002498989 * |
C GUILLEMOT ET AL., RTP PAYLOAD FORMAT FOR MPEG-4 WITH SCALABLE AND FLEXIBLE ERROR RESILIENCY, 25 June 1999 (1999-06-25) |
Also Published As
Publication number | Publication date |
---|---|
EP2215797A1 (en) | 2010-08-11 |
CN101911634A (en) | 2010-12-08 |
US8566108B2 (en) | 2013-10-22 |
KR20100096220A (en) | 2010-09-01 |
US20100280832A1 (en) | 2010-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8566108B2 (en) | Synchronization of multiple real-time transport protocol sessions | |
EP2752845B1 (en) | Methods for encoding multi-channel audio signal | |
EP1990800B1 (en) | Scalable encoding device and scalable encoding method | |
EP2695162B1 (en) | Audio encoding method and system for generating a unified bitstream decodable by decoders implementing different decoding protocols | |
RU2408089C9 (en) | Decoding predictively coded data using buffer adaptation | |
EP1501227B1 (en) | Audio data code-conversion and transmission/reception | |
Hwang | Multimedia networking: From theory to practice | |
KR20090113894A (en) | Device and Method for transmitting a sequence of data packets and Decoder and Device for decoding a sequence of data packets | |
EP2359365B1 (en) | Apparatus and method for encoding at least one parameter associated with a signal source | |
JP4944250B2 (en) | System and method for providing AMR-WBDTX synchronization | |
CN101366082B (en) | Variable frame shifting code method, codec and wireless communication device | |
US8930197B2 (en) | Apparatus and method for encoding and reproduction of speech and audio signals | |
US7233893B2 (en) | Method and apparatus for transmitting wideband speech signals | |
JP4218456B2 (en) | Call device, call method, and call system | |
JP3977784B2 (en) | Real-time packet processing apparatus and method | |
US7929520B2 (en) | Method, system and apparatus for providing signal based packet loss concealment for memoryless codecs | |
JP2005045739A (en) | Apparatus, method and system for telephone conversation | |
TWI394398B (en) | Apparatus and method for transmitting a sequence of data packets and decoder and apparatus for decoding a sequence of data packets | |
Taleb et al. | G. 719: The first ITU-T standard for high-quality conversational fullband audio coding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200780102095.6 Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 07847713 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2007847713 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 4090/CHENP/2010 Country of ref document: IN |
|
ENP | Entry into the national phase |
Ref document number: 20107014705 Country of ref document: KR Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 12746076 Country of ref document: US |