Methods, devices and bitstreams for providing core coder side information for a core coder
The method optimizes core coder bitstreams by determining frame lengths based on core coder data, addressing bit-rate efficiency and frame extraction challenges, ensuring efficient encoding and decoding of waveform signals.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- DOLBY LABORATORIES LICENSING CORP
- Filing Date
- 2025-12-01
- Publication Date
- 2026-06-11
AI Technical Summary
Existing technologies face challenges in providing bit-rate efficient and flexible syntax for core coder bitstreams, particularly in encoding and decoding waveform signals to reduce storage requirements and transmission bandwidth while enabling efficient extraction of individual frames without full decoding.
A method and device for determining the field length of an identifier field in a core coder bitstream, which includes calculating the length of encoded frames based on core coder data, such as the number of channels and samples, and incorporating deviation ranges to optimize bit-rate efficiency and frame identification.
Enables efficient encoding and decoding of waveform signals with reduced storage and transmission requirements, allowing for flexible frame extraction and annotation, while maintaining interoperability and standardization for biomedical waveform data.
Smart Images

Figure US2025057476_11062026_PF_FP_ABST
Abstract
Description
[0001] METHODS, DEVICES AND BITSTREAMS FOR PROVIDING CORE CODER SIDE INFORMATION FOR A CORE CODER
[0002] CROSS-REFERENCE TO RELATED APPLICATIONS This application claims the benefit of priority from European Patent Application No. 25185101.0 filed June 25, 2025, U.S. Provisional Patent Application No. 63 / 824.986 filed June 17, 2025, and U.S. Provisional Patent Application No. 63 / 726,827 filed December 2, 2024, each of which is incorporated by reference herein in its entirety. TECHNICAL FIELD
[0003] The present document relates to a method and a device for generating a packetized bitstream that comprises a core coder bitstream along with side information with regards to the core coder. BACKGROUND
[0004] Utility signals with waveform characteristics are prevalent in various domains, such as biomedical, industrial, and / or communication systems. These waveform signals are typically continuous functions that vary over time, representing physical phenomena or measurements. For instance, in biomedical engineering, waveform signals such as electrocardiograms (ECG), electroencephalograms (EEG), and / or electromyograms (EMG) may be used for diagnosing and / or monitoring physiological conditions. These biomedical signals exhibit waveform patterns that correspond to the electrical activity7of the heart, brain, and / or muscles, respectively. The shape, amplitude, and / or frequency of these waveform signals provide information about the health and functioning of various body systems.
[0005] Analysis and interpretation of waveform signals are used for applications such as medical diagnostics, process control, and / or telecommunications. For example, anomalies in a biomedical waveform signal may indicate the presence of a disorder, while variations in an industrial sensor waveform signal may indicate a mechanical failure.
[0006] Waveform signals may be stored in a storage device and / or transmitted over a communication link. In order to reduce the storage requirements and / or the transmission bandwidth, the waveform signals may be encoded using a core encoder. A set of correlated waveform signals (e.g., waveform signals that have been captured by different sensors within the same measurement period) may be encoded jointly. The core encoder may be configured to perform a lossy or a lossless encoding of the set of waveform signals. As a result of the encoding of the set of waveform signals, a core coder bitstream is provided.
[0007] Metadata may be added to the core coder bitstream, in order to provide additional information regarding the set of waveform signals. The metadata may comprise core coder side information which enables a decoder to identify individual frames within the encoded set of waveform signals, without the need of decoding the complete core coder bitstream.
[0008] The present document addresses the technical problem of providing bit-rate efficient core coder side information for a core coder bitstream. Furthermore, the present document addresses the technical problem of providing a bit-rate efficient and flexible syntax for a core coder bitstream. The technical problem is solved by each one of the independent claims. Preferred examples are described in the dependent claims.
[0009] SUMMARY
[0010] According to an aspect, a method of determining the field length of an identifier field for an encoded frame of a core coder bitstream is described. The identifier field may be used for indicating a length of the encoded frame. The method comprises determining core coder data regarding the core coder bitstream from the core coder bitstream, wherein the core coder bitstream comprises a sequence of encoded frames for a corresponding sequence of frames of a set of waveform signals. Furthermore, the method comprises determining the field length of an identifier field for an encoded frame of the core coder bitstream based on the core coder data.
[0011] According to another aspect, a method of determining the field length of an identifier field for an encoded frame of a core coder bitstream is described. The identifier field may be used for indicating a length of the encoded frame. The core coder bitstream comprises a sequence of encoded frames for a corresponding sequence of frames of a set of waveform signals. The method comprises determining a reference length of an encoded frame of the core coder bitstream, and determining a deviation range for a deviation of the length of a particular encoded frame of the core coder bitstream from the reference length. Furthermore, the method comprises determining the field length of the identifier field for the particular encoded frame of the core coder bitstream based on the deviation range.
[0012] According to a further aspect, a method of determining the length (notably the number of bits) of an encoded frame of a core coder bitstream is described, wherein the core coder bitstream comprises a sequence of encoded frames for a corresponding sequence of frames of a set of waveform signals. The method comprises determining a reference length for a particular encoded frame of the core coder bitstream, and determining the deviation of the actual length of the particular encoded frame from the reference length. Furthermore, the method comprises determining the actual length of the particular encoded frame based on the deviation and based on the reference length.
[0013] According to another aspect, a device for determining the field length of an identifier field for an encoded frame of a core coder bitstream is described. The device is configured to determine core coder data regarding the core coder bitstream from the core coder bitstream, wherein the core coder bitstream comprises a sequence of encoded frames for a corresponding sequence of frames of a set of waveform signals. Furthermore, the device is configured to determine the field length of an identifier field for an encoded frame of the core coder bitstream based on the core coder data.
[0014] According to a further aspect, a device for determining the field length of an identifier field for an encoded frame of a core coder bitstream is described, wherein the core coder bitstream comprises a sequence of encoded frames for a corresponding sequence of frames of a set of waveform signals. The device is configured to determine a reference length of an encoded frame of the core coder bitstream, and to determine a deviation range for a deviation of the length of a particular encoded frame of the core coder bitstream from the reference length. Furthermore, the device is configured to determine the field length of the identifier field for the particular encoded frame of the core coder bitstream based on the deviation range.
[0015] According to a further aspect, a device for determining the length of an encoded frame of a core coder bitstream is described, wherein the core coder bitstream comprises a sequence of encoded frames for a corresponding sequence of frames of a set of waveform signals. The device is configured to determine a reference length for a particular encoded frame of the core coder bitstream, and to determine the deviation of the actual length of the particular encoded frame from the reference length. Furthermore, the device is configured to determine the actual length of the particular encoded frame based on the deviation and based on the reference length.
[0016] According to another aspect a packetized bitstream for a core coder bitstream is described, wherein the packetized bitstream comprises a sequence of encoded frames from the core coder bitstream for a corresponding sequence of frames of a set of waveform signals, and wherein the core coder bitstream is indicative of core coder data regarding the set of waveform signals that is represented by the core coder bitstream. Furthermore, the packetized bitstream comprises an identifier field for each encoded frame of the sequence of encoded frames; wherein the identifier fields each have a field length that depends on the core coder data. According to a further aspect, a packetized bitstream for a core coder bitstream is described, wherein the packetized bitstream comprises a sequence of encoded frames from the core coder bitstream for a corresponding sequence of frames of a set of waveform signals. Furthermore, the packetized bitstream comprises an identifier field for each encoded frame of the sequence of encoded frames, wherein the identifier fields each have a field length that depends on a reference length for the respective encoded frame of the core coder bitstream.
[0017] According to another aspect, a packetized bitstream for a core coder bitstream is described, wherein the packetized bitstream comprises a sequence of encoded frames from the core coder bitstream for a corresponding sequence of frames of a set of waveform signals. Furthermore, the packetized bitstream comprises an identifier field for each encoded frame of the sequence of encoded frames, wherein the identifier fields are indicative of a deviation of an actual length of the respective encoded frame of the core coder bitstream from a reference length for the respective encoded frame.
[0018] According to another aspect, a core coder bitstream which is indicative of a set of waveform signals is described, wherein the core coder bitstream comprises a sequence of encoded frames for a corresponding sequence of frames of the set of waveform signals, and wherein each encoded frame from the sequence of encoded frames may be encoded according to a (pre-determined) frame syntax. The frame syntax of a particular encoded frame may be indicative
[0019] • of whether the particular encoded frame is encoded using a lossless or a lossy coding scheme; and / or
[0020] • of a number of samples comprised within the particular encoded frame; and / or
[0021] • of whether the encoded frame is encoded in a transform domain or a time domain; and / or
[0022] • of whether or not the particular encoded frame is encoded using a binary' PCM representation of samples of the corresponding frame.
[0023] According to another aspect, a packetized bitstream for a core coder bitstream is described, wherein the packetized bitstream comprises, a core coder bitstream which is indicative of a set of waveform signals. The core coder bitstream may be configured as outlined in the present document. In particular, the core coder bitstream may comprise a sequence of encoded frames for a corresponding sequence of frames of the set of waveform signals. Each encoded frame from the sequence of encoded frames may comprise a frame syntax, wherein the frame syntax of a particular encoded frame may be indicative of
[0024] • whether the particular encoded frame is encoded using a lossless or a lossy coding scheme; and / or
[0025] • a number of samples comprised within the particular encoded frame; and / or
[0026] • whether the encoded frame is encoded in a transform domain or a time domain; and / or
[0027] • whether or not the particular encoded frame is encoded using a binary' PCM representation of samples of the corresponding frame.
[0028] Furthermore, the packetized bitstream may comprise an identifier field for each encoded frame of the sequence of encoded frames. The identifier field for an encoded frame may comprise information for locating the encoded frame within the sequence of encoded frames. In particular, the packetized bitstream may comprise (e.g., as part of a segment header)
[0029] • an identifier field for each encoded frame of the sequence of encoded; wherein the identifier fields each have a field length that depends on the core coder data; and / or • an identifier field for each encoded frame of the sequence of encoded, wherein the identifier fields each have a field length that depends on a reference length for the respective encoded frame of the core coder bitstream; and / or
[0030] • an identifier field for each encoded frame of the sequence of encoded; wherein the identifier fields are indicative of a deviation of an actual length of the respective encoded frame of the core coder bitstream from a reference length for the respective encoded frame.
[0031] According to a further aspect, a packetized bitstream for a core coder bitstream is described. The packetized bitstream may comprises a sequence of encoded frames from the core coder bitstream for a corresponding sequence of frames of a set of waveform signals. The sequence of encoded frames may be grouped into a sequence of segments, wherein each segment comprises one or more encoded frames. Furthermore, the packetized bitstream may comprise a segment header for a particular segment from the sequence of segments. In particular, the packetized bitstream may comprise a segment header for each segment of the packetized bitstream. The segment header of a segment may be indicative of
[0032] • whether the one or more encoded frames of the particular segment are encoded using a lossless or a lossy coding scheme; and / or
[0033] • a number of samples comprised within the one or more encoded frames of the particular segment; and / or
[0034] • whether the one or more encoded frames of the particular segment are encoded in a transform domain or a time domain; and / or
[0035] • whether or not the one or more encoded frames of the particular segment are encoded using a binary PCM representation of samples of the one or more encoded frames of the particular segment.
[0036] It should be noted that the methods described herein can each be implemented in software and / or computer readable code on one or more processors, in whole or in part of the respective methods.
[0037] Aspects of the present disclosure may be implemented via an apparatus. The apparatus may include a processor and memory coupled to the processor. The processor may be adapted carry out the method according to aspects and embodiments of the present disclosure.
[0038] Aspects of the present disclosure may be implemented via a program. When instructions of the program are executed by a processor, the processor may carry out aspects and embodiments of the present disclosure. A computer-readable storage medium may store the program. Such computer-readable storage media may include memory devices such as those described herein, including but not limited to random access memory (RAM) devices, read-only memory' (ROM) devices, etc.. Accordingly, some innovative aspects of the subject matter described in this disclosure can be implemented via one or more computer-readable storage media having software stored thereon.
[0039] It will be appreciated that apparatus features and method steps may be interchanged in many ways. In particular, the details of the disclosed method(s) can be realized by the corresponding apparatus (or system), and vice versa, as the skilled person will appreciate.
[0040] Moreover, any of the above statements made with respect to the method(s) are understood to likewise apply to the corresponding apparatus (or system), and vice versa.
[0041] It should be noted that the methods and systems including its preferred embodiments as outlined in the present patent application may be used stand-alone or in combination with the other methods and systems disclosed in this document. Furthermore, all aspects of the methods and systems outlined in the present patent application may be arbitrarily combined. In particular, the features of the claims may be combined with one another in an arbitrary manner.
[0042] SHORT DESCRIPTION OF THE FIGURES
[0043] The invention is explained below in an exemplary manner with reference to the accompanying drawings, wherein Fig. la shows an example encoding device;
[0044] Fig. lb shows an example decoding device;
[0045] Fig. 2a shows an example core coder bitstream;
[0046] Fig. 2b shows an example packetized bitstream; Fig. 3a shows a flow chart of an example method for determining the field length of an identifier field for an encoded frame;
[0047] Fig. 3b shows a flow chart of another example method for determining the field length of an identifier field for an encoded frame; Fig. 3c shows a flow chart of an example method for determining the length of an encoded frame; and
[0048] Fig. 4 illustrates a transmission device.
[0049] DETAILED DESCRIPTION The International Telecommunication Union (“ITU”) is an assembly of experts from around the world that work together to develop international standards known as ITU-T Recommendations. These standards enable improved interoperability of communication signals in the global infrastructure of information networks and communication devices, allowing such networks and devices to more easily communicate and operate together. Recognizing the need for a standardized codec for biomedical waveform data, in April 2024 the ITU-T issued a call for proposals for a new ITU-T Recommendation on the coding of biomedical waveform data. One or more of the embodiments disclosed herein describe methods, apparatuses, and systems developed to meet one or more requirements specified in the ITU-T call for proposals for improved coding, compression, storage, transmission, reception, and / or decoding of such signals.
[0050] Technical benefits of one or more of the embodiments disclosed herein enable a standardized lossy, lossless, and / or near-lossless coding format including a transmissionsyntax specifically developed for biomedical waveform data, and facilitate clinical neurophysiology data exchange. Such data may include time-based neurophysiology signal data and associated video recordings, if present, from electroencephalography (EEG), video-electroencephalography (VEEG), electromyography (EMG), evoked potentials (EP), polysomnograms (PSGs), electrocardiograms (ECGs), and other types of neurophysiology signals. Additional non-exhaustive examples of biomedical waveform data include photoplethysmogram (PPG) and electrocardiography (ECG) data. One or more of the embodiments described herein therefore provide features for a standardized codec which facilitates interoperable processing of biomedical waveform data by a wide range of devices. As indicated above, the present document is directed at providing side information with regards to a core coder bitstream in an efficient manner. In this context. Fig. la shows an example encoding device 100 and Fig. lb shows an example decoding device 120. The encoding device 100 comprises a core encoder 111 which is configured to generate a core coder bitstream 102 based on a set of waveform signals 101. The set of waveform signals 101 typically comprises P different waveform signals 101 (with P>1, or P>2 or P>3), which may at least partially be correlated. Example waveform signals 101 are audio signals or biomedical signals, such as electrocardiogram (ECG) signals, electroencephalogram (EEG) signals, and / or electromyogram (EMG) signals.
[0051] A waveform signal 101 may comprise a sequence of samples for a corresponding sequence of time instants. Each sample may be represented using a certain number Q of bits, e.g., Q between 8 and 16. Furthermore, a waveform signal 101 may be subdivided into frames, wherein each frame comprises a pre-determined number M of samples (e.g., M=248 or more, or M= 1000 samples or more) and / or wherein each frame spans across a predetermined time duration T (e.g., T=20ms). Hence, a waveform signal 101 may comprise a sequence of frames for a corresponding sequence of time instants, wherein each frame ty pically comprises a plurality of samples. The core encoder 111 may be configured to encode the samples of a frame jointly, in order to achieve a relatively high coding gain. In particular, the core encoder 111 may be configured to encode the corresponding frames of the set of waveform signals 101, i.e., P corresponding frames for the P waveform signals 101, jointly, in order to exploit a possible correlation between the P waveform signals 101. The frame (or frames) for a particular time instant may be encoded in dependence of the frames for one or more previous time instants. Such a frame may be referred to as a “dependent” frame. On the other hand, the frame (or frames) for a particular time instant may be encoded independently from the frames for other time instants. Such a frame may be referred to as an “independent” frame. Hence, the core encoder 111 may be configured to generate an encoded frame for each frame of the set of waveform signals 101, thereby providing a sequence of encoded frames for the corresponding sequence of frames of the set of waveform signals 101. Each encoded frame comprises data (notably a sequence of bits) that represent the corresponding frame of the set of waveform signals 101. The sequence of encoded frames may be concatenated to provide a core coder bitstream 102 (as shown in Fig. 2a).
[0052] The number of bits per encoded frame may vary'. In other words, the encoded frames 202 may vary in length. As a result of this, it may not be possible to extract an individual encoded frame 202 from the core coder bitstream 102, without decoding the core coder bitstream 102. In view of this, core coder side information may be added to the bitstream 102, wherein the core coder side information enables a decoding device 120 to extract one or more individual encoded frames 202 from the core coder bitstream 102 without the need for decoding the complete core coder bitstream 102 and / or without decoding the one or more individual encoded frames 202 from the core coder bitstream 102. The core coder side information may be determined within a metadata insertion unit 112 of the encoding device 100 (e.g., based on information provided by the core coder 111). Furthermore, the metadata insertion unit 112 may be configured to generate a packetized bitstream 103 based on the core coder bitstream 102 and based on the core coder side information.
[0053] The decoding device 120 shown in Fig. lb comprises a metadata extraction unit 132 which is configured to extract metadata, notably the core coder side information, from the packetized bitstream 103. Furthermore, the core coder bitstream 102 may be extracted from the packetized bitstream 103 and the core coder bitstream 102 may be provided to the core decoder 131, wherein the core decoder 131 is configured to generate a set of reconstructed w aveform signals 121 based on the core coder bitstream 102. The set of reconstructed w aveform signals 121 may deviate from the set of waveform signals 101, if the core encoder 111 and the core decoder 131 make use of a lossy coding scheme. On the other hand, the set of reconstructed waveform signals 121 may be equal to the set of w aveform signals 101, if the core encoder 111 and the core decoder 131 make use of a lossless coding scheme.
[0054] Fig. 2a shows an example core coder bitstream 102 which comprises a sequence of encoded frames 202, wherein the encoded frames 202 may have a varying length (i.e., a vary ing number of bits). A certain number N of encoded frames 202 may be grouped into a so-called segment 205 (e.g., N>1, or N>2, or N>3, or N>10). The core coder bitstream 102 typically comprises a core header 201. wherein the core header 201 may comprise core coder data, notably7 • codec data which is indicative of the coding scheme that has been used for encoding the set of waveform signals 101, and / or of one or more parameters of the coding scheme that has been used for encoding the set of waveform signals 101; and / or
[0055] • signal data which is indicative of information regarding the set of waveform signals 101 that have been encoded, such as the number of channels P of the set of waveform signals 101, and / or the number M of samples that a comprised within each frame of the set of waveform signals 101, and / or to which channel group out of the set of waveform signals 101 the core coder bitstream 102 belongs. A set of waveform signals 101 may comprise one or more channel groups, wherein each channel group may comprise one or more channels.
[0056] The core header 201 may be provided at the beginning of the core coder bitstream 102. thereby enabling the corresponding core decoder 131 to decode the core coder bitstream 102 and to generate the set of reconstructed waveform signals 121.
[0057] Fig. 2b shows an example packetized bitstream 103, wherein the packetized bitstream 103 may comprise a bitstream header 210 for the overall packetized bitstream 103, wherein the bitstream header 210 is typically placed at the beginning of the packetized bitstream 103. The bitstream header 210 may comprise the core header 201 of the core coder bitstream 102 (e.g., as part of a header field 213). Furthermore, the bitstream header 210 may comprise a synchronization field 211 which enables the corresponding decoding device 120 to provide a temporal synchronization of the packetized bitstream 103. In addition, the bitstream header 210 may comprise an integrity field 212 (e.g., for a cyclic redundance check (CRC)) which enables the decoding device 120 to verify the integrity of the packetized bitstream 103 and / or of the bitstream header 210.
[0058] The packetized bitstream 103 further comprises a segment section 220 for each segment 205 of the core coder bitstream 102. The segment section 220 comprises a segment header 221, the N encoded frames 202 of the segment 205 and possibly a zero padding field 227. The segment header 221 may comprise a side information field 225 for the core coder side information. Furthermore, the segment header 221 may comprise an integrity field 222 (e.g., for a cyclic redundance check (CRC)) which enables the decoding device 120 to verify the integrity of the segment 205 and / or of the segment header 221. The segment header 221 for a segment 205 may be located at the beginning of the segment section 220, followed by the N encoded frames 202 of the segment 205. The zero padding field 227 may be located at the end of the segment section 220, subsequent to the N encoded frames 202 of the segment 205. The zero padding field 227 may be used to provide a byte- alignment of the segment section 220.
[0059] As illustrated in Fig. 2b, the packetized bitstream 103 ty pically comprises a (single) bitstream header 210 and a subsequent sequence of segment sections 220 (for a corresponding sequence of segments 205 of the core coder bitstream 102).
[0060] As indicated above, the segment header 221 of the segment section 220 for a segment 205 may comprise a side information field 225. The side information field 225 may comprise a frame field 231 which indicates the length of the segment 205 (see Fig. 2c). In particular, the frame field 231 may indicate the number N of encoded frames 202 that are comprised within the segment 205. Different segments 205 may have different numbers N of encoded frames 202. The frame field 231 may comprise a pre-determined number of bits, e.g., 16 bits. The maximum number of encoded frames 202 within a segment 205 may be Nmax. The frame field 231 may comprise log2 (Nmax) (rounded up to the next integer) bits to indicate the specific number N of encoded frames 202 within a specific segment 205.
[0061] Furthermore, the side information field 225 may comprise an identifier field 232 for each one of the N encoded frames 202 of the segment 205. In other words, the side information field 225 may comprise N identifier fields 232 for the corresponding N encoded frames 202 of the segment 205. The identifier field 232 for a particular encoded frame 202 may provide information that enables a decoding device 120 to locate the particular encoded frame 202 within the segment 205. In particular, each identifier field 232 may indicate the length (e.g., the number of bits) of the corresponding encoded frame 202. In particular, the identifier field 232 for the nthencoded frame 202, with n=l. . .. . N, may indicate a value Bn, wherein Bncorresponds to the number of bits of the n* encoded frame 202. As a result of this, the sum SN of all values Bn, for n=l , . .. , N, corresponds to the total number of bits of the N encoded frames 202 of the segment 205. Furthermore, the sum Sk of the first k values Bn, for n=l , . .. , k, corresponds to the length of the first k encoded frames 202 of the segment 205. such that the bit at the position Sk+1 corresponds to the first bit of the encoded frame k+1. Hence, the identifier fields 232 enable a decoding device 120 to identify each individual encoded frame 202 within the segment 205.
[0062] The number Bnof bits of an encoded frame 202 (i.e., the size of the length of an encoded frame 202) ty pically exhibits an upper bound, wherein the upper bound may be given by the number of bits which are used to represent the corresponding non-encoded frame of the set of waveform signals 101. As indicated above,
[0063] • each sample of a waveform signal 101 may be represented by a certain number Q of bits; • each non-encoded frame may comprise a pre-determined number M of samples; and
[0064] • each set of waveform signals 101 may comprise P different channels (i.e., P different waveform signals 101). Hence, the upper limit for the number Bmax of bits of an encoded frame 202 may be given by ceil(log2( P * M * Q)), wherein the function ceil() indicates the next higher (rounded up) integer. The length of the N different identifier fields 232 may be set to Bmax.
[0065] The metadata insertion unit 112 may be configured to determine the field length (i.e., the number of bits) of the N identifier fields 232 of the side information field 225 based on the signal data comprised within the core header 201 of the core coder bitstream 102. In particular, the length of the identifier field 232 may be determined based on the number P of channels of the set of waveform signals 101 and / or based on the number M of samples per non-encoded frame of the set of waveform signals 101. Furthermore, the metadata insertion unit 112 may generate N different identifier fields 232 each having the determined field length.
[0066] In addition, the metadata insertion unit 112 may be configured to determine the number of bits comprised in each one of the N encoded frames 202 of the segment 205. The number of bits comprised within an encoded frame 202 may be written into the identifier field 232 for this encoded frame 202.
[0067] Hence, the metadata insertion unit 112 may be configured to generate the side information field 225 of the segment header 221 of a segment 205. Furthermore, the core coder side information (notably the number N of frames 202 comprised within the segment 205 and the number of bits of each one of the encoded frames 202) may be written into the respective fields 231, 232 of the side information field 225, thereby providing the segment header 221. In the same manner, the segment header 221 may be generated for each one of the segments 205 of the core coder bitstream 102, thereby generating the packetized bitstream 103.
[0068] The decoding device 120, notably the metadata extraction unit 132 of the decoding device 120), may be configured to determine the length of the side information field 225, notably of the field length of the individual identifier fields 232 of the side information field 225, based on the signal data comprised within the core header 201 of the core coder bitstream 102 (which is comprised within the bitstream header 210). The length of the side information field 225, notably the field length of the individual identifier fields 232 of the side information field 225, may be determined as outlined above (for the encoding device 100, notably for the metadata insertion unit 112). Furthermore, the metadata extraction unit
[0069] 132 may be configured to determine the individual length (i.e., the individual number of bits) of the individual encoded frames 202 of a segment 205 from the individual identifier fields 232 (notable from the frame data or frame information written into the individual identifier fields 232) of the side information field 225 of the segment header 221.
[0070] Hence, the core coder bitstream 102 typically consists of a core header 201 followed by one or more variable size payload sections, wherein each payload section may correspond to a segment 205 which comprises a certain number N of encoded frames 202. Each segment 205 typically corresponds to a certain time segment (of a fixed temporal duration). The payload sections, i.e., the segments 205, may be appended in a sequential manner possibly followed by zero padding at the end, if necessary' to ensure byte-alignment.
[0071] The packetized bitstream 103 allows the core coder bitstream 102 to be provided along with other information such as a ‘‘SYNC” word, an authentication (e.g., AUTH_START) word, one or more unique IDs (e.g., UUID_U and UUID_S), a timestamp, a cyclic redundancy check (CRC) and / or one or more config (CFG) packets. There may be different schemes for packetizing the bitstream 103. A possible scheme is the so-called packet-based (e.g.. MPEG-H Audio Stream or MHAS) scheme which is mandating each packet to comprise packet type, packet label and / or packet length information followed by the packet payload. Another scheme is the so-called network abstraction layer (NAL)- based scheme which makes use of packet type information followed by the packet payload.
[0072] As can be seen from Fig. 2b, the packetized bitstream 103 may be divided into two parts, one part (the bitstream head 201) that may comprise one or more packet types, and that is typically only sent once, and a second part (the segment header 221) that may comprise one or more packet types and that may be sent in a repeated manner. Core coder side information may be inserted into the segment header 221 of a segment 205. The core coder side information may comprise information which is not needed to perform the actual decoding of the core coder payload (i.e., of the encoded frames 202), but which may be used to perform an operation such as the extraction of an arbitrary segment from the input signal (i.e., from the set of waveform signals 101) and / or to perform an annotation or tagging to a particular segment of interest to be extracted at some point in time. The methods outlined in the present document allow the core coder side information to be inserted into the packetized bitstream 103 in a bit-rate efficient manner. An example method is shown in Table 1.
[0073] Table 1
[0074] Table 1 shows pseudocode for a method for determining the field length (num bits to read) of an identifier field 232 based on the number P of channels (num_channels) and based on the number M of samples (frame_length_samples). It is assumed that Q=16. The ReadBitsQ function returns the actual number of bits in an encoded frame 202 and in case of a segment 205, it may return the number of bits per frame 205 for all frames 205 in the segment 205.
[0075] The factor Q (e.g., Q=16) may be chosen to ensure the ‘'num bits to read” value coverages. This ensures that depending on the number P of channels and based on the frame size, the side info data (e.g.. bits per frame) can be efficiently represented. The factor Q may be reduced by taking into account the global gain parameter (indicated e.g., by the core header 201) when determining the field length of the identifier field 232. The escape read function may be replaced by optionally transmitting the binary data (PCM representation) of a frame (if it is determined that the size of the encoded frame 202 is larger than the size of the original frame). In case of varying frame sizes (i.e.. varying values of M for different frames), the core coder side information or the encoded frames 202 (as part of the frame syntax of the encoded frames 202) may transmit a parameter frame_length_samples[frame_index] (which indicates the number M of samples comprised within the respective frame 202) before the Num bits in frame parameter.
[0076] If all the encoded frames 202 are independent frames (IF), arbitrary segment extraction, annotation or tagging may be provided using the core coder side information. The core coder 111 may output an independent frame followed by a sequence of dependent frames (such a structure may be repeated in the bitstream 102). In such a case, segment extraction, annotation or tagging may take into account the structure of the encoded frames 202.
[0077] The relative similarity of frame sizes of successive frames 202 may be exploited, e.g., as shown in the method according to Table 2. _
[0078] Table 2
[0079] The deviation parameter SIZE DEVIATION PERCENTAGE may be used to determine a deviation range (Max_size - Min_size) for the deviation (num_bits_to_read) of the frame size (Num_bits_in_frame) of the current frame from the frame size (num_frame_bits_prev) of the previous frame. Example values of the deviation parameter
[0080] SIZE DEVIATION PERCENTAGE may be in the range of 15%. A flag (( ReadBits(l)) within the packetized bitstream 103 may be used to indicate whether the method according to Table 2 or the method according to Table 1 is to be used for determining the field length (num_bits_to_read) of the identifier field 232.
[0081] A variant of the ReadNumBitsInFrame2() function makes use of the target bits per sample ("target bits per sample "). i.e.. of the target bit rate, of the core encoder 111. In this case, the '‘num_bits_per_frame_prev” quantity may be replaced by a constant reference length, e.g. (int)(target_bits_per_sample * num_channels * num_frame_samples) (i.e., the expected frame size). Information about the target bit rate may be comprised within the bitstream header 210 and / or within the segment header 221 of the packetized bitstream 103 (e.g., as part of a core coder distortion measurement field).
[0082] In a further example, the difference (i.e., the deviation) between the number of bits of a current encoded frame 202 relative to the number of bits of the preceding encoded frame 202 may be coded, e.g., using Golomb / Rice codes. An example syntax is shown in Table 3.
[0083] Table 3
[0084] The information regarding the number of bits per frame for a subsequent frame (n>l) may be represented or coded by means of Golomb / Rice coding using the following parameters: GRParam, inc quotient, delta_remainder and delta_sign, i.e., (5+1+GRParam+l) bits per frame. This is typically a variable length code since GRParam has a varying length.
[0085] Furthermore, a preferred syntax (see Table 4) for the core coder bitstream 102, in particular for the individual encoded frames 202 is described. The syntax, notably the frame syntax, provides an efficient and low complexity (core) coding method (notably for biomedical waveform signals), supporting both a lossless and a lossy coding mode, and various input frame sizes, capable of outputting efficient side information (metadata) for enabling partial extraction and tagging of the bitstream and waveform. In particular, a bitstream syntax (or an efficient and low complexity core coding method) is provided to allow for an efficient encoding / decoding of biomedical signals by performing lossless or lossy coding on a switchable signal domain (DCT or time domain) per frame basis. Hence, a coding method with the capability to switch to a binary PCM coding on a per frame basis is described. This may be done to ensure that the method can handle any type of input signals including, e.g., white noise, to output an encoded frame 202 having a maximum bitstream length proportional to the binary7PCM representation of the samples, e.g., 16 or 24 bits per sample.
[0086]
[0087] Table 4
[0088] The semantics in Table 4 are as follows:
[0089] • IsPCM Indicates in case of Lossless coding if data is transmitted as PCM.
[0090] • SampleBinaryCode Indicates the sample binary PCM representation.
[0091] • EnableDCT Indicates if coding is performed in the DCT domain or the time domain.
[0092] • PredMode Specifies what prediction mode to use, either backward adaptive normalized least means squared (NLMS) or forward adaptive linear prediction coding (LPC).
[0093] • UseDefaultOrder Specifies if the default NLMS filter order is used.
[0094] • NLMSOrder Specifies the order of the NLMS filter used if the default is not being used.
[0095] • DCTPredSplitEnable Indicates that the DCT domain frequency and channel prediction is separately controlled for the first half of the spectrum and the second half of the spectrum. If the spectrum is split, two additional control bits is sent for each half of the spectrum. If DCTPredSplitEnable is 0 then the prediction runs across the entire spectrum.
[0096] • IntraChPredEnableHigh Indicates the intra-channel frequency domain prediction for the high frequency half of the spectrum is enabled. • InterChPredEnableHigh Indicates the inter-channel frequency domain prediction for the high frequency half of the spectrum is enabled.
[0097] • IntraChPredEnableLow Indicates the intra-channel frequency domain prediction for the low frequency half of the spectrum is enabled.
[0098] • InterChPredEnableLow Indicates the inter-channel frequency domain prediction for the low frequency half of the spectrum is enabled.
[0099] • IntraChPredEnable Indicates the intra-channel frequency domain prediction for the entire spectrum is enabled.
[0100] • InterChPredEnable Indicates the inter-channel frequency domain prediction for the entire spectrum is enabled.
[0101] • ICTimePredEnable Indicates if inter-channel prediction is enabled in the time domain. If enabled the reference channel and prediction gain, follow in the bitstream.
[0102] • ICRefChannel Indicates the reference channel used to predict the current channel (n). The reference channel is less than current channel (n) and carried as a ceil(log2(n)) bit number.
[0103] • ICPredGain Indicates the predication gain used in the time domain inter-channel prediction.
[0104] • LPCRegionlnc Indicates the number of LPC regions (NumLPCRegions) is incremented by 1.
[0105] • LPCRegionStart Indicates the start of the LPC region. The frame can be segmented into 64 possible start locations for each LPC region.
[0106] • LPCOrder Indicates the order of the LPC prediction for each channel and LPC region.
[0107] • KCoeff The LPC coefficients used in the time domain prediction.
[0108] • NumRegions Indicates the number of sub-regions of the signal that is transmitted. The number of sub-regions transmitted ranges from 0 to max_num_regions, where max num regions is dependent on the frame length as shown in table below. For lossless operation NumRegions is not transmitted and set to max_num_regions.
[0109] Table 5
[0110] • RegionCb Indicates the index of the codebook used to code the sub-region of the signal. • DeltaCb Indicates the codebook index change relative to the codebook index in previous sub-region of the signal.
[0111] • unsigned_cb Indicates if the codebook codes the sign information explicitly or if the sign is transmitted seperately. The unsigned_cb values are provided in the following table.
[0112] Table 6
[0113] • HGRCode The Huffman or Golomb-Rice codebook used to code the sub-region of the signal. • QuadSignBits The sign bits for 4 signal values. Sign bits are only transmitted if the absolute signal values are greater than 0.
[0114] • PairSignBits The sign bits for 2 signal values. Sign bits are only transmitted if the absolute signal values are greater than 0.
[0115] • SignBit The sign bits for 1 signal values. Sign bits are only transmitted if the absolute signal values are greater than 0. Fig. 3a shows a flow chart of an example method 300 for determining the field length (e.g., the number of bits) of the identifier field 232 for an encoded frame 202 of a core coder bitstream 102. As outlined in the present document, the core coder bitstream 102 comprises a sequence of encoded frames 202. The core coder bitstream 102 may be included into a packetized bitstream 103, wherein the packetized bitstream 103 comprises core coder side information for the core coder bitstream 102, which may be written into one or more side information fields 225 (for one or more segments 205 of the core coder bitstream 102). The information field 225 for a segment 205 (which may be part of the segment header 221 of the segment 205) may comprise an identifier field 232 for each encoded frame 202 of the segment 205 (notably N identifier fields 232 for N encoded frames 202). The identifier field 232 for an encoded frame 202 may indicate the length (e.g., the number of bits) of the encoded frame 202. Method 300 may be implemented by an encoder or decoder. Therefore, the identifier field 232 may already be present in the packetized bitstream 103 (decoding side) or the identifier field 232 may need to be added to the core coder bitstream 102 to form the packetized bitstream 103 (encoder side). It both cases, a length of the identifier field 232 needs to be determined, either for generating a bit-rate efficient packetized bitstream 103 (encoder side) or for determining a position of the identifier fields 232 in the packetized bitstream 103 (decoder side). In both cases, the identifier field 232 is used to indicate the length (e.g., the number of bits) of the encoded frame 202. At the encoder, the identifier field 232 may be generated and inserted based on this knowledge (i.e., that it is used for indicating the length of a corresponding encoded frame 202). At the decoder, the identifier field 232 already exists and indicates the length of a corresponding encoded frame 202.
[0116] Therefore, the decoder may need to be able to read the identifier field 232.
[0117] The method 300 may comprise determining 301 core coder data regarding the core coder bitstream 102 from the core coder bitstream 102, wherein the core coder bitstream 102 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of a set of waveform signals 101. The core coder data may be indicative of a characteristic (e.g., of signal data) of the set of waveform signals 101 that is represented by the core coder bitstream 102. The core coder data may be extracted from the core header 201 of the core coder bitstream 102. Alternatively, or in addition, the core coder data may be extracted from an encoded frame 202 (notably from the frame syntax of an encoded frame 202) of the core coder bitstream 102.
[0118] Furthermore, the method 300 may comprise determining 302 the field length of an identifier field 232 for an encoded frame 202 of the core coder bitstream 102 based on the core coder data. By doing this, the length of the encoded frame 202 may be encoded in a bit-rate efficient manner.
[0119] The method 300 may comprise determining as core coder data the number P of channels of the set of waveform signals 101. The number P of channels may be indicated within the core header 201. The field length of the identifier field 232 may then be determined based on the number P of channels of the set of waveform signals 101.
[0120] Alternatively, or in addition, the method 300 may comprise determining as core coder data the number M of samples per frame of the set of waveform signals 101. The number M of samples per frame may be indicated within the core header 201 (in case the number M is the same for all encoded frames 202 of the sequence of encoded frames 202) and / or within the frame syntax of the individual encoded frames 202 (in case the number M varies for different encoded frames 202 of the sequence of encoded frames 202). The field length of the identifier field 232 may then be determined based on the number M of samples per frame of the set of waveform signals 101.
[0121] Alternatively, or in addition, the method 300 may comprise determining as core coder data a gain parameter which is indicative of the degree of compression and / or of the degree of quantization that has been used by a core coder 111 for generating the sequence of encoded frames 202 based on the corresponding sequence of frames of the set of waveform signals 101. The gain parameter may be indicated within the core header 201 of the core coder bitstream 102. The field length of the identifier field 232 may then be determined based on the gain parameter.
[0122] Alternatively, or in addition, the method 300 may comprise determining as core coder data a flag indicating that a particular encoded frame 202 of the core coder bitstream 102 is a pulse code modulation (PCM) representation of and / or is equal to the corresponding frame of the set of waveform signals 101. The flag may be part of the frame syntax of the particular encoded frame 202. The field length of the identifier field 232 and / or the length of the particular encoded frame 202 (which is to be written into the identifier field 232) may then be determined based on (notably as) the length of the corresponding frame of the set of waveform signals 101.
[0123] The method 300 may determine the field length of the identifier fields 232 for all the encoded frames 202 of the sequence of encoded frames 202 of the core coder bitstream 102 and / or of a segment 205. The field length of the different identifier fields 232 may be constant (thereby enabling a particularly efficient coding or decoding of the packetized bitstream 103). Alternatively, the field length of the different identifier field 232 may vary (thereby providing a particularly bit-rate efficient packetized bitstream 103).
[0124] The method 300 may comprise, for each encoded frame 202 of the sequence of encoded frames 202 of the core coder bitstream 102, determining as core coder data the length, notably a number M of samples, of the corresponding frame of the set of waveform signals 101, wherein the core coder data may be extracted from the respective encoded frame 202, notably from the frame syntax of the respective encoded frame 202, within the core coder bitstream 102. Alternatively, or in addition, the core coder data may be extracted from the core header 201 of the core coder bitstream 102, and / or from the segment header 221 of the segment 205 of the core coder bitstream 102 that the encoded frame 202 is part of. The field length of the identifier field 232 for the encoded frame 202 may then be determined based on the determined length (notably based on the number M of samples) of the corresponding frame of the set of waveform signals 101. Hence, the use of a different numbers M of samples per frame for different encoded frames 202 may be enabled, thereby further increasing the efficiency and the flexibility of the packetized bitstream 103.
[0125] The method 300 may comprise determining the field length of the identifier field 232 based on log2(P*M*Q), wherein P is the number of channels of the set of waveform signals 101, wherein M is the number of samples per frame of the set of waveform signals 101, and wherein Q is a number of bits per sample of a waveform signal 101 of the set of waveform signals 101. The field length of the identifier field 232 may be determined based on, notably may be determined to be, the rounded up (i.e.. the next higher) integer of the value given by log2(P*M*Q). As indicative above, the number M of samples per frame may be different for different encoded frames 202 (thereby leading to different field lengths for the identifier fields 232 for the different encoded frames 202). By using the above formula, the field length of the identifier fields 232 may be determined in a particularly efficient and precise manner. The method 300 may comprise (on the encoder side) determining the (actual) length, notably the (actual) number of bits, of a particular encoded frame 202. The length, notably the number of bits, may then be encoded (notably be written) into the identifier field 232 of the particular encoded frame 202. In a similar manner, the length of the different encoded frames 202 may be encoded into the different identifier fields 232 for the different encoded frames 202, thereby providing a packetized bitstream 103 which enables an efficient extraction of individual encoded frames 202 from the core coder bitstream 102.
[0126] Hence, the method 300 may comprise generating a packetized bitstream 103 based on the core encoder bitstream 102, wherein the packetized bitstream 103 comprises the core coder bitstream 102 and an identifier field 232 of the determined field length for each encoded frame 202 of the core coder bitstream 102. As indicated above, the field length of the identifier field 232 may be equal for the different encoded frames 202 or the field length of the identifier field 23 may vary for different encoded frames 202. As indicated above, the sequence of encoded frames 202 may be grouped into a sequence of segments 205, wherein each segment 205 comprises one or more (notably N) encoded frames 202, wherein N may be constant or may vary (for different segments 205). The method 300 may comprise determining the number N of encoded frames 202 comprised within a particular segment 205. Furthermore, the method 300 may comprise generating a packetized bitstream 103 based on the core encoder bitstream 102, wherein the packetized bitstream 103 comprises a segment header 221 for the particular segment 205, wherein the segment header 221 comprises N identifier fields 232 for the corresponding N encoded frames 202 of the segment 205. Furthermore, the segment header 221 for the particular segment 205 may comprise a frame field 231 which is indicative of the number N of encoded frames 202 comprised within the particular segment 205. As indicative above, the N identifier fields 232 may be each of the same field length, or alternatively, the N identifier fields 232 may at least partially have a different field length. The method 300 may comprise (on the decoder side) locating an identifier field 232 comprised within the packetized bitstream 103 for the core coder bitstream 102 based on the determined field length of the identifier field 232. Furthermore, the method 300 may comprise extracting frame information regarding the particular encoded frame 202 that the located identifier field 232 is associated with from the located identifier field 232. The frame information may indicate the location of the particular encoded frame 202 within the packetized bitstream 103. Alternatively, or in addition, the frame information may indicate the length, notably the number of bits, of the particular encoded frame 202. Fig. 3b shows a flow chart of an example method 310 for determining the field length of the identifier field 232 for an encoded frame 202 of a core coder bitstream 102, wherein the core coder bitstream 102 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of a set of waveform signals 101. The method 310 comprises determining 311 a reference length of an encoded frame 202 of the core coder bitstream 102. The reference length may be the average length of encoded frames 202 within (a segment 205 of) the core coder bitstream 102. Alternatively, the reference length may be the actual length of a previous encoded frame 202.
[0127] Method 310 may be implemented by an encoder or decoder. Therefore, the identifier field 232 may already be present in the packetized bitstream 103 (decoding side) or the identifier field 232 may need to be added to the core coder bitstream 102 to form the packetized bitstream 103 (encoder side). It both cases, a length of the identifier field 232 needs to be determined, either for generating a bit-rate efficient packetized bitstream 103 (encoder side) or for determining a position of the identifier fields 232 in the packetized bitstream 103 (decoder side). In both cases, the identifier field 232 is used to indicate the length (e.g., the number of bits) of the encoded frame 202. At the encoder, the identifier field 232 may be generated and inserted based on this knowledge (i.e., that it is used for indicating the length of a corresponding encoded frame 202). At the decoder, the identifier field 232 already exists and indicates the length of a corresponding encoded frame 202. Therefore, the decoder may need to be able to read the identifier field 232.
[0128] In particular, the method 310 may comprise determining the reference length based on the target bit rate (e g., bits per sample) of the core coder bitstream 102 (which may be indicated within the core header 201 of the core coder bitstream 102 or within the bitstream header 210 of the packetized bitstream 103). Alternatively, or in addition, the reference length may be determined based on the gain parameter which is indicative of the degree of compression and / or of the degree of quantization that has been used by the core coder 111 for generating the sequence of encoded frames 202 based on the corresponding sequence of frames of the set of waveform signals 101. The gain parameter may be indicated within the core header 201 of the core coder bitstream 102 or within the bitstream header 210 of the packetized bitstream 103. Alternatively, or in addition, the method 310 may comprise determining the reference length based on the actual length of one or more previous encoded frames 202 which precede a particular encoded frame 202 (for which the field length of the identifier field 232 is to be determined) within the sequence of encoded frames 202 of the core coder bitstream 102.
[0129] Furthermore, the method 310 comprises determining 312 a deviation range for a deviation of the length of the particular encoded frame 202 of the core coder bitstream 102 from the reference length. The method 310 may comprise determining a deviation parameter and the deviation range may be determined based on the deviation parameter. The deviation parameter may be determined, notably extracted, from the core coder bitstream 102, e.g., from the core header 201 of the core coder bitstream 102, and / or from the packetized bitstream 103, e.g., from the bitstream header 210 of the packetized bitstream 103 and / or from the segment header 221 of a segment 205 of the packetized bitstream 103 (that the particular encoded frame 202 is part of). Preferably the deviation parameter precedes the identifier field 232 of the particular encoded frame 202 within the bitstream 102, 103, in order to enable an efficient decoding of the bitstream 102, 103.
[0130] The method 310 may further comprise determining 313 the field length of the identifier field 232 for the particular encoded frame 202 of the core coder bitstream 102 based on the deviation range. By doing this, a particularly bit-rate efficient coding of the length (notably of the number of bits) of the different encoded frames 202 may be achieved.
[0131] The method 310 may comprise (on the encoder side) determining the differential value, notably a number of bits, of the deviation of the length of the particular encoded frame 202 of the core coder bitstream 102 from the reference length. The differential value, notably the number of bits, may then be encoded into the identifier field 232 for the particular encoded frame 202. Alternatively, or in addition, the method 310 may comprise (on the decoder side) extracting the differential value, notably a number of bits, of the deviation of the length of the particular encoded frame 202 of the core coder bitstream 102 from the reference length from the identifier field 232 for the particular encoded frame 202 that is comprised within a packetized bitstream 103 of the core coder bitstream 102.
[0132] The method 310 may comprise determining, notably based on a flag (within the packetized bitstream 103), whether the length of the particular encoded frame 202 is to be indicated within the identifier field 232 as a differential value relative to the reference length, or as an absolute value. The field length of the identifier field 232 for the particular encoded frame 202 may be determined based on the deviation range (in accordance to method 310), if the flag indicates that the length of the particular encoded frame 202 is to be indicated as a differential value. On the other hand, the field length of the identifier field 232 for the particular encoded frame 202 may be determined based on core coder data (in accordance to method 300), if the flag indicates that the length of the particular encoded frame 202 is to be indicated as an absolute value; wherein the core coder data is extracted from the core coder bitstream 102. As a result of this, a particular efficient and robust coding of the length of the different encoded frames 202 may be achieved.
[0133] Fig. 3c shows a flow chart of an example method 320 for determining the length of an encoded frame 202 of a core coder bitstream 102, wherein the core coder bitstream 102 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of a set of waveform signals 101 . The method 320 comprises determining 321 the reference length for a particular encoded frame 202 of the core coder bitstream 102. The reference length may be determined as outlined above. In particular, the method 320 may comprise determining the reference length based on the actual length of one or more previous encoded frames 202 which precede a particular encoded frame 202 (for which the length is to be determined) within the sequence of encoded frames 202 of the core coder bitstream 102.
[0134] Furthermore, the method 320 comprises determining 322 the deviation of the actual length of the particular encoded frame 202 from the reference length. The deviation of the actual length of the particular encoded frame 202 may be encoded (within the packetized bitstream 103) using an entropy coding scheme, using a lossless coding scheme, and / or using a Golomb / Rice code. In addition, the method 320 comprises determining 323 the actual length of the particular encoded frame 202 based on the deviation and based on the reference length. As a result of this, a particular efficient and robust coding of the length of the different encoded frames 202 may be achieved. The method 320 may comprise (on the encoder side) encoding the deviation of the actual length of the particular encoded frame 202, and generating a packetized bitstream 103 based on the core encoder bitstream 102, wherein the packetized bitstream 103 comprises the core coder bitstream 102 and an identifier field 232 for the particular encoded frame 202 of the core coder bitstream 102, which is indicative of the encoded deviation.
[0135] In particular, the method 230 may comprise determining a coding parameter of a code, notably of a Golomb / Rice code, which is used for encoding the deviation of the actual length of the particular encoded frame 202. The coding parameter may be inserted into the packetized bitstream 103, in particular into the bitstream header 210 of the packetized bitstream 103 and / or into the segment header 221 of the segment 205 of the packetized bitstream 103 that the particular encoded frame 202 is part of.
[0136] Alternatively, or in addition, the method 320 may comprise (on the decoder side) extracting an encoded deviation of the actual length of the particular encoded frame 202 from a packetized bitstream 103 for the core encoder bitstream 102, wherein the packetized bitstream 103 comprises the core coder bitstream 102 and an identifier field 232 for the particular encoded frame 202 of the core coder bitstream 102, which is indicative of the encoded deviation. Furthermore, the method 320 may comprise decoding the encoded deviation in order to determine the deviation of the actual length of the particular encoded frame 202.
[0137] In particular, the method 320 may comprise extracting a coding parameter of a code, notably of a Golomb / Rice code, (that has been used for encoding the deviation) from the packetized bitstream 103, in particular from the bitstream header 210 of the packetized bitstream 103 and / or from the segment header 221 of the segment 205 of the packetized bitstream 103 that the particular encoded frame 202 is part of. The encoded deviation may then be decoded using the coding parameter. It should be noted that individual features and / or steps of the methods 300, 310, 320 may be combined in an arbitrary manner.
[0138] Furthermore, a device 100, 120 (notably an encoding device 100 or a decoding device 120) for determining the field length of an identifier field 232 for an encoded frame 202 of a core coder bitstream 102 is described. The device 110, 120 is configured to determine core coder data regarding the core coder bitstream 1 2 from the core coder bitstream 102, wherein the core coder bitstream 102 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of a set of waveform signals 101. Furthermore, the device 110, 120 is configured to determine the field length of an identifier field 232 for an encoded frame 202 of the core coder bitstream 102 based on the core coder data.
[0139] In addition, a further device 100, 120 (notably an encoding device 100 or a decoding device 120) for determining the field length of an identifier field 232 for an encoded frame 202 of a core coder bitstream 102 is described, wherein the core coder bitstream 102 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of a set of waveform signals 101. The device 100, 120 is configured to determine a reference length of an encoded frame 202 of the core coder bitstream 102, to determine a deviation range for a deviation of the length of a particular encoded frame 202 of the core coder bitstream 102 from the reference length, and to determine the field length of the identifier field 232 for the particular encoded frame 202 of the core coder bitstream 102 based on the deviation range.
[0140] Furthermore, a device 100. 120 (notably an encoding device 100 or a decoding device 120) for determining the length of an encoded frame 202 of a core coder bitstream 102 is described, wherein the core coder bitstream 102 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of a set of waveform signals 101. The device 100, 120 is configured to determine a reference length for a particular encoded frame 202 of the core coder bitstream 102, to determine a deviation of the actual length of the particular encoded frame 202 from the reference length, and to determine the actual length of the particular encoded frame 202 based on the deviation and based on the reference length.
[0141] Furthermore, a packetized bitstream 103 for a core coder bitstream 102 is described, wherein the packetized bitstream 103 comprises a sequence of encoded frames 202 from the core coder bitstream 102 for a corresponding sequence of frames of a set of waveform signals 101. The core coder bitstream 102 may be indicative of core coder data regarding the set of waveform signals 101 that is represented by the core coder bitstream 102. Furthermore, the packetized bitstream 103 may comprise (as part of a segment header 221)
[0142] • an identifier field 232 for each encoded frame 202 of the sequence of encoded frames 202; wherein the identifier fields 232 each have a field length that depends on the core coder data; and / or
[0143] • an identifier field 232 for each encoded frame 202 of the sequence of encoded frames 202; wherein the identifier fields 232 each have a field length that depends on a reference length for the respective encoded frame 202 of the core coder bitstream 102; and / or
[0144] • an identifier field 232 for each encoded frame 202 of the sequence of encoded frames 202; wherein the identifier fields 232 are indicative of a deviation of an actual length of the respective encoded frame 202 of the core coder bitstream 102 from a reference length for the respective encoded frame 202.
[0145] In addition, a core coder bitstream 102 which is indicative of a set of waveform signals 101 is described. The core coder bitstream 102 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of the set of waveform signals 101, wherein each encoded frame 202 from the sequence of encoded frames 202 may be encoded using a (pre-determined) frame syntax. The frame syntax of a particular encoded frame 202 may be indicative of
[0146] • whether the particular encoded frame 202 is encoded using a lossless or a lossy coding scheme; and / or
[0147] • the number of samples comprised within the particular encoded frame 202; and / or
[0148] • whether the encoded frame 202 is encoded in a transform domain, notably a DCT domain, or a time domain; and / or • whether or not the particular encoded frame 202 is encoded using a binary’ PCM representation of the samples of the corresponding frame of the sequence of frames of the set of waveform signals 101. Hence, a frame syntax is described which enables an encoded frame 202 to directly represent the original PCM representation of the corresponding (non-encoded) frame of the set of waveform signals 101. This selection may be done on a frame-by-frame basis. By doing this, it can be ensured that the length, notably the number of bits, of the encoded frame 202 is limited by the length, notably the number of bits, of the corresponding (non- encoded) frame (for any kind of waveform signal 101, e.g., comprising white noise).
[0149] The frame syntax preferably comprises, in particular corresponds to, the syntax as of Table 4 of the present document. As already outlined in the present document, a core coder bitstream 102 may be part of a packetized bitstream 103. Hence, a packetized bitstream 103 for a core coder bitstream 102 is described. The packetized bitstream 103 comprises a core coder bitstream 102 which is indicative of a set of waveform signals 101. As indicated above, the core coder bitstream 102 may comprise a sequence of encoded frames 202 for a corresponding sequence of frames of the set of waveform signals 101 . Each encoded frame 202 from the sequence of encoded frames 202 may comprise and / or may make use of a frame syntax. The frame syntax of a particular encoded frame 202 may be indicative of
[0150] • whether the particular encoded frame 202 is encoded using a lossless or a lossy coding scheme; and / or • a number of samples comprised within the particular encoded frame 202; and / or
[0151] • whether the encoded frame 202 is encoded in a transform domain or a time domain; and / or
[0152] • whether or not the particular encoded frame 202 is encoded using a binary PCM representation of samples of the corresponding frame.
[0153] Furthermore, the packetized bitstream 103 may comprise an identifier field 232 for each encoded frame 202 of the sequence of encoded frames 202. The identifier field 232 for a particular encoded frame 202 may comprise information for locating the particular encoded frame 202 within the sequence of encoded frames 202. As outlined in the present document, the core coder bitstream 102 and / or the packetized bitstream 103 may be indicative of core coder data regarding the core coder bitstream 102, notably regarding a coding scheme that has been used for encoding the sequence of encoded frames 202 from the core coder bitstream 102. The core coder data may be provided on a per encoded frame 202 basis.
[0154] The sequence of encoded frames 202 may be grouped into different segments 205. In other words, the sequence of encoded frames 202 may be grouped into a sequence of segments 205, wherein each segment 205 may comprise one or more encoded frames 202. A segment header 221 may be provided for each segment 205. The core coder data, notably the information regarding the encoding of the one or more encoded frames 202 of a segment 205, may be provided in a particularly efficient manner within the segment header 221 for this segment 205. In particular, the segment header 221 of a particular segment 205 may be indicative of
[0155] • whether the one or more encoded frames 202 of the particular segment 205 are encoded using a lossless or a lossy coding scheme; and / or
[0156] • the number of samples comprised within the one or more encoded frames 202 of the particular segment 205; and / or • whether the one or more encoded frames 202 of the particular segment 205 are encoded in a transform domain or a time domain; and / or
[0157] • whether or not the one or more encoded frames 202 of the particular segment 205 are encoded using a binary PCM representation of samples of the one or more encoded frames 202 of the particular segment 205.
[0158] Hence, a packetized bitstream 103 for a core coder bitstream 102 is described, wherein the packetized bitstream 103 comprises a sequence of encoded frames 202 from the core coder bitstream 102 for a corresponding sequence of frames of a set of waveform signals 101, wherein the sequence of encoded frames 202 are grouped into different segments 205, with each segment 205 comprising a segment header 221. The segment headers 221 for the different segments 205 may each comprise one or more of the above-mentioned (core coder) data regarding the one or more encoded frames 202 that are comprises within the respective segment 205. As outlined in the context of Fig. 2b the segment section 220 for a segment 205 of the packetized bitstream 103 typically comprises a segment header 221, wherein the segment header 221 may be located at the beginning or at the end of the segment section 220. The segment 205 may comprise multiple encoded frames 202, wherein each encoded frame 202 may be subdivided into one or more blocks.
[0159] In general, a waveform codec (as an example of a core codec or source codec) may perform encoding of a signal (e.g., a waveform signal, or a signal relating to time series data) using a predefined set of frame sizes, where each frame can be either coded independently or can be coded based on the previously encoded frames. The (fixed) interval between the two adjacent independently decodable frames may be referred to as an intra-period of a random-access interval. A random-access interval may comprise a single or multiple of such intra-periods. A random-access interval provides an independently decodable portion of the encoded (waveform) signal.
[0160] Furthermore, the waveform codec may subdivide every frame into one or more blocks (which may be referred to as bitstream elements), where the partitioning of frames into blocks may differ on a per-frame basis. A particular partitioning of a frame into blocks results in a sequence of blocks. If such a sequence of blocks is used to encode an independently decodable frame (IF), its first block is typically encoded independently, i.e., its first block may be an independent block. All subsequent blocks (and frames) may be encoded based on (e.g., with reference to) the one or more previously encoded block(s) (DF), i.e., may be dependent blocks. Accordingly, a random access interval (e g., a single intra period) may comprise one independent block (e.g., an independent frame block) that can be decoded without reference to any other blocks, and zero or more dependent blocks (e.g., dependent frame blocks) that can only be decoded with reference to one or more other blocks in the random access interval. In some cases, the random access interval may include one or more frames, of which the first comprises an independent block followed by zero or more dependent blocks, and of which the subsequent frames comprise zero independent blocks and one or more dependent blocks. In any case, a portion of the packetized bitstream 103, which corresponds to a particular random access interval can typically be independently decoded (in its entirety ), as noted above, while this may not be true for arbitrary ones of the blocks or frames of the particular random access interval.
[0161] In this configuration, while the individual blocks may have variable lengths, the random access interval and possibly the segment 205 which comprises the random access interval may have a fixed length. Furthermore, the aforementioned frames within a random access interval may each have a fixed length (e.g., a length from a predefined set of frame sizes).
[0162] Hence, an encoded frame 202 may be subdivided into one or more blocks. Furthermore, an encoded frame 202 may be an independent frame (IF) or a dependent frame (DF). A group of encoded frames 202 may comprise a first independent frame which is followed by zero, one or more dependent frames. This group of encoded frames 202 may be referred to an intra period. One or more intra periods may be grouped into a random access interval. A segment 205 may comprise one or more random access intervals.
[0163] While the above segment definition assumes a fixed-length segment, the present disclosure also is understood to cover potentially non-uniform length of the segments (or portions of coded time series data in general). Table 7 shows an example syntax for a segment header 221 for a segment 205 which comprises a certain number of blocks.
[0164] Table 7
[0165] The parameters of the syntax of Table 7 may be defined in the Semantics as follows Semantics of segment metadata rbspQ Segment metadata shall be used to obtain information on the coded data block sizes (IF SPT, DF SPT) and distortion measure per bitstream segment.
[0166] • By default, a segment refers to the whole coded bitstream
[0167] • A segment is also defined as a single or multiple of random access intervals in samples. A random access interval consists of a single or multiple of intra periods. i.e., a sequence of one IF SPT block followed by zero or more DF SPT blocks.
[0168] Note that a bitstream can be configured comprising only IF_SPT blocks.
[0169] The segment metadata packet is inserted at the end of each segment.
[0170] The distortion measure information shall be used for, but not limited to, the following cases:
[0171] Indicating or classifying the segment’s coding behavior, i.e., lossless, near lossless (small distortion) or lossy. • Deriving other distortion measure metrics, e g., percentage root mean square distortion (PRD), channel-normalized percentage root mean square distortion (CPRD).
[0172] • Enabling assessment of distortion at the decoder side without having access to the original signals. This use case is related to retrieval of lossy coded segments from a dataset by classifying and filtering of the segments in the context of further postprocessing such as Al-based training.
[0173] • Transcoding (encoding of decoded bistream) from lossless to lossy or tandem coding. The resulting distortion shall be updated accordingly. sm channel group parameter set id specifies the value of cgps channel group paramcter sct id for the CGPS in use. sm channel group id identifies the channel group to which the current segment metadata belongs. When sm channel group id is not present, it is inferred to be equal to 0. sm_signal_type indicates the signal type. sm_segment_stat_flag indicaates whether an information on the block sizes within a segment is present or not. sm num blocks per seginent indicates the number of payload blocks carried in a segment. sm_block_size[0] indicates the size / length of the first (n=0) coded data block (IF_SPT) in the segment. Subsequent block sizes (n>0) are encoded using the Golomb / Rice delta encoding method. sm_delta_GR_param specifies the parameter that controls the Golomb / Rice delta encoding of subsequent sm_block_size[n]. It uses the fixed-length (FL) binarization process having cMax = 15, see section Fixed-length binarization process below. sm_abs_delta for a given iteration n, specifies the absolute value of the difference between the n-th and (n-l)-th sm block size values. It uses the un-truncated Rice (UTR) binarization process having cRiceParam = sm_delta_GR_param, see section Untruncated Rice binarization process below. sm_sign_delta specifies the sign of sm_abs_delta. It uses the fixed-length (FL) binarization process having cMax = 1, see section Fixed-length binarization process below, sm distortion measure flag indicates whether the distortion measure metadata is present or not in the bitstream. This shall indicate the coded data coding mode, a lossless codec shall set this to ‘O’. sm_variance indicates the signal variance measured per channel in dB unit, 10 * log 10 (sm variance). sm squared error indicates the signal squared error measured per channel in dB unit, 10
[0174] * loglO (sm_squared_error). sm_num_distortion_measures indicates the number of other distortion measures calculated for the segment. sm distortion measure type indicates other types of distortion measure calculated in a segment, e.g., maximum absolute error (MAE), maximum amplitude error (MAX), sm distortion measure indicates the distortion measure value.
[0175] Untruncated Rice binarization process
[0176] Input to this process is a request for a Untruncated Rice (UTR) binarization and cRiceParam > 0.
[0177] Output of this process is the UTR binarization associating each value symbolVal with a corresponding bin string.
[0178] A UTR bin string is a concatenation of a prefix bin string and, when present, a suffix bin string.
[0179] For the derivation of the prefix bin string, the following applies:
[0180] - The prefix value of symbolVal, prefixVal, is derived as follows: prefixVal = symbolVal » cRiceParam
[0181] - The prefix of the TR bin string is specified as follows:
[0182] - The prefix bin string is a bit string of length prefixVal + 1 indexed by binldx. The bins for binldx less than prefixVal are equal to 1. The bin with binldx equal to prefixVal is equal to 0. Error! Reference source not found.8 illustrates the bin strings of this unary binarization for prefixVal.
[0183] The suffix of the TR bin string is present and it is derived as follows:
[0184] - The suffix value suffixVal is derived as follows: suffixVal = symbolVal - ( prefixVal « cRiceParam )
[0185] - The suffix of the UTR bin string is specified by invoking the fixed-length (FL) binarization process as specified in Fixed-length binarization process for suffixVal with a cMax value equal to (1 « cRiceParam ) - 1.
[0186] Fixed-length binarization process
[0187] Inputs to this process are a request for a fixed-length (FL) binarization and cMax. Output of this process is the FL binarization associating each value symbolVal with a corresponding bin string.
[0188] FL binarization is constructed by using the fixedLength-bit unsigned integer bin string of the symbol value symbolVal, where fixedLength = Ceil( Log2( cMax + 1 ) ). The indexing of bins for the FL binarization is such that the binldx = 0 relates to the most significant bit with increasing values of binldx towards the least significant bit.
[0189] Table 8 shows an example bin string of the unary binarization
[0190] Note that a syntax portion enclosed within the “if(sm_segment_stat_flag) { ... }” for sm_segment_stat_flag equals to 1, is another example of syntax implementing Table 3.
[0191] Fig. 4 illustrates a transmission device 400. The transmission device 400 may comprise a variety of units, including a transmitter unit and / or a receiver unit and / or a coding unit 100. The coding unit 100 may be composed of at least a processor configured to perform encoding and / or decoding processing. The coding unit 100 may encode and / or decode data in accordance to methods described therein. The transmission device 400 may transmit the coded data in the form of a bitstream to a device or to a digital storage medium or through, for example, a network in the form of a file or streaming. The digital storage medium may include various storage mediums such as USB-C, USB, SD, CD, DVD, Blu-ray, HDD, SSD, and equivalent technologies. The digital storage medium may also be part of the coding unit of the transmitter device 400. The transmission device 400 may include an element for generating the bitstream and / or a media fde and may include an element for transmission, e.g., through a variety of mediums (Bluetooth, broadcast / communication networks, Internet technologies and equivalents). The transmission may be implemented using a variety of technologies such as, for example, RF, light waves, infrared, Bluetooth, WiFi, and / or acoustic transmission devices.
[0192] Various modifications to the implementations described in this disclosure may be readily apparent to those having ordinary skill in the art. The general principles defined herein may be applied to other implementations without departing from the spirit or scope of this disclosure. Thus, the claims are not intended to be limited to the implementations shown herein, but are to be accorded the widest scope consistent with this disclosure, the principles and the novel features disclosed herein. The methods, devices, apparatuses and / or systems described in the present document may be implemented as software, firmware and / or hardware. Certain components may e.g., be implemented as software running on a digital signal processor or microprocessor. Other components may e.g., be implemented as hardware and or as application specific integrated circuits. The signals encountered in the described methods and systems may be stored on media such as random access memory or optical storage media. They may be transferred via networks, such as radio networks, satellite networks, wireless networks or wireline networks, e.g., the Internet. Typical devices making use of the methods and systems described in the present document are portable electronic devices or other consumer equipment which are used to store and / or render audio signals.
[0193] Enumerated Example Embodiments
[0194] Various Aspects and implementations of the invention may also be appreciated from the following enumerated example embodiments (EEEs), which are not claims. EEE 1. A method 300 for determining a field length of an identifier field 232 for an encoded frame 202 of a core coder bitstream 102; wherein the method 300 comprises
[0195] - determining 301 core coder data regarding the core coder bitstream 102 from the core coder bitstream 102; wherein the core coder bitstream 102 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of a set of waveform signals 101; and
[0196] - determining 302 the field length of an identifier field 232 for an encoded frame 202 of the core coder bitstream 102 based on the core coder data.
[0197] EEE 2. The method 300 of EEE 1, wherein
[0198] - the core coder data is indicative of a characteristic of the set of waveform signals 101 that is represented by the core coder bitstream 102; and / or
[0199] - the core coder data is extracted from a core header 201 of the core coder bitstream 102; and / or
[0200] - the core coder data is extracted from an encoded frame 202, in particular from a frame syntax of an encoded frame 202, of the core coder bitstream 102.
[0201] EEE 3. The method 300 of any previous EEE, wherein the method 300 comprises - determining as core coder data a number P of channels of the set of waveform signals 101; and
[0202] - determining the field length of the identifier field 232 based on the number P of channels of the set of waveform signals 101. EEE 4. The method 300 of any previous EEE, wherein the method 300 comprises
[0203] - determining as core coder data a number M of samples per frame of the set of waveform signals 101; and
[0204] - determining the field length of the identifier field 232 based on the number M of samples per frame of the set of waveform signals 101.
[0205] EEE 5. The method 300 of any previous EEE, wherein the method 300 comprises
[0206] - determining as core coder data a gain parameter which is indicative of a degree of compression and / or of a degree of quantization that has been used by a core coder 111 for generating the sequence of encoded frames 202 based on the corresponding sequence of frames of the set of waveform signals 101 ; and
[0207] - determining the field length of the identifier field 232 based on the gain parameter. EEE 6. The method 300 of any previous EEE, wherein the method 300 comprises
[0208] - determining as core coder data a flag indicating that a particular encoded frame 202 of the core coder bitstream 102 is a pulse code modulation representation of and / or is equal to the corresponding frame of the set of waveform signals 101; and
[0209] - determining the field length of the identifier field 232 and / or the length of the particular encoded frame 202 based on a length of the corresponding frame of the set of waveform signals 101. EEE 7. The method 300 of any previous EEE, wherein the method 300 comprises, for each encoded frame 202 of the sequence of encoded frames 202 of the core coder bitstream 102,
[0210] - determining as core coder data a length, notably a number of samples, of the corresponding frame of the set of waveform signals 101; wherein the core coder data is notably extracted from a core header 201 of the core coder bitstream
[0211] 102, from a segment header 221 of a segment 205 of the core coder bitstream 102 that the encoded frame 202 is part of, or from the encoded frame 202, notably from a frame syntax of the encoded frame 202, within the core coder bitstream 102; and - determining the field length of the identifier field 232 for the encoded frame
[0212] 202 based on the determined length of the corresponding frame of the set of waveform signals 101.
[0213] EEE 8. The method 300 of any previous EEE, wherein - the method 300 comprises determining the field length of the identifier field
[0214] 232 based on log2P*M*Q;
[0215] - P is a number of channels of the set of waveform signals 101 ;
[0216] - M is a number of samples per frame of the set of waveform signals 101; and
[0217] - Q is a number of bits per sample of a waveform signal 101 of the set of waveform signals 101.
[0218] EEE 9. The method 300 of EEE 8, wherein the field length of the identifier field 232 is determined based on. notably is determined to be, the rounded up integer of the value given by log2P*M*Q.
[0219] EEE 10. The method 300 of any previous EEE, wherein the method 300 comprises,
[0220] - determining a length, notably a number of bits, of a particular encoded frame 202; and
[0221] - encoding the length, notably the number of bits, into the identifier field 232 of the particular encoded frame 202.
[0222] EEE 11. The method 300 of any previous EEE, wherein - the method 300 comprises generating a packetized bitstream 103 based on the core encoder bitstream 102; and
[0223] - the packetized bitstream 103 comprises the core coder bitstream 102 and an identifier field 232 of the determined field length for each encoded frame 202 of the core coder bitstream 102.
[0224] EEE 12. The method 300 of any previous EEE, wherein
[0225] - the sequence of encoded frames 202 is grouped into a sequence of segments 205;
[0226] - each segment 205 comprises one or more encoded frames 202; - the method 300 comprises
[0227] - determining a number N of encoded frames 202 comprised within a particular segment 205; and
[0228] - generating a packetized bitstream 103 based on the core encoder bitstream 102; wherein the packetized bitstream 103 comprises a segment header 221 for the particular segment 205; wherein the segment header 221 comprises N identifier fields 232 for the corresponding N encoded frames 202 of the segment 205.
[0229] EEE 13. The method 300 of EEE 12, wherein the segment header 221 for the particular segment 205 comprises a frame field 231 which is indicative of the number N of encoded frames 202 comprised within the particular segment 205. EEE 14. The method 300 of any of EEEs 12 to 13, wherein the N identifier fields 232 are each of the determined field length.
[0230] EEE 15. The method 300 of EEEs 1 to 9, wherein the method 300 comprises - locating an identifier field 232 comprised within a packetized bitstream 103 for the core coder bitstream 102 based on the determined field length of the identifier field 232; and
[0231] - extracting frame information regarding the particular encoded frame 202 that the located identifier field 232 is associated with from the located identifier field 232.
[0232] EEE 16. The method 300 of EEE 15, wherein the frame information
[0233] - indicates a location of the particular encoded frame 202 within the packetized bitstream 103; and / or - indicates a length, notably a number of bits, of the particular encoded frame
[0234] 202.
[0235] EEE 17. A method 310 for determining a field length of an identifier field 232 for an encoded frame 202 of a core coder bitstream 102; wherein the core coder bitstream 102 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of a set of waveform signals 101; wherein the method 310 comprises
[0236] - determining 311 a reference length of an encoded frame 202 of the core coder bitstream 102;
[0237] - determining 312 a deviation range for a deviation of the length of a particular encoded frame 202 of the core coder bitstream 102 from the reference length; and
[0238] - determining 313 the field length of the identifier field 232 for the particular encoded frame 202 of the core coder bitstream 102 based on the deviation range.
[0239] EEE 18. The method 310 of EEE 17, wherein the method 31 comprises determining the reference length based on
[0240] - a target bit rate of the core coder bitstream 102; and / or - a gain parameter which is indicative of a degree of compression and / or of a degree of quantization that has been used by a core coder 11 1 for generating the sequence of encoded frames 202 based on the corresponding sequence of frames of the set of waveform signals 101.
[0241] EEE 19. The method 310 of any of EEEs 17 to 18, wherein the method 310 comprises determining the reference length based on the actual length of one or more previous encoded frames 202 which precede the particular encoded frame 202 within the sequence of encoded frames 202 of the core coder bitstream 102.
[0242] EEE 20. The method 310 of any of EEEs 17 to 19, wherein the method 310 comprises
[0243] - determining a deviation parameter, notably from the core coder bitstream 102 and / or from a packetized bitstream 1039 that comprises the core coder bitstream 102; and
[0244] - determining the deviation range based on the deviation parameter.
[0245] EEE 21. The method 310 of any of EEEs 17 to 20, wherein the method 310 comprises, - determining a differential value, notably a number of bits, of the deviation of the length of the particular encoded frame 202 of the core coder bitstream 102 from the reference length; and
[0246] - encoding the differential value, notably the number of bits, into the identifier field 232 for the particular encoded frame 202; or - extracting the differential value, notably a number of bits, of the deviation of the length of the particular encoded frame 202 of the core coder bitstream 102 from the reference length from the identifier field 232 for the particular encoded frame 202 that is comprised within a packetized bitstream 103 of the core coder bitstream 102.
[0247] EEE 22. The method 310 of any of EEEs 17 to 21 , wherein the method 310 comprises
[0248] - determining, notably based on a flag, whether the length of the particular encoded frame 202 is to be indicated within the identifier field 232 - as a differential value relative to the reference length; or
[0249] - as an absolute value;
[0250] - determining the field length of the identifier field 232 for the particular encoded frame 202 based on the deviation range, if the flag indicates that the length of the particular encoded frame 202 is to be indicated as a differential value; and
[0251] - determining the field length of the identifier field 232 for the particular encoded frame 202 based on core coder data according the method 300 of any of EEEs 1 to 9, if the flag indicates that the length of the particular encoded frame 202 is to be indicated as an absolute value; wherein the core coder data is extracted from the core coder bitstream 102.
[0252] EEE 23. A method 320 for determining a length of an encoded frame 202 of a core coder bitstream 102; wherein the core coder bitstream 102 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of a set of waveform signals 101; wherein the method 320 comprises
[0253] - determining 321 a reference length for a particular encoded frame 202 of the core coder bitstream 102;
[0254] - determining 322 a deviation of the actual length of the particular encoded frame 202 from the reference length; and
[0255] - determining 323 the actual length of the particular encoded frame 202 based on the deviation and based on the reference length.
[0256] EEE 24. The method 320 of EEE 23, wherein the method 320 comprises determining the reference length based on the actual length of one or more previous encoded frames 202 which precede the particular encoded frame 202 within the sequence of encoded frames 202 of the core coder bitstream 102.
[0257] EEE 25. The method 320 of any of EEEs 23 to 24, wherein the deviation of the actual length of the particular encoded frame 202 is encoded
[0258] - using an entropy coding scheme;
[0259] - using a lossless coding scheme; and / or
[0260] - using a Golomb / Rice code. EEE 26. The method 320 of any of EEEs 23 to 25, wherein the method 320 comprises,
[0261] - encoding the deviation of the actual length of the particular encoded frame 202; and
[0262] - generating a packetized bitstream 103 based on the core encoder bitstream 102; wherein the packetized bitstream 103 comprises the core coder bitstream 102 and an identifier field 232 for the particular encoded frame 202 of the core coder bitstream 102, which is indicative of the encoded deviation.
[0263] EEE 27. The method 320 of EEE 26, wherein the method 320 comprises.
[0264] - determining a coding parameter of a code, notably of a Golomb / Rice code, which is used for encoding the deviation of the actual length of the particular encoded frame 202; and
[0265] - inserting the coding parameter into the packetized bitstream 103, in particular into a bitstream header 210 of the packetized bitstream 103 and / or into a segment header 221 of a segment 205 of the packetized bitstream 103 that the particular encoded frame 202 is part of.
[0266] EEE 28. The method 320 of any of EEEs 23 to 25, wherein the method 320 comprises,
[0267] - extracting an encoded deviation of the actual length of the particular encoded frame 202 from a packetized bitstream 103 for the core encoder bitstream 102; wherein the packetized bitstream 103 comprises the core coder bitstream 102 and an identifier field 232 for the particular encoded frame 202 of the core coder bitstream 102, which is indicative of the encoded deviation; and
[0268] - decoding the encoded deviation in order to determine the deviation of the actual length of the particular encoded frame 202.
[0269] EEE 29. The method 320 of EEE 28, wherein the method 320 comprises,
[0270] - extracting a coding parameter of a code, notably of a Golomb / Rice code, from the packetized bitstream 103, in particular from a bitstream header 210 of the packetized bitstream 103 and / or from a segment header 221 of a segment 205 of the packetized bitstream 103 that the particular encoded frame 202 is part of; and - decoding the encoded deviation using the coding parameter.
[0271] EEE 30. A device 100, 120 for determining a field length of an identifier field 232 for an encoded frame 202 of a core coder bitstream 102; wherein the device 110, 120 is configured to
[0272] - determine core coder data regarding the core coder bitstream 102 from the core coder bitstream 102; wherein the core coder bitstream 102 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of a set of waveform signals 101; and - determine the field length of an identifier field 232 for an encoded frame 202 of the core coder bitstream 102 based on the core coder data.
[0273] EEE 31. A device 100, 120 for determining a field length of an identifier field 232 for an encoded frame 202 of a core coder bitstream 102; wherein the core coder bitstream 1 2 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of a set of waveform signals 101; wherein the device 100, 120 is configured to
[0274] - determine a reference length of an encoded frame 202 of the core coder bitstream 102; - determine a deviation range for a deviation of the length of a particular encoded frame 202 of the core coder bitstream 102 from the reference length; and
[0275] - determine the field length of the identifier field 232 for the particular encoded frame 202 of the core coder bitstream 102 based on the deviation range. EEE 32. A device 100, 120 for determining a length of an encoded frame 202 of a core coder bitstream 102; wherein the core coder bitstream 102 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of a set of waveform signals 101; wherein the device 100, 120 is configured to
[0276] - determine a reference length for a particular encoded frame 202 of the core coder bitstream 102;
[0277] - determine a deviation of the actual length of the particular encoded frame 202 from the reference length; and - determine the actual length of the particular encoded frame 202 based on the deviation and based on the reference length.
[0278] EEE 33. A packetized bitstream 103 for a core coder bitstream 102; wherein the packetized bitstream 103 comprises,
[0279] - a sequence of encoded frames 202 from the core coder bitstream 102 for a corresponding sequence of frames of a set of waveform signals 101; wherein the core coder bitstream 102 is indicative of core coder data regarding the set of waveform signals 101 that is represented by the core coder bitstream 102; and - an identifier field 232 for each encoded frame 202 of the sequence of encoded frames 202; wherein the identifier fields 232 each have a field length that depends on the core coder data.
[0280] EEE 34. A packetized bitstream 103 for a core coder bitstream 102; wherein the packetized bitstream 103 comprises,
[0281] - a sequence of encoded frames 202 from the core coder bitstream 102 for a corresponding sequence of frames of a set of w aveform signals 101; and
[0282] - an identifier field 232 for each encoded frame 202 of the sequence of encoded frames 202; wherein the identifier fields 232 each have a field length that depends on a reference length for the respective encoded frame 202 of the core coder bitstream 102.
[0283] EEE 35. A packetized bitstream 103 for a core coder bitstream 102; wherein the packetized bitstream 103 comprises, - a sequence of encoded frames 202 from the core coder bitstream 102 for a corresponding sequence of frames of a set of waveform signals 101; and
[0284] - an identifier field 232 for each encoded frame 202 of the sequence of encoded frames 202; wherein the identifier fields 232 are indicative of a deviation of an actual length of the respective encoded frame 202 of the core coder bitstream 102 from a reference length for the respective encoded frame 202.
[0285] EEE 36. A core coder bitstream 102 which is indicative of a set of waveform signals 101; wherein - the core coder bitstream 102 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of the set of waveform signals 101;
[0286] - each encoded frame 202 from the sequence of encoded frames 202 comprises a frame syntax; and
[0287] - the frame syntax of a particular encoded frame 202 is indicative of
[0288] - whether the particular encoded frame 202 is encoded using a lossless or a lossy coding scheme; and / or
[0289] - a number of samples comprised within the particular encoded frame 202; and / or
[0290] - whether the encoded frame 202 is encoded in a transform domain or a time domain; and / or
[0291] - whether or not the particular encoded frame 202 is encoded using a binary PCM representation of samples of the corresponding frame.
[0292] EEE 37. The core coder bitstream 102 according to EEE 36, wherein the frame syntax comprises, in particular corresponds to, a syntax as of Table 4 of the present document.
[0293] EEE 38. A packetized bitstream 103 for a core coder bitstream 102; wherein the packetized bitstream 103 comprises,
[0294] - a core coder bitstream 102 which is indicative of a set of waveform signals 101; wherein
[0295] - the core coder bitstream 102 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of the set of waveform signals 101;
[0296] - each encoded frame 202 from the sequence of encoded frames 202 comprises a frame syntax; and
[0297] - the frame syntax of a particular encoded frame 202 is indicative of
[0298] - whether the particular encoded frame 202 is encoded using a lossless or a lossy coding scheme; and / or
[0299] - a number of samples comprised within the particular encoded frame 202; and / or - whether the encoded frame 202 is encoded in a transform domain or a time domain; and / or
[0300] - whether or not the particular encoded frame 202 is encoded using a binary PCM representation of samples of the corresponding frame; and
[0301] - an identifier field 232 for each encoded frame 202 of the sequence of encoded frames 202; wherein the identifier field 232 for an encoded frame 202 comprises information for locating the encoded frame 202 within the sequence of encoded frames 202.
[0302] EEE 39. A packetized bitstream 103 for a core coder bitstream 102; wherein the packetized bitstream 103 comprises,
[0303] - a sequence of encoded frames 202 from the core coder bitstream 102 for a corresponding sequence of frames of a set of waveform signals 101;
[0304] - the sequence of encoded frames 202 is grouped into a sequence of segments 205;
[0305] - each segment 205 comprises one or more encoded frames 202;
[0306] - the packetized bitstream 103 comprises a segment header 221 for a particular segment 205 from the sequence of segments 205; and
[0307] - the segment header 221 is indicative of
[0308] - whether the one or more encoded frames 202 of the particular segment 205 are encoded using a lossless or a lossy coding scheme; and / or
[0309] - a number of samples comprised within the one or more encoded frames 202 of the particular segment 205; and / or
[0310] - whether the one or more encoded frames 202 of the particular segment 205 are encoded in a transform domain or a time domain; and / or
[0311] - whether or not the one or more encoded frames 202 of the particular segment 205 are encoded using a binary PCM representation of samples of the one or more encoded frames 202 of the particular segment 205.
Claims
CLAIMS1 . A method 300 of determining a field length of an identifier field 232 for an encoded frame 202 of a core coder bitstream 102, wherein the identifier field 232 is used for indicating a length of the encoded frame 202, the method 300 comprises:- determining 301 core coder data regarding the core coder bitstream 102 from the core coder bitstream 102, wherein the core coder bitstream 102 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of a set of waveform signals 101; and - determining 302 the field length of the identifier field 232 for the encoded frame 202 of the core coder bitstream 102 based on the core coder data.
2. The method 300 of claim 1, wherein- the core coder data is indicative of a characteristic of the set of waveform signals 101 that is represented by the core coder bitstream 102; and / or- the core coder data is extracted from a core header 201 of the core coder bitstream 102; and / or- the core coder data is extracted from an encoded frame 202, in particular from a frame syntax of an encoded frame 202, of the core coder bitstream 102.
3. The method 300 of any previous claim, wherein the method 300 comprises- determining as core coder data a number P of channels of the set of waveform signals 101; and- determining the field length of the identifier field 232 based on the number P of channels of the set of waveform signals 101.
4. The method 300 of any previous claim, wherein the method 300 comprises- determining as core coder data a number M of samples per frame of the set of waveform signals 101; and - determining the field length of the identifier field 232 based on the number M of samples per frame of the set of waveform signals 101.
5. The method 300 of any previous claim, wherein the method 300 comprises- determining as core coder data a gain parameter which is indicative of a degree of compression and / or of a degree of quantization that has been used by a core coder 111 for generating the sequence of encoded frames 202 based on the corresponding sequence of frames of the set of waveform signals 101; and- determining the field length of the identifier field 232 based on the gain parameter.
6. The method 300 of any previous claim, wherein the method 300 comprises- determining as core coder data a flag indicating that a particular encoded frame 202 of the core coder bitstream 102 is a pulse code modulation representation of and / or is equal to the corresponding frame of the set of waveform signals 101; and- determining the field length of the identifier field 232 and / or the length of the particular encoded frame 202 based on a length of the corresponding frame of the set of waveform signals 101.
7. The method 300 of any previous claim, wherein the method 300 comprises, for each encoded frame 202 of the sequence of encoded frames 202 of the core coder bitstream 102,- determining as core coder data a length, notably a number of samples, of the corresponding frame of the set of waveform signals 101; wherein the core coder data is notably extracted from a core header 201 of the core coder bitstream102, from a segment header 221 of a segment 205 of the core coder bitstream 102 that the encoded frame 202 is part of, or from the encoded frame 202, notably from a frame syntax of the encoded frame 202, within the core coder bitstream 102; and- determining the field length of the identifier field 232 for the encoded frame 202 based on the determined length of the corresponding frame of the set of waveform signals 101.
8. The method 300 of any previous claim, wherein- the method 300 comprises determining the field length of the identifier field 232 based on log2P*M*Q;- P is a number of channels of the set of waveform signals 101;- M is a number of samples per frame of the set of waveform signals 101 ; and- Q is a number of bits per sample of a waveform signal 101 of the set of waveform signals 101.
9. The method 300 of claim 8, wherein the field length of the identifier field 232 is determined based on, notably is determined to be, the rounded up integer of the value given by log2P*M*Q.
10. The method 300 of any previous claim, wherein the method 300 comprises,- determining a length, notably a number of bits, of a particular encoded frame 202; and- encoding the length, notably the number of bits, into the identifier field 232 of the particular encoded frame 202.
11. The method 300 of any previous claim, wherein- the method 300 comprises generating a packetized bitstream 103 based on the core encoder bitstream 102; and- the packetized bitstream 103 comprises the core coder bitstream 102 and an identifier field 232 of the determined field length for each encoded frame 202 of the core coder bitstream 102.
12. The method 300 of any previous claim, wherein- the sequence of encoded frames 202 is grouped into a sequence of segments 205;- each segment 205 comprises one or more encoded frames 202;- the method 300 comprises- determining a number N of encoded frames 202 comprised within a particular segment 205; and- generating a packetized bitstream 103 based on the core encoder bitstream 102; wherein the packetized bitstream 103 comprises a segment header 221 for the particular segment 205; wherein the segment header 221 comprises N identifier fields 232 for the corresponding Nencoded frames 202 of the segment 205.
13. The method 300 of claim 12, wherein the segment header 221 for the particular segment 205 comprises a frame field 231 which is indicative of the number N of encoded frames 202 comprised within the particular segment 205.
14. The method 300 of any of claims 12 to 13, wherein the N identifier fields 232 are each of the determined field length.
15. The method 300 of claims 1 to 9, wherein the method 300 comprises- locating an identifier field 232 comprised within a packetized bitstream 103 for the core coder bitstream 102 based on the determined field length of the identifier field 232; and- extracting frame information regarding the particular encoded frame 202 that the located identifier field 232 is associated with from the located identifier field 232.
16. The method 300 of claim 15. wherein the frame information- indicates a location of the particular encoded frame 202 within the packetized bitstream 103; and / or- indicates a length, notably a number of bits, of the particular encoded frame 202.
17. A method 310 of determining a field length of an identifier field 232 for an encoded frame 202 of a core coder bitstream 102, wherein the identifier field 232 is used for indicating a length of the encoded frame 202, wherein the method 310 comprises:- determining 311 a reference length of an encoded frame 202 of the core coder bitstream 102, wherein the core coder bitstream 102 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of a set of waveform signals 101;- determining 312 a deviation range for a deviation of the length of a particular encoded frame 202 of the core coder bitstream 102 from the reference length; and- determining 313 the field length of the identifier field 232 for the particular encoded frame 202 of the core coder bitstream 102 based on the deviation range.
18. The method 310 of claim 17. wherein the method 310 comprises determining the reference length based on- a target bit rate of the core coder bitstream 102; and / or- a gain parameter which is indicative of a degree of compression and / or of a degree of quantization that has been used by a core coder 111 for generating the sequence of encoded frames 202 based on the corresponding sequence of frames of the set of waveform signals 101.
19. The method 310 of any of claims 17 to 18. wherein the method 310 comprises determining the reference length based on the actual length of one or more previous encoded frames 202 which precede the particular encoded frame 202 within the sequence of encoded frames 202 of the core coder bitstream 102.
20. The method 310 of any of claims 17 to 19. wherein the method 310 comprises- determining a deviation parameter, notably from the core coder bitstream 102 and / or from a packetized bitstream 1039 that comprises the core coder bitstream 102; and- determining the deviation range based on the deviation parameter.
21. The method 310 of any of claims 17 to 20, wherein the method 310 comprises, - determining a differential value, notably a number of bits, of the deviation of the length of the particular encoded frame 202 of the core coder bitstream 102 from the reference length; and- encoding the differential value, notably the number of bits, into the identifier field 232 for the particular encoded frame 202; or - extracting the differential value, notably a number of bits, of the deviation of the length of the particular encoded frame 202 of the core coder bitstream 102 from the reference length from the identifier field 232 for the particular encoded frame 202 that is comprised within a packetized bitstream 103 of the core coderbitstream 102.
22. The method 310 of any of claims 17 to 21, wherein the method 310 comprises- determining, notably based on a flag, whether the length of the particular encoded frame 202 is to be indicated within the identifier field 232- as a differential value relative to the reference length; or- as an absolute value;- determining the field length of the identifier field 232 for the particular encoded frame 202 based on the deviation range, if the flag indicates that the length of the particular encoded frame 202 is to be indicated as a differential value; and- determining the field length of the identifier field 232 for the particular encoded frame 202 based on core coder data according the method 300 of any of claims1 to 9, if the flag indicates that the length of the particular encoded frame 202 is to be indicated as an absolute value; wherein the core coder data is extracted from the core coder bitstream 102.
23. A method 320 for determining a length of an encoded frame 202 of a core coder bitstream 102; wherein the core coder bitstream 102 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of a set of waveform signals 101; wherein the method 320 comprises:- determining 321 a reference length for a particular encoded frame 202 of the core coder bitstream 102;- determining 322 a deviation of the actual length of the particular encoded frame 202 from the reference length; and - determining 323 the actual length of the particular encoded frame 202 based on the deviation and based on the reference length.
24. The method 320 of claim 23, wherein the method 320 comprises determining the reference length based on the actual length of one or more previous encoded frames 202 which precede the particular encoded frame 202 within the sequence of encoded frames 202 of the core coder bitstream 102.
25. The method 320 of any of claims 23 to 24. wherein the deviation of the actual length of the particular encoded frame 202 is encoded- using an entropy coding scheme;- using a lossless coding scheme; and / or- using a Golomb / Rice code.
26. The method 320 of any of claims 23 to 25, wherein the method 320 comprises,- encoding the deviation of the actual length of the particular encoded frame 202; and- generating a packetized bitstream 103 based on the core encoder bitstream 102; wherein the packetized bitstream 103 comprises the core coder bitstream 102 and an identifier field 232 for the particular encoded frame 202 of the core coder bitstream 102, which is indicative of the encoded deviation.
27. The method 320 of claim 26, wherein the method 320 comprises,- determining a coding parameter of a code, notably of a Golomb / Rice code, which is used for encoding the deviation of the actual length of the particular encoded frame 202; and- inserting the coding parameter into the packetized bitstream 103, in particular into a bitstream header 210 of the packetized bitstream 103 and / or into a segment header 221 of a segment 205 of the packetized bitstream 103 that the particular encoded frame 202 is part of.
28. The method 320 of any of claims 23 to 25, wherein the method 320 comprises,- extracting an encoded deviation of the actual length of the particular encoded frame 202 from a packetized bitstream 103 for the core encoder bitstream 102; wherein the packetized bitstream 103 comprises the core coder bitstream 102 and an identifier field 232 for the particular encoded frame 202 of the core coder bitstream 102, which is indicative of the encoded deviation; and- decoding the encoded deviation in order to determine the deviation of the actual length of the particular encoded frame 202.
29. The method 320 of claim 28. wherein the method 320 comprises,- extracting a coding parameter of a code, notably of a Golomb / Rice code, from the packetized bitstream 103, in particular from a bitstream header 210 of the packetized bitstream 103 and / or from a segment header 221 of a segment 205 of the packetized bitstream 103 that the particular encoded frame 202 is part of; and- decoding the encoded deviation using the coding parameter.
30. An apparatus, comprising one or more processors and a memory7coupled to the one or more processors and storing instructions for the one or more processors, wherein the one or more processors are adapted to carry out the method according to any one of claims 1 to 29.
31. A computer program comprising instructions that, when executed by one or more processors, cause the one or more processors to carry out the method according to any one of claims 1 to 29.
32. A computer-readable storage medium storing the computer program according to claim 31.
33. A packetized bitstream 103 for a core coder bitstream 102; wherein the packetized bitstream 103 comprises,- a sequence of encoded frames 202 from the core coder bitstream 102 for a corresponding sequence of frames of a set of waveform signals 101; wherein the core coder bitstream 102 is indicative of core coder data regarding the set of waveform signals 101 that is represented by the core coder bitstream 102; and- an identifier field 232 for each encoded frame 202 of the sequence of encoded frames 202: wherein the identifier fields 232 each have a field length that depends on the core coder data.
34. A packetized bitstream 103 for a core coder bitstream 102; wherein the packetized bitstream 103 comprises.- a sequence of encoded frames 202 from the core coder bitstream 102 for a corresponding sequence of frames of a set of waveform signals 101; and- an identifier field 232 for each encoded frame 202 of the sequence of encoded frames 202; wherein the identifier fields 232 each have a field length that depends on a reference length for the respective encoded frame 202 of the core coder bitstream 102.
35. A packetized bitstream 103 for a core coder bitstream 102; wherein the packetized bitstream 103 comprises,- a sequence of encoded frames 202 from the core coder bitstream 102 for a corresponding sequence of frames of a set of w aveform signals 101; and - an identifier field 232 for each encoded frame 202 of the sequence of encoded frames 202; wherein the identifier fields 232 are indicative of a deviation of an actual length of the respective encoded frame 202 of the core coder bitstream 102 from a reference length for the respective encoded frame 202.
36. A core coder bitstream 102 which is indicative of a set of waveform signals 101 ; wherein- the core coder bitstream 102 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of the set of waveform signals 101;- each encoded frame 202 from the sequence of encoded frames 202 comprises a frame syntax; and- the frame syntax of a particular encoded frame 202 is indicative of- whether the particular encoded frame 202 is encoded using a lossless or a lossy coding scheme; and / or- a number of samples comprised within the particular encoded frame 202; and / or- whether the encoded frame 202 is encoded in a transform domain or a time domain; and / or- whether or not the particular encoded frame 202 is encoded using a binary PCM representation of samples of the corresponding frame.
37. The core coder bitstream 102 according to claim 36, wherein the frame syntax comprises, in particular corresponds to, a syntax as of Table 4 of the present document.
38. A packetized bitstream 103 for a core coder bitstream 102; wherein the packetized bitstream 103 comprises.- a core coder bitstream 102 which is indicative of a set of waveform signals 101 ; wherein- the core coder bitstream 102 comprises a sequence of encoded frames 202 for a corresponding sequence of frames of the set of waveform signals 101;- each encoded frame 202 from the sequence of encoded frames 202 comprises a frame syntax; and- the frame syntax of a particular encoded frame 202 is indicative of- whether the particular encoded frame 202 is encoded using a lossless or a lossy coding scheme; and / or- a number of samples comprised within the particular encoded frame 202; and / or- whether the encoded frame 202 is encoded in a transform domain or a time domain; and / or- whether or not the particular encoded frame 202 is encoded using a binary PCM representation of samples of the corresponding frame; and- an identifier field 232 for each encoded frame 202 of the sequence of encoded frames 202; wherein the identifier field 232 for an encoded frame 202 comprises information for locating the encoded frame 202 within the sequence of encoded frames 202.
39. A packetized bitstream 103 for a core coder bitstream 102; wherein the packetized bitstream 103 comprises,- a sequence of encoded frames 202 from the core coder bitstream 102 for a corresponding sequence of frames of a set of waveform signals 101;- the sequence of encoded frames 202 is grouped into a sequence of segments 205;- each segment 205 comprises one or more encoded frames 202;- the packetized bitstream 103 comprises a segment header 221 for a particular segment 205 from the sequence of segments 205; and- the segment header 221 is indicative of- whether the one or more encoded frames 202 of the particular segment 205 are encoded using a lossless or a lossy coding scheme; and / or- a number of samples comprised within the one or more encoded frames 202 of the particular segment 205; and / or- whether the one or more encoded frames 202 of the particular segment 205 are encoded in a transform domain or a time domain; and / or whether or not the one or more encoded frames 202 of the particular segment 205 are encoded using a binary PCM representation of samples of the one or more encoded frames 202 of the particular segment 205.