Valid

GB/T 33475.5-2024Information technology - High efficiency multimedia coding - Part 5: Reference software (English PDF)

信息技术 高效多媒体编码 第5部分:参考软件

Open the GB/T 33475.5-2024 preview as PDF

Preview — first pages of GB/T 33475.5-2024 (full document: 16 pages)

This is a limited preview

Buy now to download the full PDF (16 pages)

Issued by

SAMR; SAC

Level / Type

National · Recommended

Issue date

May 28, 2024

Implementation date

December 1, 2024

Scope

GB/T 33475.5-2024 is the English-translated version of 信息技术 高效多媒体编码 第5部分:参考软件.

GB/T 33475.5-2024 is the reference software part of the GB/T 33475 series on high efficiency multimedia coding, and it defines the software that meets the requirements of GB/T 33475.2-2024 for video and GB/T 33475.3-2018 for audio. The document is aimed at the development, debugging and acceptance of systems such as digital television broadcasting, interactive storage media, direct broadcast satellite video, multimedia mail, multimedia services over packet networks, real-time communication and remote video surveillance. Clauses 6 and 7 identify the video and audio decoding software by its position in the source tree and record that it is written in C; those two decoders are the normative part, the software counting as normative because it implements the decoding process correctly, while its particular implementation techniques do not. Annex A locates the video and audio encoders, which are provided as a way of obtaining a conforming bitstream and are neither optimized nor normative as to encoding technique. Annexes B and C carry the working instructions: how to build under Visual Studio and under gcc, the encoder and decoder command lines, the configuration parameters for input and output files, largest coding unit, I-frame interval, quantization parameters, search range and interlaced or progressive handling, the audio format, bit rate, codec and profile switches, and the console output that each tool prints.

Document preview — GB/T 33475.5-2024

National Standard of the People's Republic of China

ICS
35.040
Classification
L 71

Issued by: State Administration for Market Regulation; Standardization Administration of the PRC

Contents

  • 1 Scope1
  • 2 Normative references1
  • 3 Terms and definitions1
  • 4 Abbreviated terms1
  • 5 Overview1
  • 6 Video reference software1
  • 7 Audio reference software2
  • Annex A (informative) Encoding software3
  • Annex B (informative) Detailed instructions for using the video reference software4
  • Annex C (informative) Detailed instructions for using the audio reference software8

Foreword Foreword

The document is drafted in accordance with the rules given in GB/T 1.1-2020, Directives for standardization—Part 1: Rules for the structure and drafting of standardizing documents.

It is Part 5 of GB/T 33475, Information technology—High efficiency multimedia coding. The following parts of GB/T 33475 have been published: Part 1: Systems; Part 2: Video; Part 3: Audio; Part 4: Conformance testing; Part 5: Reference software; Part 6: Intelligent media transport; Part 7: Image file format. In this list the entries for Part 5 and Part 7 are printed with a semicolon in place of the colon that separates the part number from the part title.

The document was proposed by and is under the jurisdiction of the National Information Technology Standardization Technical Committee (SAC/TC 28).

Introduction Introduction

GB/T 33475 is intended to establish methods for the efficient compression of digital audio and video media and is planned in seven parts. Part 1: Systems establishes the coding method at the systems layer of digital audio and video media. Part 2: Video establishes the method of efficient video compression. Part 3: Audio establishes the method of efficient audio compression. Part 4: Conformance testing establishes how coded bitstreams and decoders are to be tested and verified. Part 5: Reference software defines the reference software that meets the requirements of GB/T 33475.2-2024 and GB/T 33475.3-2018. Part 6: Intelligent media transport lays down the intelligent media transport technology used for the transmission of multimedia data over heterogeneous packet-switched networks. Part 7: Image file format lays down the syntax description, the semantic description and the packaging definition of the high efficiency multimedia coding image file format.

The document contains the simulation software of the tool sets defined by GB/T 33475.2-2024 and GB/T 33475.3-2018. That software grew out of a succession of verification models built while the standard was being drawn up. Because a delay arises between the acceptance of a tool and its addition to the reference software, tools defined in other parts of GB/T 33475 may not be present in this reference software.

Where encoding software is present, it is to be noted that these encoders support only the bitstreams produced by the normative syntax elements, that their performance is not a measure of the degree to which quality and computational complexity have been optimized, and that the tools on the encoding side are not defined in the document. The document defines reference software meeting the requirements of GB/T 33475.2-2024 and GB/T 33475.3-2018 only.

