Skip to content

Commit 6099a67

Browse files
Width, Height, Metadata in version 3.5
1 parent 4428ead commit 6099a67

File tree

1 file changed

+52
-0
lines changed

1 file changed

+52
-0
lines changed

ffv1.md

+52
Original file line numberDiff line numberDiff line change
@@ -1038,6 +1038,11 @@ Parameters( ) { |
10381038
ec | ur
10391039
intra | ur
10401040
} |
1041+
if (version >= 3 && micro_version >= 5) { |
1042+
width - 1 | ur
1043+
height - 1 | ur
1044+
Metadata( ) |
1045+
} |
10411046
} |
10421047
```
10431048
@@ -1070,6 +1075,7 @@ Meaning of micro_version for version 3:
10701075
|-------|:------------------------|
10711076
|0...3 | reserved\* |
10721077
|4 | first stable variant |
1078+
|5 | frame size and metadata |
10731079
|Other | reserved for future use |
10741080
10751081
\* development versions which may be incompatible with the stable variants.
@@ -1271,6 +1277,52 @@ QuantizationTable(i, j, scale) { |
12711277
12721278
`context_count[ i ]` indicates the count of contexts for Quantization Table Set `i`.
12731279
1280+
## Metadata
1281+
1282+
```c
1283+
pseudo-code | type
1284+
--------------------------------------------------------------|-----
1285+
Metadata( ) { |
1286+
metadata_count | ur
1287+
for( i = 0; i < metadata_count; i++ ) { |
1288+
metadata_id | ur
1289+
metadata_type | ur
1290+
metadata_size - 1 | ur
1291+
for( j = 0; j < metadata_count; j++ ) { |
1292+
if (metadata_type == 0) |
1293+
metadata_content [ i ] [ j ] | br
1294+
if (metadata_type == 1) |
1295+
metadata_content [ i ] [ j ] | ur
1296+
if (metadata_type == 2) |
1297+
metadata_content [ i ] [ j ] | sr
1298+
} |
1299+
} |
1300+
} |
1301+
```
1302+
1303+
### metadata_count
1304+
1305+
### metadata_id
1306+
1307+
|value | metadata meaning |
1308+
|-------|:-----------------------------------------------------------------|
1309+
|0 | Range (1 = Broadcast, 2 = Full...) |
1310+
|1 | Primaries |
1311+
|2 | TransferCharacteristics |
1312+
|3 | MatrixCoefficients |
1313+
|4 | MaxCLL |
1314+
|5 | MaxFALL |
1315+
|6 | PrimaryRChromaticityX |
1316+
|... | (TODO) |
1317+
| | WhitePointChromaticityY |
1318+
| | ChromaSitingHorz |
1319+
| | Encoding library name and version (e.g. "Lavc57.107.100 ffv1") |
1320+
|Other | reserved for future use |
1321+
1322+
### metadata_type
1323+
1324+
### metadata_content
1325+
12741326
# Restrictions
12751327

12761328
To ensure that fast multithreaded decoding is possible, starting version 3 and if frame\_pixel\_width * frame\_pixel\_height is more than 101376, slice\_width * slice\_height MUST be less or equal to num\_h\_slices * num\_v\_slices / 4.

0 commit comments

Comments
 (0)