Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 11 additions & 18 deletions readme/apv_isobmff.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ aligned(8) class APVDecoderConfigurationBox extends FullBox('apvC',version=0, fl
}
~~~~

## APV Decoder Configuration Record {#APVDecoderConfigurationRecord}
## APV Decoder Configuration Record {#APVDecoderConfigurationRecord}

The APVDecoderConfigurationRecord contains the information for initial configuration of a decoder which consumes the samples references the sample entry type of apv1. The information in this record is extracted from frame_header() of the bitstream stored in the track containing this record.

Expand Down Expand Up @@ -159,20 +159,7 @@ the full_range_flag field in the frame header of the frames whose value of the p
## APV Sample Description

### Format of sample
When APV coded bitstream is encapsulated in a track with APVSampleEntry, each sample shall contain a size of access unit and an access unit of APV coded data.

~~~~
aligned(8) class APVSample{
unsigned int(32) au_length;
bit(au_length * 8) access_unit;
}
~~~~

+ au_length
> indicates the size of an access unit measured in bytes. The size does not include the length field itself.

+ access_unit
> contains a single access unit. It includes both the 4-characters signature and the variable length encapsulated PBU streams.
When APV coded bitstream is encapsulated in a track with APVSampleEntry, each sample shall contain one and only one access unit of APV coded data. The format of sample shall be same as the raw_bitstream_access_unit, the length field of four bytes preceeding the access unit data, as defined in the section 12.1 of [APV codec specification](#apv-codec).

### Sync sample
Every samples of APV bitstream shall be sync samples.
Expand Down Expand Up @@ -203,12 +190,12 @@ tile_index for sub-samples based on tiles, this parameter indicates the tile ind

# Sub-parameters for the MIME tyype 'codecs' parameter

When the 'codecs' parameter of a MIME type is used for a track containing APV bistream, as defined in IETF RFC 6381, the sub-parameters defined in this section is used.
When the 'codecs' parameter of a MIME type is used for a track containing APV bistream, as defined in IETF RFC 6381, the sub-parameters defined in this section is used.

The 'codecs' parameter string for the APV bitstream is defined as follows:

~~~
<4CC value of sample entry>.<key1><value1>.<key2><value2>.��.<keyN><valueN>
<4CC value of sample entry>.<key1><value1>.<key2><value2>...<keyN><valueN>
~~~

The keys are defined as 4CC values and the value used for each keys are defined in the table below.
Expand All @@ -219,4 +206,10 @@ The keys are defined as 4CC values and the value used for each keys are defined
|'apvl'| level | the largest value of the level_idc in APVDecoderConfigurationRecord |
|'apvb'| band | the largest value of the band_idc in APVDecoderConfigurationRecord |

For example, codecs="apv1.apvf44.apvl210.apvb3" indicates the track is compliant to 'apv1' sample entry type and the largest value of the profile in APVDecoderConfigurationRecord of the track is 422-12 profile, the level is 7 and the band is 3.
For example, codecs="apv1.apvf44.apvl210.apvb3" indicates the track is compliant to 'apv1' sample entry type and the largest value of the profile in APVDecoderConfigurationRecord of the track is 422-12 profile, the level is 7 and the band is 3.

# References

<a name="apv-codec"></a>
+ APV codec
> The IETF Internet-Draft of APV codec: https://datatracker.ietf.org/doc/html/draft-lim-apv.