The reference software of the document falls into six categories. The video elementary stream decoding software is defined in Clause 6: the video reference software receives a coded elementary stream conforming to GB/T 33475.2-2024 and decodes it to produce the media format associated with that stream, namely video. Although the video reference software is a normative part of GB/T 33475, the implementation techniques used in it are not regarded as normative, since other implementations may produce the same result; the reference software as a whole is regarded as normative because it correctly implements the decoding process described in GB/T 33475.2-2024. The elementary stream encoding software is defined in Annex A: it produces an elementary stream, namely a video elementary stream, from the corresponding media format, and the encoder offers a way of obtaining an elementary stream that conforms to the syntax laid down; the document does not lay down encoding techniques, and the quality and complexity of the encoding software provided are not optimized. Detailed instructions for using the reference software are given in Annex B, and the software can produce bitstreams meeting different coding conditions according to the configuration set out in that annex. The audio elementary stream decoding software is defined in Clause 7 and stands in the same relation to GB/T 33475.3-2018; the audio elementary stream encoding software is defined in Annex A; and detailed instructions for using the audio reference software are given in Annex C. In the passages describing the encoding software the referenced parts are printed as GB/T 34753.2-2024 and GB/T 34753.3-2018.

1 Scope

The document defines the reference software that meets the requirements laid down in GB/T 33475.2-2024 and GB/T 33475.3-2018.

It applies to the development, debugging and acceptance of application systems such as digital television broadcasting, interactive storage media, direct broadcast satellite video services, multimedia mail, multimedia services over packet networks, real-time communication services and remote video surveillance.

2 Normative references

The following documents are cited normatively in the text and their content constitutes indispensable provisions of the document. For dated references only the edition cited applies; for undated references the latest edition, including all amendments, applies.

GB/T 33475.2-2024 Information technology—High efficiency multimedia coding—Part 2: Video.

GB/T 33475.3-2018 Information technology—High efficiency multimedia coding—Part 3: Audio.

3 Terms and definitions

The terms and definitions given in GB/T 33475.2-2024 and GB/T 33475.3-2018 apply to the document.

4 Abbreviated terms

Two abbreviated terms apply: AASF, the AVS2 audio storage format; and AATF, the AVS2 audio transport format.

5 Overview

An implementation conforming to GB/T 33475.2-2024 and GB/T 33475.3-2018 need not follow the algorithms or the programming techniques of the reference software strictly. The decoding software is not to go beyond the technical description text of GB/T 33475.2-2024 and GB/T 33475.3-2018.

The location of the encoding software and the notes on it are given in Annex A, the detailed instructions for using the video reference software in Annex B, and those for using the audio reference software in Annex C.

6 Video reference software

The video reference software given in the document is written to the requirements of GB/T 33475.2-2024. The file locations given are relative to the root directory of the reference software. The locations of the video reference software and the notes on it are given in Table 1.

Table 1, Notes on the video reference software, has two columns, location and note, and three entries: source\lcommon, source\ldecod and source\lencod, the note against each being that the software is written in the C language.

7 Audio reference software

The audio reference software given in the document is written to the requirements of GB/T 33475.3-2018. The file locations given are relative to the root directory of the reference software. The locations of the audio reference software and the notes on it are given in Table 2.

Table 2, Notes on the audio reference software, has two columns, location and note, and two entries: refavs2p3dec\source and refavs2p3dec\general, the note against each being that the software is written in the C language.

Annex A Annex A (informative) Encoding software

A.1 Video encoder. The location of the video encoder and the note on it are given in Table A.1, which has a single entry, source\lencod, with the note that the software is written in the C language.

A.2 Audio encoder. The locations of the audio encoder and the notes on them are given in Table A.2, which has two entries, refavs2p3enc\src and refavs2p3enc\general, with the note against each that the software is written in the C language.

Annex B Annex B (informative) Detailed instructions for using the video reference software

B.1.1 Compiling under Windows with Visual Studio. The software package provides a VS2008 workspace file and a build script for the cmake tool chain. With the cmake tool chain, the make-solutions.bat script in the build directory can generate the corresponding version of the VS project, or the build-all.bat script can be run directly to compile the latest binaries. The VS2008 workspace file is RD_vc9.sln in the source directory and contains three projects: lcommon, the shared codec method library of the reference software; lencod, the encoder of the reference software; and ldecod, its decoder. The project wanted can be compiled in Debug or Release mode and the binaries produced are placed in the bin directory. For an integrated solution under a higher version of the integrated development environment, the open source CMake tool of version 2.8.8 or above is to be installed; the build directory under the project root holds 32-bit and 64-bit compilation directories supporting five mainstream environments, listed in the document as Visual Studio 2008, Visual Studio 2010, Visual Studio 2012, Visual Studio 2012 and Visual Studio 2015. Choosing the directory required and running build-all.bat generates the solution. Double-clicking the RFD.sln file opens the Visual Studio project, and the RFD project is compiled within Visual Studio; the executable files and static libraries produced are placed in the bin and lib directories under the project root. Running clean.bat in the vc12-x86_64 directory clears the Visual Studio project files of vc12-x86_64 and the binaries in the bin directory, returning the tree to the state it was in before build-all.bat was run.

