Coder and method for coding a waveform as well as hybrid coder and corresponding method for generating a signal
The hybrid coder with zeroed LSB elimination techniques and joint lossy/lossless architecture addresses the inefficiencies of existing codecs, enabling near-lossless coding with reduced reconstruction error and improved resource utilization.
Patent Information
- Application Number
- PCT/EP2025/058533
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-04-02
- Filing Date
- 2025-03-27
- Publication Date
- 2025-10-09
AI Technical Summary
Existing digital waveform codecs fail to efficiently combine lossy and lossless coding, leading to parsing dependencies that hinder optimal use of computing resources, especially in hardware implementations.
A hybrid coder employing a zero coder and a lossy coder, utilizing zeroed LSB elimination techniques and joint lossy/lossless coding architecture, decouples parsing and decoding by using a common codebook for lossy and lossless modes, and employs prediction-residual trigonometric transformation and coefficient quantization.
Achieves near-lossless coding with reduced reconstruction error and avoids parsing dependencies, optimizing resource use in hardware implementations by separating bitstream parsing and decoding processes.
Smart Images

Figure EP2025058533_09102025_PF_FP_ABST
Abstract
Description
[0001] Coder and Method for coding a waveform as well as Hybrid coder and corresponding Method for generating a signal
[0002] Technical Field
[0003] Embodiments of an aspect 1 of the present invention relates to Coder having a lossy coder and a zero coder. Preferred Embodiments use a hybrid coder comprising the lossy coder. Further embodiments refer to a corresponding method.
[0004] Embodiments of an aspect 2 of the present invention relates to a hybrid coder having a signal generator or signal extractor and to corresponding method. In general aspect belong to Considerations for a Flexible Bitstream Syntax Design for Near-lossless Waveform Coding.
[0005] Background
[0006] Typical digital waveform codecs (coders / decoders), particularly those making use of blockwise predictions and residual trigonometric transforms, are specifically designed for either lossy (i. e., perceptual) or lossless (i. e., mathematically perfectly reconstructing) operation.
[0007] Prior Art and drawback
[0008] Basis and, thus, part of embodiments of the present invention is the analysis of the prior art.
[0009] Joint and, at the same time, efficient solution for both lossy and lossless waveform coding, along with the possibility of good near-lossless efficiency, has been neglected in prior art. Moreover, these codecs are often specified to avoid parsing dependencies, such that the writing and reading of data bits in a bitstream generated according to the given codec specification does not, when it comes to a certain number of bits written / read, depend on decisions made based on bits read in a previous part of the bitstream. In other words, the bitstream parsing and decoding can be completely separated, which is a desirable feature especially in hardware implementations since it allows to make optimal use of the (generally limited) computing resources. Conditioning parts of the codec syntax on values decoded from a bitstream would require decoding during parsing. Objective and Summary
[0010] Therefore, it is an objective of the present invention to find concepts overcoming the drawbacks of the Prior Art.
[0011] This objective is solved by the subject matter of the independent claims according to aspect 1 and aspect 2. Particular embodiments are provided in the dependent claims.
[0012] Aspect 1
[0013] An embodiment provides a coder for coding a waveform signal, comprising a zero coder and a lossy coder. The zero coder is configured to code the waveform signal using zeroed LSB elimination technique; the lossy coder configured to perform lossy transform coding of a derivative of the waveform signal.
[0014] According to an embodiment, the lossy coder is part of a hybrid coder configured jointly lossy transform coding and lossless coding of the signal. As noted, the prior-art concept of “zeroed LSB” may be used in many lossless codecs but, to the authors’ knowledge, has not been combined with lossy coding techniques, especially not in a block hybrid transform coding architecture employing prediction-residual trigonometric transformation and coefficient quantization.
[0015] According to an embodiment, the coder may be used at the encoder side wherein the zero coder is configured to obtain a derivative of the waveform signal and wherein the lossy coder is configured to code the derivative to obtain a coded waveform signal.
[0016] According to another embodiment, the coder may be used at the decoder side wherein the lossy coder is configured to decode the derivative of the waveform signal received as input to obtain a decoded waveform signal and wherein the zero coder is configured to further decode the decoded waveform signal to obtain the waveform signal.
[0017] According to an embodiment, the lossy coder is based on a transform coding architecture employing prediction-residual trigonometric transformation and coefficient quantization. According to an embodiment, a near-lossless coding mode (where, for example, the reconstruction error due to the coding process is very small e. g., only one LSB at most) is used by the lossy coder.
[0018] According to an embodiment, the zero coder when performing the zeroed LSB elimination technique is configured to perform integer division of a predictor sample signal (at both the encoder and decoder side) to obtain a first integer division result; alternatively zero coder when performing the zeroed LSB elimination technique is configured to perform integer division of a predictor sample signal using binary right shifting at both the encoder and decoder side to obtain a first integer division result.
[0019] According to an embodiment, the zero coder when performing the zeroed LSB elimination technique is configured to perform - at the encoder side - corresponding integer division of a waveform signal; alternatively the zero coder when performing the zeroed LSB elimination technique is configured to perform - at the encoder side - corresponding integer division of a waveform signal before subtracting a word-length reduced predictor sample signal from first integer division result.
[0020] According to an embodiment, the zero coder when performing the zeroed LSB elimination technique is configured to apply - at the decoder side - corresponding integer multiplication of the (e.g. reconstructed) waveform signal to be output; alternatively zero coder when performing the zeroed LSB elimination technique is configured to apply - at the decoder side - corresponding integer multiplication of a (e.g., reconstructed) waveform signal to be output using binary left shifting; alternately the zero coder when performing the zeroed LSB elimination technique is configured to apply - at the decoder side - corresponding integer multiplication of the (e.g. reconstructed) waveform signal to be output using binary left shifting after adding a word-length reduced predictor sample signal from the first integer division result.
[0021] According to an embodiment, said integer division result is applied at the encoder side and / or the decoder side to predictor sample signal; alternatively, said integer division result is applied at the encoder side and / or the decoder side to the predictor sample signal after subtraction of said predictor sample signal.
[0022] According to an embodiment, the waveform signal is coded and / or transform coded per-block or per-sample. According to an embodiment, at the decoder side the encoder outputs the waveform signal partitioned and entropy coded with a reduced sample value range.
[0023] According to an embodiment, the hybrid coder is configured to employ prediction-residual trigonometric transformation and coefficient quantization.
[0024] According to an embodiment, the hybrid coder uses codec parameters comprising a quantization parameter or equivalent parameter (signaled as part of a bitstream) indicating for each block or frame or channel whether said block or frame or channel is coded losslessly (e.g. without residual sample quantization) or in a lossy form (e.g. with quantization).
[0025] According to an embodiment, the hybrid coder uses codec parameters for the lossless coding, the codec parameters comprising an absolute or relative information on a divisor for the integer division of the predictor sample signal and / or an absolute or relative information on a number of LSBs to binary-shift used for the zeroed LSB elimination.
[0026] According to an embodiment, the hybrid coder uses codec parameters for the lossy coding, the codec parameters comprising an information on a transform type used at the encoder side or to be used at the decoder side.
[0027] Further embodiments provide a decoder or encoder using the coder as discussed above.
[0028] An embodiment provides a method for coding a waveform signal, comprising:
[0029] • coding the waveform signal using zeroed LSB elimination technique; and
[0030] • lossy transform coding of a derivative of the waveform signal.
[0031] Aspect 2
[0032] An embodiment provides a hybrid coder configured for lossy coding a signal and lossless coding of the signal, comprising a signal generator. The signal generator is configured to output the signal comprising codec parameters comprising information concerning the lossy transform coding and information concerning the lossless coding, wherein for the information concerning the lossy transform coding and information concerning the lossless coding the same codebook is used. Note the hybrid coder may be a coder, like an encoder.
[0033] According to an embodiment, the codec parameters comprise an indication whether lossy transform coding or lossless coding is used for the signal.
[0034] According to an embodiment, the indication whether lossy transform coding or lossless coding is used is included in a quantization parameter QP. Note, according to embodiments QP = 0 or QP < 0 may indicate lossless coding, whereas QP > 0 may imply lossy coding. Of course, another threshold may be used es well.
[0035] According to an embodiment, the codec parameters comprise an codec parameter indicative of a transform type index used at the encoder side or to be used at the decoder side and / or wherein the codec parameters comprise an absolute or relative information on a divisor for the integer division of the predictor sample signal and / or an absolute or relative information on a number of LSBs to binary-shift used for the zeroed LSB elimination.
[0036] According to an embodiment, the codebook is based on a variable-length Huffman or Rice or Golomb codeword.
[0037] An embodiment provides a hybrid coder configured for lossy coding a signal and lossless coding of the signal, comprising signal extractor. The signal extractor is configured to extract from the signal a codec parameters comprising information concerning the lossy transform coding or information concerning the lossless coding; wherein for the information concerning the lossy transform coding and information concerning the lossless coding the same codebook is used, wherein the extractor interprets the information dependent on indication whether lossy transform coding or lossless coding is used for the signal. Here, the hybrid coder may be a coder, like a decoder.
[0038] According to an embodiment, the codebook is based on a variable-length Huffman or Rice or Golomb codeword.
[0039] According to an embodiment, the extractor is configured to read the codec parameters into a temporary joint syntax element; alternatively, the extractor is configured to read the codec parameters into a temporary joint syntax element, wherein the interpretation of this syntax element based on the indication is postponed to the decoding process. Another embodiment provides a data stream signal including content lossy coded or lossless coded and comprising codec parameters comprising information concerning the lossy transform coding and information concerning the lossless coding; wherein for the information concerning the lossy transform coding and information concerning the lossless coding the same codebook is used.
[0040] Another embodiment provides a method for generating a signal including content lossy coded or lossless coded, comprising:
[0041] • outputting the signal comprising codec parameters comprising information concerning the lossy transform coding and information concerning the lossless coding;
[0042] • wherein for the information concerning the lossy transform coding and information concerning the lossless coding the same codebook is used.
[0043] Another embodiment provides a method for extracting codec parameters from a signal including content lossy coded or lossless coded, comprising:
[0044] • extracting from the signal codec parameters comprising information concerning the lossy transform coding or information concerning the lossless coding; wherein for the information concerning the lossy transform coding and information concerning the lossless coding the same codebook is used;
[0045] • interpreting the information dependent on indication whether lossy transform coding or lossless coding is used for the signal.
[0046] According to embodiments, all above mentioned methods may be computer-implemented. Thus, embodiments provide a computer program for performing, when running on a computer, one of the above methods.
[0047] Brief description of the figures
[0048] In the following, embodiments of the present invention are described in more detail with reference to the figures, in which: Fig. 1 shows a schematic block diagram of an encoder (general coder) for encoding a waveform signal according to an embodiment of aspect 1 .
[0049] Fig. 2 shows a schematic block diagram of decoder (general coder) for decoding a waveform signal according to an embodiment of aspect 1 .
[0050] Fig. 3 shows a schematic block diagram of a hybrid coder for lossy or lossless coding according to an embodiment of aspect 2.
[0051] Fig. 4 illustrates schematically a proposed bitstream syntax according to embodiments.
[0052] Detailed description of the embodiments
[0053] In the following, solutions for both aspects mentioned above, good near-lossless performance as well as avoidance of parsing dependencies in the bitstream syntax design by decoupling parsing and decoding, are described. The first is based on a "wasted bits" elimination method used in many lossless codecs, herein employed and correspondingly adjusted in a joint lossy / lossless operational design. The second solution is based on a common code book being utilized in the writing and reading of mutually exclusive bitstream elements being dependent on the value of a lossy / lossless indication. Said lossy / lossless indication is, preferably, a quantization parameter.
[0054] Aspect 1 - Near-lossless Improvements
[0055] Fig. 1 illustrates an apparatus 10, here an encoder or in general coder for generating a data stream DS from original waveform signal WS according to an embodiment.
[0056] The entity 10 comprises the zero coder 12 and the lossy coder 14. The zero coder 12 is configured to encode the waveform signal WS using zeroed LSB elimination technique. The lossy coder 14 is configured to perform lossy transform coding of a derivative of the waveform signal, here of the waveform signal preprocessed by the zero coder 12 using LSB elimination technique.
[0057] It is proposed to employ the “wasted bits” coding feature, also sometimes referred to as “zeroed LSB” tool (LSB: least significant bits), lossy codec architecture or - according to preferred embodiments - in a joint lossy / lossless codec architecture and, in particular, a near-lossless coding mode where the reconstruction error due to the coding process is very small (e. g., only one LSB at most). Thus. The lossy coder 14 may be part of a hybrid coder configured for lossy and lossless coding.
[0058] Fig. 2 illustrates an apparatus 20, here an decoder or in general coder for obtaining a waveform signal WS’ from tsaid data stream DS according to an embodiment.
[0059] The entity 20 comprises the zero decoder 22 and the lossy decoder 24. The lossy decoder 24 may receive the data stream DS (decoded waveform signal WS, i.e. a derivative of the waveform signal WS) and performs decoding to obtain an interim signal. This interim signal is than further processed / decoded by the zero decoder 22 so as to obtain the waveform signal WS’. Alternatively, the order of the two entity may jointly perform the decoding of DS e.g. in parallel, so as to obtain WS’. Note entity 22 performs zeroed LSB” elimination technique as will be discussed below.
[0060] The basic concept of the “zeroed LSB” elimination technique performed by the zero coder 12 / 22 (at decoder and encoder side) is to 1) perform integer division of the per-block or persample predictor sample signal, e. g. using binary right shifting, at both the encoder and decoder side, 2) perform corresponding integer division of the per-block or per-sample input waveform signal at the encoder before subtracting the word-length reduced predictor sample signal from 1) and 3) apply corresponding integer multiplication of the per-block or per-sample output (i. e., reconstructed) waveform signal, e. g. using binary left shifting, at the decoder after adding above word-length reduced predictor sample signal from 1). This is done for each block or frame and each channel, and the decoder-side integer multiplication perfectly inverts / reverts the integer division process.
[0061] In other words, the same division, or word-length reduction, is applied to the predictor signal in encoder step 2) and decoder step 3) and the prediction residual sample signal, after subtraction of said word-length reduced prediction signal samples, is partitioned and entropy coded with a reduced sample value range as well. In doing so, lossless compression of, e. g., waveform input where a certain number of LSBs all equal zero in at least some blocks of the signal, is improved.
[0062] Referring to the embodiment of Fig 2 it should be noted that 24 may again (cf. hybrid coder for 14) be part of a hybrid coder for lossy and lossless coding according to a further embodiment.
[0063] According to embodiments the proposed solution is, therefore, to combine “zeroed-LSB coding”, as described above, in a manner which is mutually exclusive with the lossy transform coding coding path, i. e.: 1 . A quantization parameter QP, or some other equivalent parameter signalled as part of a bitstream, indicates for each block or frame or channel whether said block or frame or channel is coded losslessly (i. e., without residual sample quantization) or in a lossy form (i. e., with quantization according to the QP or equivalent). Preferably, the indication may be derived by comparing the QP or equivalent value to a known losslessness value; e. g., QP = 0 or QP < 0 may indicate lossless coding, whereas QP > 0 may imply lossy coding.
[0064] 2. Lossless case. When the QP or its equivalent indicates lossless coding, no quantization is being performend and no trigonometric transform mode is being signalled since typical transforms such as a DCT or DST are, by design, not perfectly reconstructing. Instead of said transform mode for the given block or frame or channel, the divisor used in 1. or, as a subset of this information requiring fewer side-information bits, the number of LSBs to binary-shift, is signalled in the bitstream for the block or frame or channel. Preferably, to further save side-information rate, this “wasted bits” information divisor or LSB count) is signalled block- or frame- differentially in each channel, i. e., as a difference - often called delta - to the respective value associated with the previous block or frame in the channel. Further, the transform mode may be inferred to equal a default, i. e., “identity transform”.
[0065] 3. Lossy case. When the QP or its equivalent indicates lossy coding, quantization is applied and, potentially, the prediction-residual sample values being quantized are the results of a trigonometric transformation, i. e., residual spectral coefficients. Hence, it is necessary to signal, preferably as an index into a list of available transforms (possibly including the identity transform as a special case), for a given block or frame or channel the transform type employed for said block or frame or channel in the encoder so that the appropriate and corresponding inverse transform can be applied in each decoder. Since for the lossy coding case, no “wasted bits” information must be signalled (the QP or quantization step size derived therefrom represents a similar type of information), the transform mode can be signalled Instead of the delta-coded divisor or LSB count information. Optionally, like the latter data, the transform mode index is signalled block- or frame-differentially per channel, as a delta to the transform index used in the channel’s previous block or frame. Finally, the divisor respect. LSB count may be inferred to equal a default, i. e., 1 respect. 0.
[0066] It should be noted, that the signalling of the coding parameters, e.g. included in DS may be designed so that lossy and lossless coding use the same parameters / codebook. The interpretation of the codebook may be different in the lossy case or the lossless case. This embodiment will be discussed with respect to Fig. 3.
[0067] Further embodiments enable RD Optimization of Encoding Process. Note that a decoder implemented according to the above “wasted bits” enhanced proposal can not know whether a signal block or frame has been encoded fully without a loss (i. e., distortion- free) in the lossless mode when the block or frame QP equals zero but the LSB count does not equal zero. The reason is that the encoder may have - accidentally or deliberately - set some of the LSBs of said block or frame signal to zero in a given channel (thereby introducing a coding distortion) and further signalled the block’s / frame’s LSB count accordingly in that channel. This peculiarity can be exploited in a way that allows the “QP 0 + LSB count > 0” mode to be used for lossy coding of said signal even though it was designed for lossless cases, preferably as follows:
[0068] 1 . The encoder quantizes and encodes a channel block or frame with QP > 0, e. g., QP = 1 , and calculates some “reference” rate-distortion (RD) cost for this lossy coding candidate. The encoding in this case may or may not include trigonometric residual transformation.
[0069] 2. The encoder divides the channel block or frame signal by a value greater than 1 , e. g., by two, or alternatively binary right shifts the channel block or frame signal by more than 0, e. g., by 1 bit. Then, encoding is performed without quantization, by setting QP = 0, and an associated “alternative” RD cost for this lossless+LSB zeroing candidate is calculated.
[0070] 3. The encoder then chooses, from the two candidates of 1. and 2., the one with the lowest RD cost to be used for actual encoding and for encoded-data writing into the bitstream. Note that additional candidates may be evaluated as part of this operation, e. g., at least one even more lossy case with QP > 1 or with QP = 0 and LSB count > 1 (or equivalently, divisor > 2, as noted above), or the entirely lossless case using QP = 0 and LSB count = 0.
[0071] Of course, in step 2. above, the employed divisor respect. LSB count is signalled in the bitstream so as to allow recovery of the original value range of the input samples in the decoding process.
[0072] Aspect 2 - Robust Parameter Signalling
[0073] Fig. 3 shows an entity 30 comprising a coder 32 and a signal generator 34g or signal extractor 34e. The coder 32 may be a decoder 20, as discussed in context of Fig. 2 or an encoder 10 as discussed in context of Fig. 1 , wherein it may be configured for hybrid coding, i.e. for lossy and lossless coding. A selection between the two codecs may be done. This means in other words that the coder 32 may be a hybrid coder wherein a selection between the lossy case and the lossless case may be done. Typically codec parameters are transferred in parallel to the data stream DS or as part of the data stream DS.
[0074] To prevent parsing dependencies in the entropy coding and / or decoding of the transform type index and, mutually exclusively, the divisor or zero-LSB count, it is proposed to employ the same codebook in the signalling of said two classes of codec parameters.
[0075] Express other words this means that the signal extractor 34e at decoder side is configured to extract / interpret parameters included in the data stream DS differently depending on the selection of lossy or lossless decoding. For the encoder side this means that the signal generator 34g generates a signal including the codec parameters from the lossless or lossy coder 32, wherein same codebook in the signalling of said two classes of codec parameters (lossy case and lossless case) is used. However, since the codec parameters for the two cases are different a dependency to the selection of the codec is given.
[0076] For example, let us assume that five different trigonometric transform types may be used in a channel block or frame: DCT type II, DST type II (or VII), signal adaptive DCT-II (e. g., using deblocking), signal adaptive DST-II (or VII, e. g., using deblocking), and no transform (i. e., the identity transform). The choice of one of these five types of transforms may be - and is preferably-signalled by, e. g., a variable-length Huffman or Rice or Golomb codeword of length 1 or 3 bits (e. g., 0 or 100 or 101 or 1 10 or 11 1 in binary notation).
[0077] To continue the above example, let us define an equal number of allowed delta- divisor or delta- LSB-count values: -2, -1 , 0, 1 , and 2. The proposal is to employ for signalling of one of these five deltas the same codewords as are used for signalling of the differentially coded transform type, e. g., a Huffman or Rice or Golomb codeword of length 1 or 3 bit (0 or 100 or 101 or 110 or 11 1 in binary notation).
[0078] In doing so, a transmission error in a preceding block or frame, causing an error in the delta- QP decoding and, as a result, an incorrect “lossy or lossless” decision (QP > 0 or not) in the current block or frame, will not affect ho w said mutually exclusive codec parameters transform type or “wasted bits” information) are being read. Basically, the differentially and variablelength coded lossy or lossless parameter can be read into a temporary joint syntax element, and the interpretation of this syntax element based on the QP value can be postponed to the decoding process.
[0079] This possibility of postponing can also be beneficial in hardware implementations of the codec, since a bitstream parsing routine, which may be realized completely separately from a decoding routine in order to allow for maximum speed and power efficiency, does not have to perform an interpretation of the delta-coded QP information during the parsing (which would require a call to at least a subset of the decoding routine, which in hardware can be a resource intensive task).
[0080] Fig. 4 depicts a particular embodiment of the proposed bitstream syntax described herein. In syntax definition table 7, block_pred_mode and sample_pred_mode signal the block-wise and sample-wise block or frame prediction modes from which the prediction residual signal results. block_delta_qp signals the coded QP delta, yielding the block or frame QP in curr block qp. As discussed in aspect 1, a curr block qp of 0 indicates the lossless mode, in which case LSB count is delta-signalled by way of block_delta_zlsb (yielding curr_zlsb_count). A curr block qp greater than zero (the “else” path), on the other hand, indicates usage of the lossy mode, in which case transform type is delta-signalled by way of block_delta_tidx (yielding curr_trafo_type). Variable-length coding of these and other syntax elements is indicated by the cw (for “codeword”) prefix.
[0081] General Informational Comments
[0082] To conclude this document, it is noted that the default parameter values noted in the three- step procedure of aspect 1 serve - according to embodiments - to allow for delta-coding between successive blocks with different lossy / lossless modes, i. e., between channel blocks or frames coded according to step 2. making use of delta coding in the transmission of the “wasted bits” information and, in direct temporal neighborhood, channel blocks or frames coded according to step 3., employing delta coding of the transform mode information. Moreover, it is noted that differential coding of the transform type parameter may be considered optional since, as discussed, the list of allowed trigonometric transforms is usually quite short and thus, even non-differential signalling requires only few bits. Finally, to the authors’ knowledge, neither the delta coding of the divisor or LSB count data, nor the delta coding of the transform type (index) in respective codecs has been laid out in prior art.
[0083] Although some aspects have been described in the context of an apparatus, it is clear that these aspects also represent a description of the corresponding method, where a block or device corresponds to a method step or a feature of a method step. Analogously, aspects described in the context of a method step also represent a description of a corresponding block or item or feature of a corresponding apparatus. Some or all of the method steps may be executed by (or using) a hardware apparatus, like for example, a microprocessor, a programmable computer or an electronic circuit. In some embodiments, some one or more of the most important method steps may be executed by such an apparatus. The inventive encoded audio signal can be stored on a digital storage medium or can be transmitted on a transmission medium such as a wireless transmission medium or a wired transmission medium such as the Internet.
[0084] Depending on certain implementation requirements, embodiments of the invention can be implemented in hardware or in software. The implementation can be performed using a digital storage medium, for example a floppy disk, a DVD, a Blu-Ray, a CD, a ROM, a PROM, an EPROM, an EEPROM or a FLASH memory, having electronically readable control signals stored thereon, which cooperate (or are capable of cooperating) with a programmable computer system such that the respective method is performed. Therefore, the digital storage medium may be computer readable.
[0085] Some embodiments according to the invention comprise a data carrier having electronically readable control signals, which are capable of cooperating with a programmable computer system, such that one of the methods described herein is performed.
[0086] Generally, embodiments of the present invention can be implemented as a computer program product with a program code, the program code being operative for performing one of the methods when the computer program product runs on a computer. The program code may for example be stored on a machine readable carrier.
[0087] Other embodiments comprise the computer program for performing one of the methods described herein, stored on a machine readable carrier.
[0088] In other words, an embodiment of the inventive method is, therefore, a computer program having a program code for performing one of the methods described herein, when the computer program runs on a computer.
[0089] A further embodiment of the inventive methods is, therefore, a data carrier (or a digital storage medium, or a computer-readable medium) comprising, recorded thereon, the computer program for performing one of the methods described herein. The data carrier, the digital storage medium or the recorded medium are typically tangible and / or non-transitionary.
[0090] A further embodiment of the inventive method is, therefore, a data stream or a sequence of signals representing the computer program for performing one of the methods described herein. The data stream or the sequence of signals may for example be configured to be transferred via a data communication connection, for example via the Internet. A further embodiment comprises a processing means, for example a computer, or a programmable logic device, configured to or adapted to perform one of the methods described herein.
[0091] A further embodiment comprises a computer having installed thereon the computer program for performing one of the methods described herein.
[0092] A further embodiment according to the invention comprises an apparatus or a system configured to transfer (for example, electronically or optically) a computer program for performing one of the methods described herein to a receiver. The receiver may, for example, be a computer, a mobile device, a memory device or the like. The apparatus or system may, for example, comprise a file server for transferring the computer program to the receiver .
[0093] In some embodiments, a programmable logic device (for example a field programmable gate array) may be used to perform some or all of the functionalities of the methods described herein. In some embodiments, a field programmable gate array may cooperate with a microprocessor in order to perform one of the methods described herein. Generally, the methods are preferably performed by any hardware apparatus.
[0094] The above described embodiments are merely illustrative for the principles of the present invention. It is understood that modifications and variations of the arrangements and the details described herein will be apparent to others skilled in the art. It is the intent, therefore, to be limited only by the scope of the impending patent claims and not by the specific details presented by way of description and explanation of the embodiments herein.
[0095] References
[0096] The “wasted bits” elimination technique in lossless coding was, to the authors’ knowledge, first described and published as part of the Free Lossless Audio Codec (FLAC) in the early 2000s and is documented at https: / / xiDh.Org / flac / format.html#subframe header as well as through the IETF.
Claims
Claims1 . Coder (10, 20) for coding a waveform signal (WS), comprising: a zero coder (12, 22) configured to code the waveform signal (WS) using zeroed LSB elimination technique; and a lossy coder (14, 24) configured to perform lossy transform coding of a derivative of the waveform signal (WS).
2. Coder (10, 20) according to claim 1 , the coder being used at the encoder side wherein the zero coder (12, 22) is configured to obtain a derivative of the waveform signal (WS) and wherein the lossy coder (14, 24) is configured to code the derivative to obtain a coded waveform signal (WS).
3. Coder (10, 20) according to claim 1 , the coder being used at the decoder side wherein the lossy coder (14, 24) is configured to decode the derivative of the waveform signal (WS) received as input to obtain a decoded waveform signal (WS) and wherein the zero coder (12, 22) is configured to further decode the decoded waveform signal (WS) to obtain the waveform signal (WS).
4. Coder (10, 20) according to one of the previous claims, wherein the lossy coder (14, 24) is based on a transform coding architecture employing prediction-residual trigonometric transformation and coefficient quantization.
5. Coder (10, 20) according to one of the previous claims, wherein the lossy coder (14, 24) is part of a hybrid coder configured for jointly lossy transform coding and lossless coding of the signal.
6. Coder (10, 20) according to one of the previous claims, wherein a near-lossless coding mode (where, for example, the reconstruction error due to the coding process is very small e. g., only one LSB at most) is used by the lossy coder (14, 24).
7. Coder (10, 20) according to one of the previous claims, wherein zero coder (12, 22) when performing the zeroed LSB elimination technique is configured to perform integer division of a predictor sample signal (at both the encoder and decoder side) to obtain a first integer division result; or wherein zero coder (12, 22) when performing the zeroed LSB elimination technique is configured to perform integer division of a predictor sample signal using binary right shifting at both the encoder and decoder side to obtain a first integer division result.
8. Coder (10, 20) according to claim 7, wherein zero coder (12, 22) when performing the zeroed LSB elimination technique is configured to perform - at the encoder side - corresponding integer division of a waveform signal (WS); or wherein zero coder (12, 22) when performing the zeroed LSB elimination technique is configured to perform - at the encoder side - corresponding integer division of a waveform signal (WS) before subtracting a word-length reduced predictor sample signal from first integer division result.
9. Coder (10, 20) according to claim 7 or 8, wherein zero coder (12, 22) when performing the zeroed LSB elimination technique is configured to apply - at the decoder side - corresponding integer multiplication of the (e.g. reconstructed) waveform signal (WS) to be output; or wherein zero coder (12, 22) when performing the zeroed LSB elimination technique is configured to apply - at the decoder side - corresponding integer multiplication of a (e.g., reconstructed) waveform signal (WS) to be output using binary left shifting; or wherein zero coder (12, 22) when performing the zeroed LSB elimination technique is configured to apply - at the decoder side - corresponding integer multiplication of the (e.g. reconstructed) waveform signal (WS) to be output using binary left shifting afteradding a word-length reduced predictor sample signal from the first integer division result.
10. Coder (10, 20) according to claim 7, 8 or 9, wherein said integer division result is applied at the encoder side and / or the decoder side to predictor sample signal; or wherein said integer division result is applied at the encoder side and / or the decoder side to the predictor sample signal after subtraction of said predictor sample signal.11 . Coder (10, 20) according to one of the previous claims, wherein the waveform signal (WS) is coded and / or transform coded per-block or per-sample.
12. Coder (10, 20) according to one of the previous claims, wherein at the decoder side the encoder outputs the waveform signal (WS) partitioned and entropy coded with a reduced sample value range.
13. Coder (10, 20) according to one of the claims 5 to 12, wherein the hybrid coder is configured to employ prediction-residual trigonometric transformation and coefficient quantization.
14. Coder (10, 20) according to one of the claims 5 to 13, wherein the hybrid coder uses codec parameters comprising a quantization parameter or equivalent parameter (signaled as part of a bitstream) indicating for each block or frame or channel whether said block or frame or channel is coded losslessly (e.g. without residual sample quantization) or in a lossy form (e.g. with quantization).
15. Coder (10, 20) according to one of the claims 5 to 14, wherein the hybrid coder uses codec parameters for the lossless coding, the codec parameters comprising an absolute or relative information on a divisor for the integer division of the predictor sample signal and / or an absolute or relative information on a number of LSBs to binaryshift used for the zeroed LSB elimination.
16. Coder (10, 20) according to one of the claims 5 to 15, wherein the hybrid coder uses codec parameters for the lossy coding, the codec parameters comprising an information on a transform type used at the encoder side or to be used at the decoder side.
17. Decoder or encoder using the coder (10, 20) according to one of the previous claims.
18. Hybrid coder (30) configured for lossy coding a signal (DS) and lossless coding of the signal (DS), comprising: signal generator (34g) configured to output the signal (DS) comprising codec parameters comprising information concerning the lossy transform coding and information concerning the lossless coding; wherein for the information concerning the lossy transform coding and information concerning the lossless coding the same codebook is used.
19. Hybrid coder (30) according to claim 18, wherein the codec parameters comprise an indication whether lossy transform coding or lossless coding is used for the signal.
20. Hybrid coder (30) according to claim 19, wherein indication whether lossy transform coding or lossless coding is used is included in a quantization parameter QP.21 . Hybrid coder (30) according to claim 20, wherein a quantization parameter QP larger than a threshold, e.g. QP > 0 indicates the lossy transform coding and / or wherein a quantization parameter QP equal or smaller to the threshold, e.g. QP = 0 or QP < 0 indicates a lossless coding.
22. Hybrid coder (30) according to one of claims 18 to 21 , wherein the codec parameters comprise an codec parameter indicative of a transform type n e used at the encoder side or to be used at the decoder side and / or wherein the codec parameters comprise an absolute or relative information on a divisor for the integer division of the predictor sample signal and / or an absolute or relative information on a number of LSBs to binaryshift used for the zeroed LSB elimination.
23. Hybrid coder according to one of claims 18 to 22, wherein the codebook is based on a variable-length Huffman or Rice or Golomb codeword.
24. Hybrid coder (30) configured for lossy coding a signal and lossless coding of the signal, comprising: signal extractor (32e) is configured to extract from the signal (DS) a codec parameters comprising information concerning the lossy transform coding or information concerning the lossless coding; wherein for the information concerning the lossy transform coding and information concerning the lossless coding the same codebook is used; wherein the signal extractor (32e) interprets the information dependent on indication whether lossy transform coding or lossless coding is used for the signal.
25. Hybrid coder (30) according to claim 24, wherein the codebook is based on a variablelength Huffman or Rice or Golomb codeword.
26. Hybrid coder (30) according to claim 24 or 25, wherein the extractor is configured to read the codec parameters into a temporary joint syntax element; or wherein the signal extractor (32e) is configured to read the codec parameters into a temporary joint syntax element, wherein the interpretation of this syntax element based on the indication is postponed to the decoding process.
27. Method for coding a waveform signal (WS), comprising: coding the waveform signal (WS) using zeroed LSB elimination technique; and lossy transform coding of a derivative of the waveform signal (WS).
28. Method for generating a signal including content lossy coded or lossless coded, comprising: outputting the signal comprising codec parameters comprising information concerning the lossy transform coding and information concerning the lossless coding; wherein for the information concerning the lossy transform coding and information concerning the lossless coding the same codebook is used.
29. Method for extracting codec parameters from a signal including content lossy coded or lossless coded, comprising: extracting from the signal codec parameters comprising information concerning the lossy transform coding or information concerning the lossless coding; wherein for the information concerning the lossy transform coding and information concerning the lossless coding the same codebook is used; interpreting the information dependent on indication whether lossy transform coding or lossless coding is used for the signal.
30. Computer program for performing, when running on a computer, the method according to claim 28 or 29.31 . Data stream signal including content lossy coded or lossless coded and comprising codec parameters comprising information concerning the lossy transform coding and information concerning the lossless coding;wherein for the information concerning the lossy transform coding and information concerning the lossless coding the same codebook is used.