16 December 2021
about 3 years ago by Encoding.com Product Team #2
Mainconcept AVC Codec for Cablelabs MPEG-TS
Added support of mainconcept_avc video codec and mp2 audio codec for cablelabs_mpegts output format.
Compatibility
The mainconcept_avc video codec available only for cablelabs_mpegts output format.
<?xml version="1.0"?>
<query>
<userid><<id>></userid> <!-- required-->
<userkey><<key>></userkey> <!-- required-->
<action>AddMedia</action>
<source>[SourceFile]</source> <!-- required-->
<format> <!-- required -->
<output>cablelabs_mpegts</output> <!-- required-->
<video_codec>mainconcept_avc</video_codec>
<audio_codec>mp2</audio_codec>
<!-- common format parameters -->
<video_cocec_parameters>
<interlace_mode>[pure|mbaff]</interlace_mode>
<level>[Level]</level>
<refs>[Refs]</refs>
<bf>[BFramesNumber]</bf>
<search_range>[SearchRange]</search_range>
<max_l0_active>[List0RefFrames]</max_l0_active>
<max_l1_active>[List1RefFrames]</max_l1_active>
<allow_override_max_l0_l1>[yes|no]</allow_override_max_l0_l1>
<quant_pI>[ISLiceQuantization]</quant_pI>
<quant_pP>[PSLiceQuantization]</quant_pP>
<quant_pB>[BSLiceQuantization]</quant_pB>
<inter_search_shape>[16x16|16x8|8x8]</inter_search_shape>
<entropy_coding_mode>[CAVLC|CABAC]</entropy_coding_mode>
<use_hadamard_transform>[yes|no|refs]</use_hadamard_transform>
<video_format>[VideoFormat]</video_format>
<num_units_in_tick>[NumUnitsInTick]</num_units_in_tick>
<timescale>[Timescale]</timescale>
<vbv_buffer_fullness>[InitialFullness]</vbv_buffer_fullness>
<vbv_buffer_fullness_trg>[TargetFullness]</vbv_buffer_fullness_trg>
<vcsd_mode>[off|idr]</vcsd_mode>
<cpb_removal_delay>[CPBRemovalDelay]</cpb_removal_delay>
<bit_rate_scale>[BitRateScale]</bit_rate_scale>
<cpb_size_scale>[CPBSizeScale]</cpb_size_scale>
<min_frame_size>[MinFrameSize]</min_frame_size>
<max_frame_size>[MaxFrameSize]</max_frame_size>
<hrd_maintain>[yes|no]</hrd_maintain>
<hrd_low_delay>[yes|no]</hrd_low_delay>
<smooth_factor>[SmoothFactor]</smooth_factor>
<hrd_preview>[yes|no]</hrd_preview>
<slice_arg>[SliceArg]</slice_arg>
<b_slice_reference>[yes|no]</b_slice_reference>
<b_slice_pyramid>[yes|no]</b_slice_pyramid>
<cb_offset>[CbOffset]</cb_offset>
<cr_offset>[CrOffset]</cr_offset>
<me_subpel_mode>[full|half|quarter|quarter_pel_on_ref]</me_subpel_mode>
<me_weighted_p_mode>[yes|no]</me_weighted_p_mode>
<me_weighted_b_mode>[yes|no]</me_weighted_b_mode>
<enable_fast_intra_decisions>[no|yes|slow]</enable_fast_intra_decisions>
<enable_fast_inter_decisions>[no|yes|slow]</enable_fast_inter_decisions>
<calc_quality>[disabled|psnr|ssim|psnr-ssim]</calc_quality>
<min_quant>[MinQuant]</min_quant>
<max_quant>[MaxQuant]</max_quant>
<max_slice_size>[MaxSliceSize]</max_slice_size>
<low_delay>[yes|no]</low_delay>
<air_mode>[yes|no]</air_mode>
<constrained_intra_pred>[ConstrainedIintraPprediction]</constrained_intra_pred>
<air_split_frequency>[IntraLinesFrequency]</air_split_frequency>
<air_qp_offset>[QPOffset]</air_qp_offset>
<use_deblocking_filter>[yes|no]</use_deblocking_filter>
<adaptive_deblocking>[yes|no]</adaptive_deblocking>
<deblocking_alphaC0_offset>[DeblockingAlphaC0Offset]</deblocking_alphaC0_offset>
<deblocking_beta_offset>[DeblockingBetaOffset]</deblocking_beta_offset>
<stream_type>[I|I-sei|II|II-no-sei]</stream_type>
<bit_depth_luma>[8|10]</bit_depth_luma>
<bit_depth_chroma>[8|10]</bit_depth_chroma>
<vui_presentation>[VUIPresentation]</vui_presentation>
<write_au_delimiters>[yes|no]</write_au_delimiters>
<write_seq_end_code>[VUIPresentation]</write_seq_end_code>
<write_timestamps>[no|partial|full]</write_timestamps>
<timestamp_offset>[TimestampOffset]</timestamp_offset>
<drop_frame_timecode>[yes|no]</drop_frame_timecode>
<write_single_sei_per_nalu>[yes|no]</write_single_sei_per_nalu>
<write_seq_par_set>[idr|i-frame]</write_seq_par_set>
<write_pic_par_set>[idr|i-frame|picture]</write_pic_par_set>
<log2_max_poc>[Log2MaxPoc]</log2_max_poc>
<log2_max_frame_num>[Log2MaxFrameNum]</log2_max_frame_num>
<pic_order_cnt_type>[0|2]</pic_order_cnt_type>
<pic_order_present_flag>[yes|no]</pic_order_present_flag>
<fixed_frame_rate>[yes|no]</fixed_frame_rate>
<frame_based_timing>[yes|no]</frame_based_timing>
<frame_packing_arrangement_mode>[FramePackingArrangementMode]</frame_packing_arrangement_mode>
<stream_creation_product_info>[none|ll|ds]</stream_creation_product_info>
<write_pic_timing_sei>[yes|no]</write_pic_timing_sei>
<normalize_dts>[yes|no]</normalize_dts>
<min_idr_interval>[MinIdrInterval]</min_idr_interval>
<adaptive_b_frames>[yes|no]</adaptive_b_frames>
<idr_frequency>[first|every|every-second]</idr_frequency>
<fixed_i_position>[yes|no]</fixed_i_position>
<isolated_gops>[yes|no]</isolated_gops>
<leading_b_frames>[yes|no]</leading_b_frames>
<fast_multi_ref_me>[greedy|heuristic|combine]</fast_multi_ref_me>
<fast_sub_block_me>[greedy|heuristic|combine]</fast_sub_block_me>
<allow_out_of_pic_mvs>[yes|no]</allow_out_of_pic_mvs>
<constrained_ref_list>[yes|no]</constrained_ref_list>
<motion_search_pattern>[MotionSearchPattern]</motion_search_pattern>
<chroma_me>[ChromaMe]</chroma_me>
<enable_intra_big>[EnableIntraBig]</enable_intra_big>
<enable_intra_8x8>[EnableIntra8x8]</enable_intra_8x8>
<enable_intra_4x4>[EnableIntra4x4]</enable_intra_4x4>
<enable_intra_pcm>[EnableIntraPcm]</enable_intra_pcm>
<enable_inter_big>[EnableInterBig]</enable_inter_big>
<enable_inter_8x8>[EnableInter8x8]</enable_inter_8x8>
<enable_inter_4x4>[EnableInter4x4]</enable_inter_4x4>
<enable_inter_pcm>[EnableInterPcm]</enable_inter_pcm>
<fast_rd_optimization>[accurate|fast|combine]</fast_rd_optimization>
<quant_mode>[0|1|2|3]</quant_mode>
<grain_opt_strength>[yes|no]</grain_opt_strength>
<rdo_ip_4x4>[off|fast|slow]</rdo_ip_4x4>
<adaptive_quant_strength>[AdaptiveQuantStrength]</adaptive_quant_strength>
<denoise_strength_y>[DenoiseStrengthY]</denoise_strength_y>
<denoise_strength_c>[DenoiseStrengthC]</denoise_strength_c>
<black_norm_level>[BlackNormLevel]</black_norm_level>
<pulse_reduction>[PulseReduction]</pulse_reduction>
</video_cocec_parameters>
</format>
</query>
{
"query": {
"userid": "<<id>>", // required
"userkey": "<<id>>", // required
"action": "AddMedia",
"source": "[SourceFile]", // required
"format": { // required
"output": "cablelabs_mpegts", // required
"video_codec": "mainconcept_avc",
"audio_codec": "mp2",
"video_codec_parameters": {
"interlace_mode": "[pure|mbaff]",
"level": "[Level]",
"refs": "[Refs]",
"bf": "[BFramesNumber]",
"search_range": "[SearchRange]",
"max_l0_active": "[List0RefFrames]",
"max_l1_active": "[List1RefFrames]",
"allow_override_max_l0_l1": "[yes|no]",
"quant_pI": "[ISLiceQuantization]",
"quant_pP": "[PSLiceQuantization]",
"quant_pB": "[BSLiceQuantization]",
"inter_search_shape": "[16x16|16x8|8x8]",
"entropy_coding_mode": "[CAVLC|CABAC]",
"use_hadamard_transform": "[yes|no|refs]",
"video_format": "[VideoFormat]",
"num_units_in_tick": "[NumUnitsInTick]",
"timescale": "[Timescale]",
"vbv_buffer_fullness": "[InitialFullness]",
"vbv_buffer_fullness_trg": "[TargetFullness]",
"vcsd_mode": "[off|idr]",
"cpb_removal_delay": "[CPBRemovalDelay]",
"bit_rate_scale": "[BitRateScale]",
"cpb_size_scale": "[CPBSizeScale]",
"min_frame_size": "[MinFrameSize]",
"max_frame_size": "[MaxFrameSize]",
"hrd_maintain": "[yes|no]",
"hrd_low_delay": "[yes|no]",
"smooth_factor": "[SmoothFactor]",
"hrd_preview": "[yes|no]",
"slice_arg": "[SliceArg]",
"b_slice_reference": "[yes|no]",
"b_slice_pyramid": "[yes|no]",
"cb_offset": "[CbOffset]",
"cr_offset": "[CrOffset]",
"me_subpel_mode": "[full|half|quarter|quarter_pel_on_ref]",
"me_weighted_p_mode": "[yes|no]",
"me_weighted_b_mode": "[yes|no]",
"enable_fast_intra_decisions": "[no|yes|slow]",
"enable_fast_inter_decisions": "[no|yes|slow]",
"calc_quality": "[disabled|psnr|ssim|psnr-ssim]",
"min_quant": "[MinQuant]",
"max_quant": "[MaxQuant]",
"max_slice_size": "[MaxSliceSize]",
"low_delay": "[yes|no]",
"air_mode": "[yes|no]",
"constrained_intra_pred": "[ConstrainedIintraPprediction]",
"air_split_frequency": "[IntraLinesFrequency]",
"air_qp_offset": "[QPOffset]",
"use_deblocking_filter": "[yes|no]",
"adaptive_deblocking": "[yes|no]",
"deblocking_alphaC0_offset": "[DeblockingAlphaC0Offset]",
"deblocking_beta_offset": "[DeblockingBetaOffset]",
"stream_type": "[I|I-sei|II|II-no-sei]",
"bit_depth_luma": "[8|10]",
"bit_depth_chroma": "[8|10]",
"vui_presentation": "[VUIPresentation]",
"write_au_delimiters": "[yes|no]",
"write_seq_end_code": "[VUIPresentation]",
"write_timestamps": "[no|partial|full]",
"timestamp_offset": "[TimestampOffset]",
"drop_frame_timecode": "[yes|no]",
"write_single_sei_per_nalu": "[yes|no]",
"write_seq_par_set": "[idr|i-frame]",
"write_pic_par_set": "[idr|i-frame|picture]",
"log2_max_poc": "[Log2MaxPoc]",
"log2_max_frame_num": "[Log2MaxFrameNum]",
"pic_order_cnt_type": "[0|2]",
"pic_order_present_flag": "[yes|no]",
"fixed_frame_rate": "[yes|no]",
"frame_based_timing": "[yes|no]",
"frame_packing_arrangement_mode": "[FramePackingArrangementMode]",
"stream_creation_product_info": "[none|ll|ds]",
"write_pic_timing_sei": "[yes|no]",
"normalize_dts": "[yes|no]",
"min_idr_interval": "[MinIdrInterval]",
"adaptive_b_frames": "[yes|no]",
"idr_frequency": "[first|every|every-second]",
"fixed_i_position": "[yes|no]",
"isolated_gops": "[yes|no]",
"leading_b_frames": "[yes|no]",
"fast_multi_ref_me": "[greedy|heuristic|combine]",
"fast_sub_block_me": "[greedy|heuristic|combine]",
"allow_out_of_pic_mvs": "[yes|no]",
"constrained_ref_list": "[yes|no]",
"motion_search_pattern": "[MotionSearchPattern]",
"chroma_me": "[ChromaMe]",
"enable_intra_big": "[EnableIntraBig]",
"enable_intra_8x8": "[EnableIntra8x8]",
"enable_intra_4x4": "[EnableIntra4x4]",
"enable_intra_pcm": "[EnableIntraPcm]",
"enable_inter_big": "[EnableInterBig]",
"enable_inter_8x8": "[EnableInter8x8]",
"enable_inter_4x4": "[EnableInter4x4]",
"enable_inter_pcm": "[EnableInterPcm]",
"fast_rd_optimization": "[accurate|fast|combine]",
"quant_mode": "[0|1|2|3]",
"grain_opt_strength": "[yes|no]",
"rdo_ip_4x4": "[off|fast|slow]",
"adaptive_quant_strength": "[AdaptiveQuantStrength]",
"denoise_strength_y": "[DenoiseStrengthY]",
"denoise_strength_c": "[DenoiseStrengthC]",
"black_norm_level": "[BlackNormLevel]",
"pulse_reduction": "[PulseReduction]"
}
}
}
}
Parameter | Description | Allowed Values | Default Value |
---|---|---|---|
interlace_mode | Video interlacing mode | pure, mbaff | pure |
level | Video Level | Positive integer number 10 – 1.0, 11 – 1.1, 12 – 1.2, 13 – 1.3, 16 – 1b, 20 – 2.0, 21 – 2.1, 22 – 2.2, 30 – 3.0, 31 – 3.1, 32 – 3.2, 40 – 4.0, 41 – 4.1, 42 – 4.2, 50 – 5.0, 51 – 5.1, 52 – 5.2, 6 – 6, 61 – 6.1, 62 – 6.2, 100 – auto | none |
refs | Refs | Positive integer number | none |
bf | Bframes | Positive integer number | none |
search_range | Search range | Positive integer number | none |
max_l0_active | List0 reference frames | Positive integer number | none |
max_l1_active | List1 reference frames | Positive integer number | none |
allow_override_max_l0_l1 | Allow_override_max_l0_l1 | yes, no | none |
quant_pI | I slices quantization | Positive integer number between 0 and 51 inclusive | none |
quant_pP | P slices quantization | Positive integer number between 0 and 51 inclusive | none |
quant_pB | B slices quantization | Positive integer number between 0 and 51 inclusive | none |
inter_search_shape | Inter search shape | 16x16, 16x8, 8x8 | none |
entropy_coding_mode | Entropy coding mode | CAVLC, CABAC | none |
use_hadamard_transform | Use hadamard transform | yes, no, refs | none |
video_format | Video format | -1 – auto, 5 – unspecified, 0 – component, 1 – pal, 2 – ntsc, 3 – secam, 4 – mac | none |
num_units_in_tick | Number of time units in tick | Positive integer number | none |
timescale | Timescale | Positive integer number | none |
vbv_buffer_fullness | Initial CBP fullness | Positive integer number | none |
vbv_buffer_fullness_trg | Target fullness | Positive integer number | none |
vcsd_mode | Scene detection | off, idr | none |
cpb_removal_delay | CBP removal delay | Positive integer number | none |
bit_rate_scale | Bitrate scale | Positive integer number | none |
cpb_size_scale | CBP scale | Positive integer number | none |
min_frame_size | Max frame size | Positive integer number | none |
max_frame_size | Max frame size | Positive integer number | none |
hrd_maintain | HRD maintain | yes, no | none |
hrd_low_delay | HRD low delay | yes, no | none |
smooth_factor | Smooth factor | Positive integer number | none |
hrd_preview | HRD preview | yes, no | yes |
slice_arg | Slices number per picture | Positive integer number greater than or equal to 1 | none |
b_slice_reference | B pictures as a reference | yes, no | none |
b_slice_pyramid | B pictures as a reference | yes, no | none |
cb_offset | Cb_offset | Integer number between -12 and 12 inclusive | none |
cr_offset | Cr_offset | Integer number | none |
me_subpel_mode | Subpixel motion search depth | full, half, quarter, quarter_pel_on_ref | none |
me_weighted_p_mode | Weighted P mode | yes, no | none |
me_weighted_b_mode | Weighted P mode | yes, no | none |
enable_fast_intra_decisions | Fast intra coding decision | no, yes, slow | none |
enable_fast_inter_decisions | Fast inter coding decision | no, yes, slow | none |
calc_quality | Quality metrics calculation | disabled, psnr, ssim, psnr-ssim | none |
min_quant | Min quantization | Positive integer number between 0 and 51 inclusive | none |
max_quant | Max quantization | Positive integer number between 0 and 51 inclusive | none |
max_slice_size | Max slice size | Positive integer number | none |
low_delay | Low delay | yes, no | none |
air_mode | Adaptive Intra Refresh delay | yes, no | none |
constrained_intra_pred | Constrained intra prediction | Positive integer number | none |
air_split_frequency | Intra lines frequency | Positive integer number | none |
air_qp_offset | QP offset for AIR mode | Positive integer number between -10 and 10 inclusive | none |
use_deblocking_filter | Use deblocking filter | yes, no | none |
adaptive_deblocking | Adaptive deblocking | yes, no | none |
deblocking_alphaC0_offset | Specifies the offset used in accessing alpha deblocking filter table for filtering operations controlled by the macroblocks within a slice | Integer number between -6 and 6 inclusive | none |
deblocking_beta_offset | Specifies the offset used in accessing beta deblocking filter table for filtering operations controlled by the macroblocks within a slice | Integer number between -6 and 6 inclusive | none |
stream_type | NALU stream types | I, I-sei, II, II-no-sei | none |
bit_depth_luma | Bit depth luminance | 8, 10 | none |
bit_depth_chroma | Bit depth chrominance | 8, 10 | none |
vui_presentation | VUI presentation | Positive integer number | none |
write_au_delimiters | Write access unit delimiters | yes, no | none |
write_seq_end_code | Write sequence end code | no, stream-end, before-idr | none |
write_timestamps | Write picture timing information | no, partial, full | none |
timestamp_offset | Frame based timestamp offset | Integer number | none |
drop_frame_timecode | Use NTSC drop frame timecode | yes, no | none |
write_single_sei_per_nalu | Encapsulate each SEI into its own NAL unit | yes, no | none |
write_seq_par_set | Sequence parameter set | idr, i-frame | none |
write_pic_par_set | Picture parameter set | idr, i-frame, picture | none |
log2_max_poc | Custom log2_max_pic_order_cnt_lsb_minus4 | Integer number between 4 and 16 inclusive | 8 |
log2_max_frame_num | Custom log2_max_frame_num_minus4 | Integer number between 4 and 16 inclusive | 8 |
pic_order_cnt_type | Custom pic_order_cnt_type | 0, 2 | none |
pic_order_present_flag | Custom pic_order_cnt_type | yes, no | none |
fixed_frame_rate | VUI fixed_frame_rate_flag | yes, no | none |
frame_based_timing | Write frame rate in VUI | yes, no | none |
frame_packing_arrangement_mode | Frame packing arrangement mode | none, checkboard, column-interleaving, row-interleaving, side-by-side, top-bottom | none |
stream_creation_product_info | Product name and version number in a stream | none, ll, ds | none |
write_pic_timing_sei | Picture timing SEI message | yes, no | none |
normalize_dts | Normalize DTS | yes, no | none |
min_idr_interval | Minimum IDR | Integer number | none |
adaptive_b_frames | Adaptive B-frames | yes, no | none |
idr_frequency | I-frames as IDR | first, every, every-second | none |
fixed_i_position | Fixed I position | yes, no | none |
isolated_gops | Isolated GOPs | yes, no | none |
leading_b_frames | Leading B-frames | yes, no | none |
fast_multi_ref_me | Fast decisions for multi-ref ME | greedy, heuristic, combine | none |
fast_sub_block_me | Fast decisions for sub-block ME | greedy, heuristic, combine | none |
allow_out_of_pic_mvs | Use pixels beyond the picture boundaries | yes, no | none |
constrained_ref_list | Constrained reference picture list | yes, no | none |
motion_search_pattern | Motion search pattern | diamond, hex-horizontal, hex-horizontal-flat, hex-vertical, hex-vertical-flat | none |
chroma_me | Inter-macroblocks chroma evaluation | Positive integer number | none |
enable_intra_big | Use 16x16 intra prediction modes | Positive integer number | none |
enable_intra_8x8 | Use 8x8 intra prediction modes | Positive integer number | none |
enable_intra_4x4 | Use 4x4 intra prediction modes | Positive integer number | none |
enable_intra_pcm | Use PCM intra prediction modes | Positive integer number | none |
enable_inter_big | Use 16x16 intra prediction modes | Positive integer number | none |
enable_inter_8x8 | Use 8x8 intra prediction modes | Positive integer number | none |
enable_inter_4x4 | Use 4x4 intra prediction modes | Positive integer number | none |
enable_inter_pcm | Use PCM intra prediction modes | Positive integer number | none |
fast_rd_optimization | Fast Rate Distortion optimization | accurate, fast, combine | none |
quant_mode | Quantization optimization mode | 0, 1, 2, 3 | none |
grain_opt_strength | Scalable film grain optimization | yes, no | none |
rdo_ip_4x4 | RDO based selection of best Intra mode | off, fast, slow | none |
adaptive_quant_strength | Aadaptive quantization strengths | Positive integer number | none |
denoise_strength_y | Luma denoise strength | Positive integer number between 0 and 100 inclusive | none |
denoise_strength_c | Chroma denoise strength | Positive integer number between 0 and 100 inclusive | none |
black_norm_level | Pre-encoding black normalization level | Positive integer number between 0 and 255 inclusive | none |
pulse_reduction | Key frame pulsing reduction | Positive integer number between 0 and 10 inclusive | none |