B.1.2 Compiling under Unix with gcc. After the make tool chain has been installed, the build/linux directory is entered and the make-all.sh command run; the binaries produced are placed in the source/bin directory.

B.2.1 Encoder command syntax. The encoder is called as lencod with the switch -f followed by the configuration file name, -p InputFile= followed by the input file name, -p OutputFIle= followed by the output file name, and the optional switches. The -f switch uses the configuration parameters in the named file to set the parameters of the coding tools; -p InputFile= names the input file of the video signal; and -p OutputFile= names the output file of the AVS2 general video coding bitstream. The optional switches are described in B.2.3. The output-file switch is printed with the spelling OutputFIle in the syntax line and OutputFile in the explanation beneath it.

B.2.2 Encoder output information. While it runs, the encoder prints statistics on the frames already encoded to the standard output stream, by default the screen. A typical encoder output is reproduced in the document; it lists the sequence end termination, the frequency of the encoded bitstream in hertz, whether the Hadamard transform was used, the encoding and reconstruction image formats, whether fast motion estimation was on, the search range, the number of reference frames used in P prediction and in B prediction, the total encoding time for the sequence in seconds, the entropy coding method, and whether rate-distortion optimized mode decision was used; followed by the average data over all frames, namely the signal to noise ratios of the Y, U and V components in decibels, the total bits with their breakdown into I, P and B frames, the bit rate in kilobits per second at the stated frame rate, the duplicated GB bits, the bit rate excluding duplicated GB bits, the bits used to avoid start code emulation, and the encoder version line.

B.2.3 Encoder configuration parameters. The parameters may be given in a configuration input file or specified with the -p switch. The file input and output parameters are: -p InputFile=, naming the input file of the video signal; -p SourceWidth=, setting the width of the input video; -p SourceHeight=, setting the height of the input video in pixels; -p InputSampleBitDepth=, setting the bit depth of the input video; -p OutputFile=, setting the path of the output AVS2 video bitstream; and -p ReconFile=, setting the path of the reconstructed video signal output. The encoder control parameters are: -p MaxSizeInBit=, setting the size of the largest coding unit; -p IntraPeriod=, setting the I-frame coding interval; -p QPIFrame=, -p QPPFrame= and -p QPBFrame=, setting the quantization parameters of the I, P and B frames; -p SearchRange=, setting the motion estimation search range; and -p FFRAMEEnable=, where the value 1 uses F frames in place of P frames and the value 0 does not. The interlaced and progressive scanning parameters are: -p InterlaceCodingOption=, whose value is 0 or 1, the value 1 coding the input sequence by fields and the value 0 coding it by frames; and -p Progressive_sequence=, whose value is 0 or 1, the value 1 meaning that the input video sequence contains only progressively scanned frame pictures and the value 0 that it contains only progressively scanned pictures or only interlaced pictures.

B.3.1 Decoder command syntax. The decoder is called as ldecod followed by the configuration file name; the parameters in that file are described in B.3.3, which the syntax line cites as B3.3.

B.3.2 Decoder output information. While it runs, the decoder prints statistics on each decoded frame to the standard output stream, by default the screen, and prints a summary when decoding is complete. A typical decoder output is reproduced in the document; it gives the average signal to noise ratios of the Y, U and V components in decibels, the total decoding time in seconds, the output file bit depth, the decoder version line, and a check-value-bound block giving the value bound and the maximum value.

B.3.3 Decoder configuration parameters. The following parameters are given in order in the decoder configuration parameter file, one to a line: the path of the video bitstream file; the path of the reconstructed video output by the decoder; the path of the reference reconstructed video; the YUV file format of the reference reconstructed video; the frame order of the reference reconstructed video; whether the decoded picture is to be output; whether the MD5 of the reconstructed video is to be computed; whether the merged top and bottom field picture is to be output; and the output file path of the background video frames.

Annex C Annex C (informative) Detailed instructions for using the audio reference software

C.1.1 Compiling under Windows with Visual Studio 2013. The software package provides the VS2013 workspace files avs2enc.sln and avs2dec.sln, containing two projects: refavs2p3enc, the encoder of the reference software, and refavs2p3dec, its decoder. It also contains readme.txt, the instructions for using the reference software, and refavs2p3codec.bat, an example of its use. The project wanted can be compiled in Debug or Release mode and the binaries produced are placed in the Debug or Release directory.

C.1.2 Compiling under Unix with gcc. To compile the encoder, the refavs2p3enc directory is entered and make is typed; to compile the decoder, the directory printed in the document as refavs2p3dnc is entered and make is typed. The binaries produced are placed in the bin directory.

C.2.1 General audio encoder command syntax. The encoder is called as avs2enc with the switch -if followed by the input file name, -of followed by the output file name, and the optional switches. The -if switch names the input file of the audio signal and the -of switch names the output file of the AVS2 general audio coding bitstream. The optional switches are described in C.2.3.

