DataHoarder
883dad8b84
All checks were successful
continuous-integration/drone/push Build is passing
54 lines
3.4 KiB
Markdown
54 lines
3.4 KiB
Markdown
|
|
# Supported
|
|
* y4m pipes
|
|
* Frame tested support for 4:4:4, 4:2:2, 4:2:0. Probably 4:0:0 as well, untested.
|
|
* Frame tested support for 8, 10, 12 bit depth. Probably 14 and 16 as well, untested.
|
|
* VMAF tools
|
|
* IVF reader
|
|
* Frameserver
|
|
* TODO: make list per encoder and decoder.
|
|
|
|
## Bitdepth / subsampling Frame support matrix
|
|
|
|
| Depth/Sampling | 4:0:0 | 4:2:0 | 4:2:2 | 4:4:4 |
|
|
|:--------------:|:-----:|:-----:|:-----:|:-----:|
|
|
| 8-bit | ✅ | ✅ | ✅ | ✅ |
|
|
| 10-bit | ✅ | ✅ | ⚠️ | ⚠️ |
|
|
| 12-bit | ⚠️ | ⚠️ | ⚠️ | ✅ |
|
|
| 14-bit | ❔ | ❔ | ❔ | ❔ |
|
|
| 16-bit | ❔ | ❔ | ❔ | ❔ |
|
|
|
|
Legend:
|
|
|
|
✅ = supported, tested regularly
|
|
|
|
⚠️ = supported, tested sparsely/manually
|
|
|
|
❔ = probably supported, not tested
|
|
|
|
❌ = unsupported
|
|
|
|
## Formats supported
|
|
|
|
| Format | Decoder | Encoder | Notes |
|
|
|:-------------:|:-------:|:-------:|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|
| **YUV4MPEG2** | ✅ | ❌ | Supports most bitdepth and chroma subsampling. Library limited, not format limited.</br>Decoding via [S.O.N.G/Ignite](https://git.gammaspectra.live/S.O.N.G/Ignite) |
|
|
| **H.264** | ❌ | ✅ | Supports 8-bit and 10-bit; 4:0:0, 4:2:0, 4:2:2, 4:4:4 chroma subsampling.</br>Encoding via [x264](https://code.videolan.org/videolan/x264) into .h264 bitstream. |
|
|
| **H.265** | ❌ | ❌ | |
|
|
| **VP9** | ❌ | ❌ | |
|
|
| **AV1** | ✅ | ✅ | Supports 8-bit, 10-bit and 12-bit; 4:0:0, 4:2:0, 4:2:2, 4:4:4 chroma subsampling.</br>Decoding via [dav1d](https://code.videolan.org/videolan/dav1d) from .ivf bitstream</br>Encoding via [libaom-av1](https://aomedia.googlesource.com/aom) into .ivf bitstream. |
|
|
|
|
Additionally, a safe command-line call to ffmpeg can be made to decode into compatible YUV4MPEG2 via the integrated ffmpeg decoder.
|
|
|
|
# TODO
|
|
* No SAR/PAR handling.
|
|
* No color primary / transfer / matrix coefficients handling.
|
|
|
|
|
|
## Build tags
|
|
Several Golang build tags exist to change which features are included in the project.
|
|
|
|
### disable_library_[library]
|
|
This tag disables support for the specified library dependencies.
|
|
|
|
Current implemented [library]: `libdav1d, libaom, libx264, libvmaf`. |