21 October 2021
about 3 years ago by Encoding.com Product Team #2
AV1 Codec Support
Added support of AV1 codecs: libaom-av1 and libsvtav1.
AV1 libaom
<?xml version="1.0"?>
<query>
<userid><<id>></userid> <!-- required-->
<userkey><<key>></userkey> <!-- required-->
<action>[Action]</action> <!-- required-->
<source>[SourceFile]</source> <!-- required-->
<format>
<output>[OutputFormat]</output> <!-- required-->
<video_codec>libaom-av1</video_codec> <!-- required-->
<video_codec_parameters>
<cpu-used>[CPUNumber]</cpu-used>
<auto-alt-ref>[0|1]</auto-alt-ref>
<sharpness>[Sharpness]</sharpness>
<static-thresh>[Threshold]</static-thresh>
<row-mt>[0|1]</row-mt>
<tile-columns>[TileColumns]</tile-columns>
<tile-rows>[TileRows]</tile-rows>
<enable-tpl-model>[0|1]</enable-tpl-model>
<enable-keyframe-filtering>[0|1|2]</enable-keyframe-filtering>
<arnr-maxframes>[FramesNumber]</arnr-maxframes>
<arnr-strength>[FilterStrength]</arnr-strength>
<tune>[TuneMode]</tune>
<cq-level>[QualityLevel]</cq-level>
<max-intra-rate>[IFrameBitrate]</max-intra-rate>
<max-inter-rate>[PFrameBitrate]</max-inter-rate>
<gf-cbr-boost>[BoostValue]</gf-cbr-boost>
<lossless>[0|1]</lossless>
<enable-cdef>[0|1]</enable-cdef>
<enable-restoration>[0|1]</enable-restoration>
<enable-rect-partitions>[0|1]</enable-rect-partitions>
<enable-ab-partitions>[0|1]</enable-ab-partitions>
<enable-1to4-partitions>[0|1]</enable-1to4-partitions>
<min-partition-size>[PartitionSize]</min-partition-size>
<max-partition-size>[PartitionSize]</max-partition-size>
<enable-dual-filter>[0|1]</enable-dual-filter>
<enable-chroma-deltaq>[0|1]</enable-chroma-deltaq>
<enable-intra-edge-filter>[0|1]</enable-intra-edge-filter>
<enable-order-hint>[0|1]</enable-order-hint>
<enable-tx64>[0|1]</enable-tx64>
<enable-flip-idtx>[0|1]</enable-flip-idtx>
<enable-rect-tx>[0|1]</enable-rect-tx>
<enable-dist-wtd-comp>[0|1]</enable-dist-wtd-comp>
<enable-masked-comp>[0|1]</enable-masked-comp>
<enable-onesided-comp>[0|1]</enable-onesided-comp>
<enable-interintra-comp>[0|1]</enable-interintra-comp>
<enable-smooth-interintra>[0|1]</enable-smooth-interintra>
<enable-diff-wtd-comp>[0|1]</enable-diff-wtd-comp>
<enable-interinter-wedge>[0|1]</enable-interinter-wedge>
<enable-interintra-wedge>[0|1]</enable-interintra-wedge>
<enable-global-motion>[0|1]</enable-global-motion>
<enable-warped-motion>[0|1]</enable-warped-motion>
<enable-filter-intra>[0|1]</enable-filter-intra>
<enable-smooth-intra>[0|1]</enable-smooth-intra>
<enable-paeth-intra>[0|1]</enable-paeth-intra>
<enable-cfl-intra>[0|1]</enable-cfl-intra>
<enable-diagonal-intra>[0|1]</enable-diagonal-intra>
<enable-obmc>[0|1]</enable-obmc>
<enable-overlay>[0|1]</enable-overlay>
<enable-palette>[0|1]</enable-palette>
<enable-intrabc>[0|1]</enable-intrabc>
<enable-angle-delta>[0|1]</enable-angle-delta>
<disable-trellis-quant>[0|1]</disable-trellis-quant>
<force-video-mode>[0|1]</force-video-mode>
<enable-qm>[0|1]</enable-qm>
<qm-min>[QMFlatness]</qm-min>
<qm-max>[QMFlatness]</qm-max>
<reduced-tx-type-set>[0|1]</reduced-tx-type-set>
<use-intra-dct-only>[0|1]</use-intra-dct-only>
<use-inter-dct-only>[0|1]</use-inter-dct-only>
<use-intra-default-tx-only>[0|1]</use-intra-default-tx-only>
<quant-b-adapt>[0|1]</quant-b-adapt>
<coeff-cost-upd-freq>[0|1|2|3]</coeff-cost-upd-freq>
<mode-cost-upd-freq>[0|1|2|3]</mode-cost-upd-freq>
<mv-cost-upd-freq>[0|1|2|3]</mv-cost-upd-freq>
<frame-parallel>[0|1]</frame-parallel>
<error-resilient>[0|1]</error-resilient>
<aq-mode>[QuantizationMode]</aq-mode>
<deltaq-mode>[DeltaQIndexMode]</deltaq-mode>
<delta-lf-mode>[0|1]</delta-lf-mode>
<frame-boost>[0|1]</frame-boost>
<noise-sensitivity>[NoiseSensitivity]</noise-sensitivity>
<tune-content>[TuneType]</tune-content>
<cdf-update-mode>[CDFUpdateMode]</cdf-update-mode>
<color-primaries>[ColorPrimaries]</color-primaries>
<transfer-characteristics>[TransferCharacteristics]</transfer-characteristics>
<matrix-coefficients>[MatrixCoefficients]</matrix-coefficients>
<chroma-sample-position>[ChromaSamplePosition]</chroma-sample-position>
<min-gf-interval>[GFInterval]</min-gf-interval>
<max-gf-interval>[GFInterval]</max-gf-interval>
<gf-min-pyr-height>[GFPyramidHeight]</gf-min-pyr-height>
<gf-max-pyr-height>[GFPyramidHeight]</gf-max-pyr-height>
<sb-size>[SuperBlockSize]</sb-size>
<num-tile-groups>[TileGroupsNumber]</num-tile-groups>
<mtu-size>[MTUSize]</mtu-size>
<timing-info>[TimingInfo]</timing-info>
<film-grain-test>[TestVector]</film-grain-test>
<film-grain-table>[FilmGrainParametersFile]</film-grain-table>
<denoise-noise-level>[NoiseLevel]</denoise-noise-level>
<denoise-block-size>[BlockSize]</denoise-block-size>
<enable-dnl-denoising>[0|1]</enable-dnl-denoising>
<max-reference-frames>[RefFramesNumber]</max-reference-frames>
<reduced-reference-set>[0|1]</reduced-reference-set>
<enable-ref-frame-mvs>[0|1]</enable-ref-frame-mvs>
<target-seq-level-idx>[TargetSequenceLevel]</target-seq-level-idx>
<set-tier-mask>[TierMask]</set-tier-mask>
<min-cr>[CompressionRatio]</min-cr>
<vbr-corpus-complexity-lap>[CorpusComplexity]</vbr-corpus-complexity-lap>
<input-chroma-subsampling-x>[ChromaSubsamplingX]</input-chroma-subsampling-x>
<input-chroma-subsampling-y>[ChromaSubsamplingY]</input-chroma-subsampling-y>
</video_codec_parameters>
</format>
</query>
{
"query": {
"userid": "<<id>>", // required
"userkey": "<<key>>", // required
"action": "[Action]", // required
"source": "[SourceFile]", // required
"format": {
"output": "[OutputFormat]", // required
"video_codec": "libaom-av1",
"video_codec_parameters": {
"cpu-used": "[CPUNumber]",
"auto-alt-ref": "[0|1]",
"sharpness": "[Sharpness]",
"static-thresh": "[Threshold]",
"row-mt": "[0|1]",
"tile-columns": "[TileColumns]",
"tile-rows": "[TileRows]",
"enable-tpl-model": "[0|1]",
"enable-keyframe-filtering": "[0|1|2]",
"arnr-maxframes": "[FramesNumber]",
"arnr-strength": "[FilterStrength]",
"tune": "[TuneMode]",
"cq-level": "[QualityLevel]",
"max-intra-rate": "[IFrameBitrate]",
"max-inter-rate": "[PFrameBitrate]",
"gf-cbr-boost": "[BoostValue]",
"lossless": "[0|1]",
"enable-cdef": "[0|1]",
"enable-restoration": "[0|1]",
"enable-rect-partitions": "[0|1]",
"enable-ab-partitions": "[0|1]",
"enable-1to4-partitions": "[0|1]",
"min-partition-size": "[PartitionSize]",
"max-partition-size": "[PartitionSize]",
"enable-dual-filter": "[0|1]",
"enable-chroma-deltaq": "[0|1]",
"enable-intra-edge-filter": "[0|1]",
"enable-order-hint": "[0|1]",
"enable-tx64": "[0|1]",
"enable-flip-idtx": "[0|1]",
"enable-rect-tx": "[0|1]",
"enable-dist-wtd-comp": "[0|1]",
"enable-masked-comp": "[0|1]",
"enable-onesided-comp": "[0|1]",
"enable-interintra-comp": "[0|1]",
"enable-smooth-interintra": "[0|1]",
"enable-diff-wtd-comp": "[0|1]",
"enable-interinter-wedge": "[0|1]",
"enable-interintra-wedge": "[0|1]",
"enable-global-motion": "[0|1]",
"enable-warped-motion": "[0|1]",
"enable-filter-intra": "[0|1]",
"enable-smooth-intra": "[0|1]",
"enable-paeth-intra": "[0|1]",
"enable-cfl-intra": "[0|1]",
"enable-diagonal-intra": "[0|1]",
"enable-obmc": "[0|1]",
"enable-overlay": "[0|1]",
"enable-palette": "[0|1]",
"enable-intrabc": "[0|1]",
"enable-angle-delta": "[0|1]",
"disable-trellis-quant": "[0|1]",
"force-video-mode": "[0|1]",
"enable-qm": "[0|1]",
"qm-min": "[QMFlatness]",
"qm-max": "[QMFlatness]",
"reduced-tx-type-set": "[0|1]",
"use-intra-dct-only": "[0|1]",
"use-inter-dct-only": "[0|1]",
"use-intra-default-tx-only": "[0|1]",
"quant-b-adapt": "[0|1]",
"coeff-cost-upd-freq": "[0|1|2|3]",
"mode-cost-upd-freq": "[0|1|2|3]",
"mv-cost-upd-freq": "[0|1|2|3]",
"frame-parallel": "[0|1]",
"error-resilient": "[0|1]",
"aq-mode": "[QuantizationMode]",
"deltaq-mode": "[DeltaQIndexMode]",
"delta-lf-mode": "[0|1]",
"frame-boost": "[0|1]",
"noise-sensitivity": "[NoiseSensitivity]",
"tune-content": "[TuneType]",
"cdf-update-mode": "[CDFUpdateMode]",
"color-primaries": "[ColorPrimaries]",
"transfer-characteristics": "[TransferCharacteristics]",
"matrix-coefficients": "[MatrixCoefficients]",
"chroma-sample-position": "[ChromaSamplePosition]",
"min-gf-interval": "[GFInterval]",
"max-gf-interval": "[GFInterval]",
"gf-min-pyr-height": "[GFPyramidHeight]",
"gf-max-pyr-height": "[GFPyramidHeight]",
"sb-size": "[SuperBlockSize]",
"num-tile-groups": "[TileGroupsNumber]",
"mtu-size": "[MTUSize]",
"timing-info": "[TimingInfo]",
"film-grain-test": "[TestVector]",
"film-grain-table": "[FilmGrainParametersFile]",
"denoise-noise-level": "[NoiseLevel]",
"denoise-block-size": "[BlockSize]",
"enable-dnl-denoising": "[0|1]",
"max-reference-frames": "[RefFramesNumber]",
"reduced-reference-set": "[0|1]",
"enable-ref-frame-mvs": "[0|1]",
"target-seq-level-idx": "[TargetSequenceLevel]",
"set-tier-mask": "[TierMask]",
"min-cr": "[CompressionRatio]",
"vbr-corpus-complexity-lap": "[CorpusComplexity]",
"input-chroma-subsampling-x": "[ChromaSubsamplingX]",
"input-chroma-subsampling-y": "[ChromaSubsamplingY]"
}
}
}
}
Parameter | Description | Allowed Values | Default Value |
---|---|---|---|
cpu-used | Speed setting | Integer number between 0 and 9 (6-9 in realtime mode) | 6 |
auto-alt-ref | Enable automatic alt reference frames | Integer number between 0 and 9 (6-9 in realtime mode) | 1 |
sharpness | Loop filter sharpness | Integer number between 0 and 7 | 0 |
static-thresh | Motion detection threshold | Integer number between 0 and 1000 | 0 |
row-mt | Enable row based multi-threading | 0 – off 1 – on | 1 |
tile-columns | Number of tile columns to use | Integer number | 0 |
tile-rows | Number of tile rows to use | Integer number | 0 |
enable-tpl-model | RDO based on frame temporal dependency. This is required for deltaq mode. | 0 – off 1 – backward source based | 0 |
enable-keyframe-filtering | Apply temporal filtering on key frame | 0 – no filter 1 – filter without overlay 2 – filter with overlay - experimental may break random access in players. | 1 |
arnr-maxframes | AltRef max frames | Positive integer number between 0 and 15 | 0 |
arnr-strength | AltRef filter strength | Positive integer number between 0 and 6 | 0 |
tune | Distortion metric tuning | psnr, ssim, vmaf_with_preprocessing, vmaf_without_preprocessing, vmaf, vmaf_neg, butteraugli | psnr |
cq-level | Constant/Constrained Quality level | Integer number between 0 and 63 | none |
max-intra-rate | Max I-frame bitrate (pct) | Integer number | none |
max-inter-rate | Max P-frame bitrate (pct) | Integer number | none |
gf-cbr-boost | Boost for Golden Frame in CBR mode (pct) | Integer number | none |
lossless | Lossless mode | 0 – false 1 – true | 0 |
enable-cdef | Enable the constrained directional enhancement filter | 0 – false 1 – true | 1 |
enable-restoration | Enable the loop restoration filter | 0 – false 1 – true | Realtime mode: 0 Non-realtime: 1 |
enable-rect-partitions | Enable rectangular partitions | 0 – false 1 – true | 1 |
enable-ab-partitions | Enable ab partitions | 0 – false 1 – true | 1 |
enable-1to4-partitions | Enable 1:4 and 4:1 partitions | 0 – false 1 – true | 1 |
min-partition-size | Set min partition size. On frame with 4k+ resolutions or higher speed settings, the min partition size will have a minimum of 8. | 4 – 4x4, 8 – 8x8, 16 – 16x16, 32 – 32x32, 64 – 64x64, 128 – 128x128 | none |
max-partition-size | Set max partition size | 4 – 4x4, 8 – 8x8, 16 – 16x16, 32 – 32x32, 64 – 64x64, 128 – 128x128 | none |
enable-dual-filter | Enable dual filter | 0 – false 1 – true | 1 |
enable-chroma-deltaq | Enable chroma delta quant | 0 – false 1 – true | 0 |
enable-intra-edge-filter | Enable intra edge filtering | 0 – false 1 – true | 1 |
enable-order-hint | Enable order hint | 0 – false 1 – true | 1 |
enable-tx64 | Enable 64-pt transform | 0 – false 1 – true | 1 |
enable-flip-idtx | Enable extended transform type including FLIPADST_DCT, DCT_FLIPADST, FLIPADST_FLIPADST, ADST_FLIPADST, FLIPADST_ADST, IDTX, V_DCT, H_DCT, V_ADST, H_ADST, V_FLIPADST, H_FLIPADST | 0 – false 1 – true | 1 |
enable-rect-tx | Enable rectangular transform | 0 – false 1 – true | 1 |
enable-dist-wtd-comp | Enable distance-weighted compound | 0 – false 1 – true | 1 |
enable-masked-comp | Enable masked (wedge/diff-wtd) compound | 0 – false 1 – true | 1 |
enable-onesided-comp | Enable one sided compound | 0 – false 1 – true | 1 |
enable-interintra-comp | Enable interintra compound | 0 – false 1 – true | 1 |
enable-smooth-interintra | Enable smooth interintra mode | 0 – false 1 – true | 1 |
enable-diff-wtd-comp | Enable difference-weighted compound | 0 – false 1 – true | 1 |
enable-interinter-wedge | Enable interinter wedge compound | 0 – false 1 – true | 1 |
enable-interintra-wedge | Enable interintra wedge compound | 0 – false 1 – true | 1 |
enable-global-motion | Enable global motion | 0 – false 1 – true | 1 |
enable-warped-motion | Enable local warped motion | 0 – false 1 – true | 1 |
enable-filter-intra | Enable filter intra prediction mode | 0 – false 1 – true | 1 |
enable-smooth-intra | Enable smooth intra prediction modes | 0 – false 1 – true | 1 |
enable-paeth-intra | Enable Paeth intra prediction mode | 0 – false 1 – true | 1 |
enable-cfl-intra | Enable chroma from luma intra prediction mode | 0 – false 1 – true | 1 |
enable-diagonal-intra | Enable diagonal (D45 to D203) intra prediction modes | 0 – false 1 – true | 1 |
force-video-mode | Force video mode | 0 – false 1 – true | 1 |
enable-obmc | Enable OBMC | 0 – false 1 – true | 1 |
enable-overlay | Enable coding overlay frames | 0 – false 1 – true | 1 |
enable-palette | Enable palette prediction mode | 0 – false 1 – true | 1 |
enable-intrabc | Enable intra block copy prediction mode | 0 – false 1 – true | 1 |
enable-angle-delta | Enable intra angle delta | 0 – false 1 – true | 1 |
disable-trellis-quant | Disable trellis optimization of quantized coefficients | 0 – false 1 – true 2 – true for rd search 3 – true for estimate yrd search | 3 |
enable-qm | Enable quantisation matrices | 0 – false 1 – true | 0 |
qm-min | Min quant matrix flatness | Positive integer number between 0 and 15 | 8 |
qm-max | Max quant matrix flatness | Positive integer number between 0 and 15 | 15 |
reduced-tx-type-set | Use reduced set of transform types | 0 – false 1 – true | none |
use-intra-dct-only | Use DCT only for INTRA modes | 0 – false 1 – true | none |
use-inter-dct-only | Use DCT only for INTER modes | 0 – false 1 – true | none |
use-intra-default-tx-only | Use Default-transform only for INTRA modes | 0 – false 1 – true | none1 |
quant-b-adapt | Use adaptive quantize_b | 0 – false 1 – true | none |
coeff-cost-upd-freq | Update freq for coeff costs | 0 – SB 1 – SB Row per Tile 2 – Tile 3 – Off | none |
mode-cost-upd-freq | Update freq for mode costs | 0 – SB 1 – SB Row per Tile 2 – Tile 3 – Off | none |
mv-cost-upd-freq | Update freq for mv costs | 0 – SB 1 – SB Row per Tile 2 – Tile 3 – Off | none |
frame-parallel | Enable frame parallel decodability features | 0 – false 1 – true | 0 |
error-resilient | Enable error resilient features | 0 – false 1 – true | 0 |
aq-mode | Adaptive quantization mode | 0 – off 1 – variance 2 – complexity 3 – cyclic refresh | 0 |
deltaq-mode | Delta qindex mode. Currently this requires enable-tpl-model as a prerequisite. | 0 – off 1 – deltaq objective 2 – deltaq perceptual | 1 |
delta-lf-mode | Enable delta-lf-mode | 0 – off 1 – on | 0 |
frame-boost | Enable frame periodic boost | 0 – off 1 – on | 0 |
noise-sensitivity | Noise sensitivity (frames to blur) | Positive float number | none |
tune-content | Tune content type | default, screen, film | default |
cdf-update-mode | CDF update mode for entropy coding | 0 – no CDF update 1 – update CDF on all frames 2 – selectively update CDF on some frames | 1 |
color-primaries | Color primaries (CICP) of input content | bt709, unspecified, bt601, bt470m, bt470bg, smpte240, film, bt2020, xyz, smpte431, smpte432, ebu3213 | none |
transfer-characteristics | Transfer characteristics (CICP) of input content | unspecified, bt709, bt470m, bt470bg, bt601, smpte240, lin, log100, log100sq10, iec61966, bt1361, srgb, bt2020-10bit, bt2020-12bit, smpte2084, hlg, smpte428 | none |
matrix-coefficients | Matrix coefficients (CICP) of input content | identity, bt709, unspecified, fcc73, bt470bg, bt601, smpte240, ycgco, bt2020ncl, bt2020cl, smpte2085, chromncl, chromcl, ictcp | none |
chroma-sample-position | The chroma sample position when chroma 4:2:0 is signaled | unknown, vertical, colocated | none |
min-gf-interval | Min gf/arf frame interval (indicating in-built behavior) | Positive integer number | 0 |
max-gf-interval | Max gf/arf frame interval (indicating in-built behavior) | Positive integer number | 0 |
gf-min-pyr-height | Min height for GF group pyramid structure | Positive integer number between 0 and 5 | 0 |
gf-max-pyr-height | Maximum height for GF group pyramid structure | Positive integer number between 0 and 5 | 0 |
sb-size | Superblock size to use | dynamic, 64, 128 | none |
num-tile-groups | Maximum number of tile groups | Positive integer number | 1 |
mtu-size | MTU size for a tile group, overrides maximum number of tile groups | Positive integer number | 0 (no MTU targeting) |
timing-info | Signal timing info in the bitstream (model only works for no hidden frames, no super-res yet) | unspecified, constant, model | none |
film-grain-test | Film grain test vectors | 0 – none 1 – test-1 2 – test-2 ... 16 – test-16 | 0 |
film-grain-table | Path to file containing film grain parameters | Valid URL | none |
denoise-noise-level | Amount of noise | Positive integer number between 0 and 50 | none |
denoise-block-size | Denoise block size | Positive integer number | 32 |
enable-dnl-denoising | Apply denoising to the frame being encoded when denoise-noise-level is enabled | 0 – false 1 – true | 1 |
max-reference-frames | Maximum number of reference frames allowed per frame | Positive integer number between 3 and 7 | 7 |
reduced-reference-set | Use reduced set of single and compound references | 0 – off 1 – on | 0 |
enable-ref-frame-mvs | Enable temporal mv prediction (default is 1) | 0 – off 1 – on | 1 |
target-seq-level-idx | Target sequence level index. | Positive integer number in the form of "ABxy" (pad leading zeros if less than 4 digits). AB: Operating point(OP) index, xy: Target level index for the OP. E.g. "0" means target level index 0 for the 0th OP, "1021" means target level index 21 for the 10th OP. | none |
set-tier-mask | Set bit mask to specify which tier each of the 32 possible operating points conforms to. Bit value. | 0 – Main Tier 1 – High Tier | 0 |
min-cr | Set minimum compression ratio. If non-zero, encoder will try to keep the compression ratio of each frame to be higher than the given value divided by 100. | Positive integer number | 0 |
vbr-corpus-complexity-lap | Set average corpus complexity per mb for single pass VBR using lap. | Positive integer number between 0 and 10000 | 0 |
input-chroma-subsampling-x | Chroma subsampling x value. | Positive integer number | none |
input-chroma-subsampling-y | Chroma subsampling y value. | Positive integer number | none |
AV1 libsvtav1
<?xml version="1.0"?>
<query>
<userid><<id>></userid> <!-- required-->
<userkey><<key>></userkey> <!-- required-->
<action>[Action]</action> <!-- required-->
<source>[SourceFile]</source> <!-- required-->
<format>
<output>[OutputFormat]</output> <!-- required-->
<video_codec>libsvtav1</video_codec> <!-- required-->
<video_codec_parameters>
<profile>[Profile]</profile>
<level>[Level]</level>
<tier>[Tier]</tier>
<rc>[RateControl]</rc>
<qmin>[Quantizer]</qmin>
<qmax>[Quantizer]</qmax>
<qp>[Quantizer]</qp>
<la_depth>[LookAheadFrames]</la_depth>
<sc_detection>[0|1]</sc_detection>
<preset>[QualitySpeedTradeoff]</preset>
<tile_rows>[TileRows]</tile_rows>
<tile_columns>[TileColumns]</tile_columns>
</video_codec_parameters>
</format>
</query>
{
"query": {
"userid": "<<id>>", // required
"userkey": "<<key>>", // required
"action": "[Action]", // required
"source": "[SourceFile]", // required
"format": {
"output": "[OutputFormat]", // required
"video_codec": "libsvtav1",
"video_codec_parameters": {
"profile": "[Profile]",
"level": "[Level]",
"tier": "[Tier]",
"rc": "[RateControl]",
"qmin": "[Quantizer]",
"qmax": "[Quantizer]",
"qp": "[Quantizer]",
"la_depth": "[LookAheadFrames]",
"sc_detection": "[0|1]",
"preset": "[QualitySpeedTradeoff]",
"tile_rows": "[TileRows]",
"tile_columns": "[TileColumns]"
}
}
}
}
Parameter | Description | Allowed Values | Default Value |
---|---|---|---|
profile | Encoding profile | main | none |
level | Operating point level | Positive integer number | none |
tier | Operating point tier | Positive integer number | none |
rc | Rate control mode | cqp – Constant quantizer: use fixed values of qindex (dependent on the frame type) throughout the stream vbr – Variable bitrate: use a target bitrate for the whole stream cvbr – Constrained variable bitrate: use a target bitrate for each GOP | none |
qmin | Minimum quantizer to use when using a bitrate mode | Positive integer number between 0 and 63 | none |
qmax | Maximum quantizer to use when using a bitrate mode | Positive integer number between 0 and 63 | none |
qp | Quantizer used in cqp rate control mode | Positive integer number between 0 and 63 | none |
la_depth | Number of frames to look ahead | Positive integer number between 0 and 120 | none |
sc_detection | Enable scene change detection | 0 – off 1 – on | 0 |
preset | Quality-speed tradeoff. Higher values are faster but lower quality | Positive integer number between 0 and 8 | 8 |
tile_rows | Number of rows of tiles to use | Positive integer number between 0 and 6 | none |
tile_columns | Number of columns of tiles to use | Positive integer number between 0 and 4 | none |
Media Stream Validator QC Test
Added new QC Test: Media Stream Validator QC Apple's Media Stream Validator (mediastreamvalidator) verifies that the HLS media playlist and media segments conform to the HTTP Live Streaming specification.
Media Format
Media Stream Validator test available only for advanced_hls, fmp4_hls, and HLS manifests of advanced_fmp4 output formats.
<?xml version="1.0"?>
<query>
<userid><<id>></userid> <!-- required-->
<userkey><<key>></userkey> <!-- required-->
<action>AddMedia</action>
<source>[SourceFile|SourcePlaylist]</source><!-- required -->
<format>
<output>[qc_check|advanced_hls|fmp4_hls|advanced_fmp4]</output><!-- required -->
<qc>
<qc_stream_validator />
</qc>
<!-- format params -->
</format>
</query>
{
"query": {
"userid": "<<id>>", // required
"userkey": "<<key>>", // required
"action": "AddMedia", // required
"source": "[SourceFile|SourcePlaylist]", // required
"format": {
"output": "[qc_check|advanced_hls|fmp4_hls|advanced_fmp4]", // required
"qc": {
"qc_stream_validator": []
}
// format params
}
}
}
Media Stream Validator Report
Link to Media Stream Validator Report can be found in GetStatus response
<?xml version="1.0"?>
<report>
<mediaID>[MediaID]</mediaID>
<status>[QCStatus]</status>
<warnings>
<warning>
<testName>qc_stream_validator</testName>
<fileName>[ManifestName]</fileName>
<message>[WarningMessage]</message>
</warning>
</warnings>
<externalReports>
<externalReport>
<testName>qc_stream_validator</testName>
<fileName>[FileName]</fileName>
<ReportLink>[MSVReportURL]</ReportLink>
<Summary>[BatonSummary]</Summary>
<Result>[Success|Failure]</Result>
</externalReport>
</externalReports>
<!-- report fields -->
</report>
{
"report": {
"mediaID": "[MediaID]",
"status": "[QCStatus]",
"warnings": {
"warning": [
{
"testName": "qc_stream_validator",
"fileName": "[FileName]",
"message": "[WarningMessage]"
}
]
},
"externalReports": {
"externalReport": [
{
"testName": "qc_stream_validator",
"fileName": "[FileName]",
"ReportLink": "[MSVReportURL]",
"Summary": "[BatonSummary]",
"Result": "[Success|Failure]"
}
]
}
// report fields
}
}