C.2.2 Encoder output information. While it runs, the encoder prints statistics on the frames already encoded to the standard output stream, by default the screen; a typical output shows a running line and the number of frames processed.

C.2.3 Encoder configuration parameters. The optional switches are: -f with the value 1 or 2, setting the AVS2 output audio format, where -f 1 selects the AASF format and -f 2 the AATF format, the AASF format applying when the switch is absent; -b followed by a number, setting the AVS2 coding bit rate; -codec_id followed by a number, setting the AVS2 coding tool, where -codec_id 0 uses the AVS2 general audio coding tool and -codec_id 1 the AVS2 lossless audio coding tool, the general tool applying when the switch is absent; -coding_profile followed by a number, setting the AVS2 coding mode, where -coding_profile 0 uses mono or multi-channel bed coding and -coding_profile 1 three-dimensional audio coding including objects; -ob followed by a number, setting the object coding bit rate when -coding_profile 1 is in force; -anc followed by a number, stating whether auxiliary metadata are included in the AVS2 coding, where -anc 0 means none and -anc 1 means that they are included; and -h or -help, which displays the AVS2 audio coding help information. When -coding_profile 1 is in force, two text files are to be present in the path of the coded files: object.txt, holding the paths of the object files separated by spaces, and position.txt, holding the paths of the object trajectory files separated by spaces.

C.3 General audio decoder. The decoder is called as avs2dec.exe with -if followed by the input file, -of followed by the output wave file, and the optional switches; the -if switch names the input file of the AVS2 general audio coding bitstream and the -of switch names the output file of the audio signal. While it runs, the decoder prints statistics on the frames already decoded to the standard output stream, showing a running line and the number of frames processed. The optional switch -fp followed by a path sets the path in which the AVS2 object decoding produces the object files; where none is given, the default path is used, and that path is to contain an object_dec.txt file holding the output paths of the decoded object files, separated by spaces.

C.4 Lossless audio encoder. The encoder is called as avs2enc with the switches -w, -of, -f, -lpc, -e and -if. The -if switch names the input file of the audio signal and the -of switch names the output file of the lossless coding. The -f switch takes the value 0, 1 or 2 and sets the AVS2 output audio format, where -f 0 gives the original signal output, -f 1 the AASF format and -f 2 the AATF format. The -w switch takes the value plus or minus and selects the wavelet transform tool, plus using it and minus not using it. The -lpc switch, whose value runs from 0 to 127, sets the maximum order of the linear predictor. The -e switch takes the value 0, 1 or 2 and sets the coding method, where -e 0 uses arithmetic coding, -e 1 Golomb-Rice coding and -e 2 a mixture of arithmetic and Golomb-Rice coding. The -codec_id switch sets the AVS2 coding tool as above. While it runs, the encoder prints statistics on the frames already encoded; a typical output gives the version line, the input and output file names, the output format, the sampling rate in hertz, the number of channels, the playback time, and a running table of frame, bit rate, percentage, elapsed and estimated time, and the ratio of playback time to processor time.

C.5 Lossless audio decoder. The decoder is called as avs2dec.exe with the optional switches, -o followed by the output file name and the input file; the -if switch names the input file of the lossless audio decoder and the -of switch names its output file. The -b switch takes the value 0, 1 or 2 and sets the quantization bit depth of the PCM output signal, where -b 0 gives 8 bits per sample, -b 1 gives 16 bits and -b 2 gives 24 bits, 16 bits applying when the switch is absent. The -codec_id switch sets the AVS2 coding tool as above. While it runs, the decoder prints statistics on the frames already decoded; a typical output gives the version line, the input file name, the input file format, the wave file path, the sampling frequency in hertz, the number of channels and the sample format, the output file name and the frame count.

......
This preview omits tables, figures, formulas and parts of the technical clauses. The complete document — 16 pages — is available in the English PDF.

Referenced standards

How to Buy GB/T 33475.5-2024

  1. 1Add to cart. Click the "Buy GB/T 33475.5-2024" button on this page. You can add more standards before checkout.
  2. 2Checkout. Enter your email and billing details. Payment is processed securely by Stripe (cards, Apple Pay, Google Pay supported).
  3. 3Instant delivery (0–9 sec). Delivery is automatic: within seconds of payment you'll receive an email with a secure download link. The link stays valid for 72 hours.
  4. 4Invoice included. A tax invoice is attached to the confirmation email. Need a custom invoice? Contact us.

Related Standards

English PDF
16 pages
Instant delivery (0–9 sec)
Invoice included
View Cart

Secure payment via Stripe

Payments accepted

VisaMastercardAmerican ExpressApple PayGoogle PayStripe

GB/T 33475.5-2024

$350.00

$300.00for partners