638 lines
31 KiB
C++
638 lines
31 KiB
C++
/**
|
|
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
* SPDX-License-Identifier: Apache-2.0.
|
|
*/
|
|
|
|
#pragma once
|
|
#include <aws/mediaconvert/MediaConvert_EXPORTS.h>
|
|
#include <aws/mediaconvert/model/Vp8FramerateControl.h>
|
|
#include <aws/mediaconvert/model/Vp8FramerateConversionAlgorithm.h>
|
|
#include <aws/mediaconvert/model/Vp8ParControl.h>
|
|
#include <aws/mediaconvert/model/Vp8QualityTuningLevel.h>
|
|
#include <aws/mediaconvert/model/Vp8RateControlMode.h>
|
|
#include <utility>
|
|
|
|
namespace Aws
|
|
{
|
|
namespace Utils
|
|
{
|
|
namespace Json
|
|
{
|
|
class JsonValue;
|
|
class JsonView;
|
|
} // namespace Json
|
|
} // namespace Utils
|
|
namespace MediaConvert
|
|
{
|
|
namespace Model
|
|
{
|
|
|
|
/**
|
|
* Required when you set (Codec) under (VideoDescription)>(CodecSettings) to the
|
|
* value VP8.<p><h3>See Also:</h3> <a
|
|
* href="http://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/Vp8Settings">AWS
|
|
* API Reference</a></p>
|
|
*/
|
|
class AWS_MEDIACONVERT_API Vp8Settings
|
|
{
|
|
public:
|
|
Vp8Settings();
|
|
Vp8Settings(Aws::Utils::Json::JsonView jsonValue);
|
|
Vp8Settings& operator=(Aws::Utils::Json::JsonView jsonValue);
|
|
Aws::Utils::Json::JsonValue Jsonize() const;
|
|
|
|
|
|
/**
|
|
* Target bitrate in bits/second. For example, enter five megabits per second as
|
|
* 5000000.
|
|
*/
|
|
inline int GetBitrate() const{ return m_bitrate; }
|
|
|
|
/**
|
|
* Target bitrate in bits/second. For example, enter five megabits per second as
|
|
* 5000000.
|
|
*/
|
|
inline bool BitrateHasBeenSet() const { return m_bitrateHasBeenSet; }
|
|
|
|
/**
|
|
* Target bitrate in bits/second. For example, enter five megabits per second as
|
|
* 5000000.
|
|
*/
|
|
inline void SetBitrate(int value) { m_bitrateHasBeenSet = true; m_bitrate = value; }
|
|
|
|
/**
|
|
* Target bitrate in bits/second. For example, enter five megabits per second as
|
|
* 5000000.
|
|
*/
|
|
inline Vp8Settings& WithBitrate(int value) { SetBitrate(value); return *this;}
|
|
|
|
|
|
/**
|
|
* If you are using the console, use the Framerate setting to specify the frame
|
|
* rate for this output. If you want to keep the same frame rate as the input
|
|
* video, choose Follow source. If you want to do frame rate conversion, choose a
|
|
* frame rate from the dropdown list or choose Custom. The framerates shown in the
|
|
* dropdown list are decimal approximations of fractions. If you choose Custom,
|
|
* specify your frame rate as a fraction. If you are creating your transcoding job
|
|
* specification as a JSON file without the console, use FramerateControl to
|
|
* specify which value the service uses for the frame rate for this output. Choose
|
|
* INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the
|
|
* input. Choose SPECIFIED if you want the service to use the frame rate you
|
|
* specify in the settings FramerateNumerator and FramerateDenominator.
|
|
*/
|
|
inline const Vp8FramerateControl& GetFramerateControl() const{ return m_framerateControl; }
|
|
|
|
/**
|
|
* If you are using the console, use the Framerate setting to specify the frame
|
|
* rate for this output. If you want to keep the same frame rate as the input
|
|
* video, choose Follow source. If you want to do frame rate conversion, choose a
|
|
* frame rate from the dropdown list or choose Custom. The framerates shown in the
|
|
* dropdown list are decimal approximations of fractions. If you choose Custom,
|
|
* specify your frame rate as a fraction. If you are creating your transcoding job
|
|
* specification as a JSON file without the console, use FramerateControl to
|
|
* specify which value the service uses for the frame rate for this output. Choose
|
|
* INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the
|
|
* input. Choose SPECIFIED if you want the service to use the frame rate you
|
|
* specify in the settings FramerateNumerator and FramerateDenominator.
|
|
*/
|
|
inline bool FramerateControlHasBeenSet() const { return m_framerateControlHasBeenSet; }
|
|
|
|
/**
|
|
* If you are using the console, use the Framerate setting to specify the frame
|
|
* rate for this output. If you want to keep the same frame rate as the input
|
|
* video, choose Follow source. If you want to do frame rate conversion, choose a
|
|
* frame rate from the dropdown list or choose Custom. The framerates shown in the
|
|
* dropdown list are decimal approximations of fractions. If you choose Custom,
|
|
* specify your frame rate as a fraction. If you are creating your transcoding job
|
|
* specification as a JSON file without the console, use FramerateControl to
|
|
* specify which value the service uses for the frame rate for this output. Choose
|
|
* INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the
|
|
* input. Choose SPECIFIED if you want the service to use the frame rate you
|
|
* specify in the settings FramerateNumerator and FramerateDenominator.
|
|
*/
|
|
inline void SetFramerateControl(const Vp8FramerateControl& value) { m_framerateControlHasBeenSet = true; m_framerateControl = value; }
|
|
|
|
/**
|
|
* If you are using the console, use the Framerate setting to specify the frame
|
|
* rate for this output. If you want to keep the same frame rate as the input
|
|
* video, choose Follow source. If you want to do frame rate conversion, choose a
|
|
* frame rate from the dropdown list or choose Custom. The framerates shown in the
|
|
* dropdown list are decimal approximations of fractions. If you choose Custom,
|
|
* specify your frame rate as a fraction. If you are creating your transcoding job
|
|
* specification as a JSON file without the console, use FramerateControl to
|
|
* specify which value the service uses for the frame rate for this output. Choose
|
|
* INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the
|
|
* input. Choose SPECIFIED if you want the service to use the frame rate you
|
|
* specify in the settings FramerateNumerator and FramerateDenominator.
|
|
*/
|
|
inline void SetFramerateControl(Vp8FramerateControl&& value) { m_framerateControlHasBeenSet = true; m_framerateControl = std::move(value); }
|
|
|
|
/**
|
|
* If you are using the console, use the Framerate setting to specify the frame
|
|
* rate for this output. If you want to keep the same frame rate as the input
|
|
* video, choose Follow source. If you want to do frame rate conversion, choose a
|
|
* frame rate from the dropdown list or choose Custom. The framerates shown in the
|
|
* dropdown list are decimal approximations of fractions. If you choose Custom,
|
|
* specify your frame rate as a fraction. If you are creating your transcoding job
|
|
* specification as a JSON file without the console, use FramerateControl to
|
|
* specify which value the service uses for the frame rate for this output. Choose
|
|
* INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the
|
|
* input. Choose SPECIFIED if you want the service to use the frame rate you
|
|
* specify in the settings FramerateNumerator and FramerateDenominator.
|
|
*/
|
|
inline Vp8Settings& WithFramerateControl(const Vp8FramerateControl& value) { SetFramerateControl(value); return *this;}
|
|
|
|
/**
|
|
* If you are using the console, use the Framerate setting to specify the frame
|
|
* rate for this output. If you want to keep the same frame rate as the input
|
|
* video, choose Follow source. If you want to do frame rate conversion, choose a
|
|
* frame rate from the dropdown list or choose Custom. The framerates shown in the
|
|
* dropdown list are decimal approximations of fractions. If you choose Custom,
|
|
* specify your frame rate as a fraction. If you are creating your transcoding job
|
|
* specification as a JSON file without the console, use FramerateControl to
|
|
* specify which value the service uses for the frame rate for this output. Choose
|
|
* INITIALIZE_FROM_SOURCE if you want the service to use the frame rate from the
|
|
* input. Choose SPECIFIED if you want the service to use the frame rate you
|
|
* specify in the settings FramerateNumerator and FramerateDenominator.
|
|
*/
|
|
inline Vp8Settings& WithFramerateControl(Vp8FramerateControl&& value) { SetFramerateControl(std::move(value)); return *this;}
|
|
|
|
|
|
/**
|
|
* Optional. Specify how the transcoder performs framerate conversion. The default
|
|
* behavior is to use Drop duplicate (DUPLICATE_DROP) conversion. When you choose
|
|
* Interpolate (INTERPOLATE) instead, the conversion produces smoother motion.
|
|
*/
|
|
inline const Vp8FramerateConversionAlgorithm& GetFramerateConversionAlgorithm() const{ return m_framerateConversionAlgorithm; }
|
|
|
|
/**
|
|
* Optional. Specify how the transcoder performs framerate conversion. The default
|
|
* behavior is to use Drop duplicate (DUPLICATE_DROP) conversion. When you choose
|
|
* Interpolate (INTERPOLATE) instead, the conversion produces smoother motion.
|
|
*/
|
|
inline bool FramerateConversionAlgorithmHasBeenSet() const { return m_framerateConversionAlgorithmHasBeenSet; }
|
|
|
|
/**
|
|
* Optional. Specify how the transcoder performs framerate conversion. The default
|
|
* behavior is to use Drop duplicate (DUPLICATE_DROP) conversion. When you choose
|
|
* Interpolate (INTERPOLATE) instead, the conversion produces smoother motion.
|
|
*/
|
|
inline void SetFramerateConversionAlgorithm(const Vp8FramerateConversionAlgorithm& value) { m_framerateConversionAlgorithmHasBeenSet = true; m_framerateConversionAlgorithm = value; }
|
|
|
|
/**
|
|
* Optional. Specify how the transcoder performs framerate conversion. The default
|
|
* behavior is to use Drop duplicate (DUPLICATE_DROP) conversion. When you choose
|
|
* Interpolate (INTERPOLATE) instead, the conversion produces smoother motion.
|
|
*/
|
|
inline void SetFramerateConversionAlgorithm(Vp8FramerateConversionAlgorithm&& value) { m_framerateConversionAlgorithmHasBeenSet = true; m_framerateConversionAlgorithm = std::move(value); }
|
|
|
|
/**
|
|
* Optional. Specify how the transcoder performs framerate conversion. The default
|
|
* behavior is to use Drop duplicate (DUPLICATE_DROP) conversion. When you choose
|
|
* Interpolate (INTERPOLATE) instead, the conversion produces smoother motion.
|
|
*/
|
|
inline Vp8Settings& WithFramerateConversionAlgorithm(const Vp8FramerateConversionAlgorithm& value) { SetFramerateConversionAlgorithm(value); return *this;}
|
|
|
|
/**
|
|
* Optional. Specify how the transcoder performs framerate conversion. The default
|
|
* behavior is to use Drop duplicate (DUPLICATE_DROP) conversion. When you choose
|
|
* Interpolate (INTERPOLATE) instead, the conversion produces smoother motion.
|
|
*/
|
|
inline Vp8Settings& WithFramerateConversionAlgorithm(Vp8FramerateConversionAlgorithm&& value) { SetFramerateConversionAlgorithm(std::move(value)); return *this;}
|
|
|
|
|
|
/**
|
|
* When you use the API for transcode jobs that use frame rate conversion, specify
|
|
* the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use
|
|
* FramerateDenominator to specify the denominator of this fraction. In this
|
|
* example, use 1001 for the value of FramerateDenominator. When you use the
|
|
* console for transcode jobs that use frame rate conversion, provide the value as
|
|
* a decimal number for Framerate. In this example, specify 23.976.
|
|
*/
|
|
inline int GetFramerateDenominator() const{ return m_framerateDenominator; }
|
|
|
|
/**
|
|
* When you use the API for transcode jobs that use frame rate conversion, specify
|
|
* the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use
|
|
* FramerateDenominator to specify the denominator of this fraction. In this
|
|
* example, use 1001 for the value of FramerateDenominator. When you use the
|
|
* console for transcode jobs that use frame rate conversion, provide the value as
|
|
* a decimal number for Framerate. In this example, specify 23.976.
|
|
*/
|
|
inline bool FramerateDenominatorHasBeenSet() const { return m_framerateDenominatorHasBeenSet; }
|
|
|
|
/**
|
|
* When you use the API for transcode jobs that use frame rate conversion, specify
|
|
* the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use
|
|
* FramerateDenominator to specify the denominator of this fraction. In this
|
|
* example, use 1001 for the value of FramerateDenominator. When you use the
|
|
* console for transcode jobs that use frame rate conversion, provide the value as
|
|
* a decimal number for Framerate. In this example, specify 23.976.
|
|
*/
|
|
inline void SetFramerateDenominator(int value) { m_framerateDenominatorHasBeenSet = true; m_framerateDenominator = value; }
|
|
|
|
/**
|
|
* When you use the API for transcode jobs that use frame rate conversion, specify
|
|
* the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use
|
|
* FramerateDenominator to specify the denominator of this fraction. In this
|
|
* example, use 1001 for the value of FramerateDenominator. When you use the
|
|
* console for transcode jobs that use frame rate conversion, provide the value as
|
|
* a decimal number for Framerate. In this example, specify 23.976.
|
|
*/
|
|
inline Vp8Settings& WithFramerateDenominator(int value) { SetFramerateDenominator(value); return *this;}
|
|
|
|
|
|
/**
|
|
* When you use the API for transcode jobs that use frame rate conversion, specify
|
|
* the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use
|
|
* FramerateNumerator to specify the numerator of this fraction. In this example,
|
|
* use 24000 for the value of FramerateNumerator. When you use the console for
|
|
* transcode jobs that use frame rate conversion, provide the value as a decimal
|
|
* number for Framerate. In this example, specify 23.976.
|
|
*/
|
|
inline int GetFramerateNumerator() const{ return m_framerateNumerator; }
|
|
|
|
/**
|
|
* When you use the API for transcode jobs that use frame rate conversion, specify
|
|
* the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use
|
|
* FramerateNumerator to specify the numerator of this fraction. In this example,
|
|
* use 24000 for the value of FramerateNumerator. When you use the console for
|
|
* transcode jobs that use frame rate conversion, provide the value as a decimal
|
|
* number for Framerate. In this example, specify 23.976.
|
|
*/
|
|
inline bool FramerateNumeratorHasBeenSet() const { return m_framerateNumeratorHasBeenSet; }
|
|
|
|
/**
|
|
* When you use the API for transcode jobs that use frame rate conversion, specify
|
|
* the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use
|
|
* FramerateNumerator to specify the numerator of this fraction. In this example,
|
|
* use 24000 for the value of FramerateNumerator. When you use the console for
|
|
* transcode jobs that use frame rate conversion, provide the value as a decimal
|
|
* number for Framerate. In this example, specify 23.976.
|
|
*/
|
|
inline void SetFramerateNumerator(int value) { m_framerateNumeratorHasBeenSet = true; m_framerateNumerator = value; }
|
|
|
|
/**
|
|
* When you use the API for transcode jobs that use frame rate conversion, specify
|
|
* the frame rate as a fraction. For example, 24000 / 1001 = 23.976 fps. Use
|
|
* FramerateNumerator to specify the numerator of this fraction. In this example,
|
|
* use 24000 for the value of FramerateNumerator. When you use the console for
|
|
* transcode jobs that use frame rate conversion, provide the value as a decimal
|
|
* number for Framerate. In this example, specify 23.976.
|
|
*/
|
|
inline Vp8Settings& WithFramerateNumerator(int value) { SetFramerateNumerator(value); return *this;}
|
|
|
|
|
|
/**
|
|
* GOP Length (keyframe interval) in frames. Must be greater than zero.
|
|
*/
|
|
inline double GetGopSize() const{ return m_gopSize; }
|
|
|
|
/**
|
|
* GOP Length (keyframe interval) in frames. Must be greater than zero.
|
|
*/
|
|
inline bool GopSizeHasBeenSet() const { return m_gopSizeHasBeenSet; }
|
|
|
|
/**
|
|
* GOP Length (keyframe interval) in frames. Must be greater than zero.
|
|
*/
|
|
inline void SetGopSize(double value) { m_gopSizeHasBeenSet = true; m_gopSize = value; }
|
|
|
|
/**
|
|
* GOP Length (keyframe interval) in frames. Must be greater than zero.
|
|
*/
|
|
inline Vp8Settings& WithGopSize(double value) { SetGopSize(value); return *this;}
|
|
|
|
|
|
/**
|
|
* Optional. Size of buffer (HRD buffer model) in bits. For example, enter five
|
|
* megabits as 5000000.
|
|
*/
|
|
inline int GetHrdBufferSize() const{ return m_hrdBufferSize; }
|
|
|
|
/**
|
|
* Optional. Size of buffer (HRD buffer model) in bits. For example, enter five
|
|
* megabits as 5000000.
|
|
*/
|
|
inline bool HrdBufferSizeHasBeenSet() const { return m_hrdBufferSizeHasBeenSet; }
|
|
|
|
/**
|
|
* Optional. Size of buffer (HRD buffer model) in bits. For example, enter five
|
|
* megabits as 5000000.
|
|
*/
|
|
inline void SetHrdBufferSize(int value) { m_hrdBufferSizeHasBeenSet = true; m_hrdBufferSize = value; }
|
|
|
|
/**
|
|
* Optional. Size of buffer (HRD buffer model) in bits. For example, enter five
|
|
* megabits as 5000000.
|
|
*/
|
|
inline Vp8Settings& WithHrdBufferSize(int value) { SetHrdBufferSize(value); return *this;}
|
|
|
|
|
|
/**
|
|
* Ignore this setting unless you set qualityTuningLevel to MULTI_PASS. Optional.
|
|
* Specify the maximum bitrate in bits/second. For example, enter five megabits per
|
|
* second as 5000000. The default behavior uses twice the target bitrate as the
|
|
* maximum bitrate.
|
|
*/
|
|
inline int GetMaxBitrate() const{ return m_maxBitrate; }
|
|
|
|
/**
|
|
* Ignore this setting unless you set qualityTuningLevel to MULTI_PASS. Optional.
|
|
* Specify the maximum bitrate in bits/second. For example, enter five megabits per
|
|
* second as 5000000. The default behavior uses twice the target bitrate as the
|
|
* maximum bitrate.
|
|
*/
|
|
inline bool MaxBitrateHasBeenSet() const { return m_maxBitrateHasBeenSet; }
|
|
|
|
/**
|
|
* Ignore this setting unless you set qualityTuningLevel to MULTI_PASS. Optional.
|
|
* Specify the maximum bitrate in bits/second. For example, enter five megabits per
|
|
* second as 5000000. The default behavior uses twice the target bitrate as the
|
|
* maximum bitrate.
|
|
*/
|
|
inline void SetMaxBitrate(int value) { m_maxBitrateHasBeenSet = true; m_maxBitrate = value; }
|
|
|
|
/**
|
|
* Ignore this setting unless you set qualityTuningLevel to MULTI_PASS. Optional.
|
|
* Specify the maximum bitrate in bits/second. For example, enter five megabits per
|
|
* second as 5000000. The default behavior uses twice the target bitrate as the
|
|
* maximum bitrate.
|
|
*/
|
|
inline Vp8Settings& WithMaxBitrate(int value) { SetMaxBitrate(value); return *this;}
|
|
|
|
|
|
/**
|
|
* Optional. Specify how the service determines the pixel aspect ratio (PAR) for
|
|
* this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), uses
|
|
* the PAR from your input video for your output. To specify a different PAR in the
|
|
* console, choose any value other than Follow source. To specify a different PAR
|
|
* by editing the JSON job specification, choose SPECIFIED. When you choose
|
|
* SPECIFIED for this setting, you must also specify values for the parNumerator
|
|
* and parDenominator settings.
|
|
*/
|
|
inline const Vp8ParControl& GetParControl() const{ return m_parControl; }
|
|
|
|
/**
|
|
* Optional. Specify how the service determines the pixel aspect ratio (PAR) for
|
|
* this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), uses
|
|
* the PAR from your input video for your output. To specify a different PAR in the
|
|
* console, choose any value other than Follow source. To specify a different PAR
|
|
* by editing the JSON job specification, choose SPECIFIED. When you choose
|
|
* SPECIFIED for this setting, you must also specify values for the parNumerator
|
|
* and parDenominator settings.
|
|
*/
|
|
inline bool ParControlHasBeenSet() const { return m_parControlHasBeenSet; }
|
|
|
|
/**
|
|
* Optional. Specify how the service determines the pixel aspect ratio (PAR) for
|
|
* this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), uses
|
|
* the PAR from your input video for your output. To specify a different PAR in the
|
|
* console, choose any value other than Follow source. To specify a different PAR
|
|
* by editing the JSON job specification, choose SPECIFIED. When you choose
|
|
* SPECIFIED for this setting, you must also specify values for the parNumerator
|
|
* and parDenominator settings.
|
|
*/
|
|
inline void SetParControl(const Vp8ParControl& value) { m_parControlHasBeenSet = true; m_parControl = value; }
|
|
|
|
/**
|
|
* Optional. Specify how the service determines the pixel aspect ratio (PAR) for
|
|
* this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), uses
|
|
* the PAR from your input video for your output. To specify a different PAR in the
|
|
* console, choose any value other than Follow source. To specify a different PAR
|
|
* by editing the JSON job specification, choose SPECIFIED. When you choose
|
|
* SPECIFIED for this setting, you must also specify values for the parNumerator
|
|
* and parDenominator settings.
|
|
*/
|
|
inline void SetParControl(Vp8ParControl&& value) { m_parControlHasBeenSet = true; m_parControl = std::move(value); }
|
|
|
|
/**
|
|
* Optional. Specify how the service determines the pixel aspect ratio (PAR) for
|
|
* this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), uses
|
|
* the PAR from your input video for your output. To specify a different PAR in the
|
|
* console, choose any value other than Follow source. To specify a different PAR
|
|
* by editing the JSON job specification, choose SPECIFIED. When you choose
|
|
* SPECIFIED for this setting, you must also specify values for the parNumerator
|
|
* and parDenominator settings.
|
|
*/
|
|
inline Vp8Settings& WithParControl(const Vp8ParControl& value) { SetParControl(value); return *this;}
|
|
|
|
/**
|
|
* Optional. Specify how the service determines the pixel aspect ratio (PAR) for
|
|
* this output. The default behavior, Follow source (INITIALIZE_FROM_SOURCE), uses
|
|
* the PAR from your input video for your output. To specify a different PAR in the
|
|
* console, choose any value other than Follow source. To specify a different PAR
|
|
* by editing the JSON job specification, choose SPECIFIED. When you choose
|
|
* SPECIFIED for this setting, you must also specify values for the parNumerator
|
|
* and parDenominator settings.
|
|
*/
|
|
inline Vp8Settings& WithParControl(Vp8ParControl&& value) { SetParControl(std::move(value)); return *this;}
|
|
|
|
|
|
/**
|
|
* Required when you set Pixel aspect ratio (parControl) to SPECIFIED. On the
|
|
* console, this corresponds to any value other than Follow source. When you
|
|
* specify an output pixel aspect ratio (PAR) that is different from your input
|
|
* video PAR, provide your output PAR as a ratio. For example, for D1/DV NTSC
|
|
* widescreen, you would specify the ratio 40:33. In this example, the value for
|
|
* parDenominator is 33.
|
|
*/
|
|
inline int GetParDenominator() const{ return m_parDenominator; }
|
|
|
|
/**
|
|
* Required when you set Pixel aspect ratio (parControl) to SPECIFIED. On the
|
|
* console, this corresponds to any value other than Follow source. When you
|
|
* specify an output pixel aspect ratio (PAR) that is different from your input
|
|
* video PAR, provide your output PAR as a ratio. For example, for D1/DV NTSC
|
|
* widescreen, you would specify the ratio 40:33. In this example, the value for
|
|
* parDenominator is 33.
|
|
*/
|
|
inline bool ParDenominatorHasBeenSet() const { return m_parDenominatorHasBeenSet; }
|
|
|
|
/**
|
|
* Required when you set Pixel aspect ratio (parControl) to SPECIFIED. On the
|
|
* console, this corresponds to any value other than Follow source. When you
|
|
* specify an output pixel aspect ratio (PAR) that is different from your input
|
|
* video PAR, provide your output PAR as a ratio. For example, for D1/DV NTSC
|
|
* widescreen, you would specify the ratio 40:33. In this example, the value for
|
|
* parDenominator is 33.
|
|
*/
|
|
inline void SetParDenominator(int value) { m_parDenominatorHasBeenSet = true; m_parDenominator = value; }
|
|
|
|
/**
|
|
* Required when you set Pixel aspect ratio (parControl) to SPECIFIED. On the
|
|
* console, this corresponds to any value other than Follow source. When you
|
|
* specify an output pixel aspect ratio (PAR) that is different from your input
|
|
* video PAR, provide your output PAR as a ratio. For example, for D1/DV NTSC
|
|
* widescreen, you would specify the ratio 40:33. In this example, the value for
|
|
* parDenominator is 33.
|
|
*/
|
|
inline Vp8Settings& WithParDenominator(int value) { SetParDenominator(value); return *this;}
|
|
|
|
|
|
/**
|
|
* Required when you set Pixel aspect ratio (parControl) to SPECIFIED. On the
|
|
* console, this corresponds to any value other than Follow source. When you
|
|
* specify an output pixel aspect ratio (PAR) that is different from your input
|
|
* video PAR, provide your output PAR as a ratio. For example, for D1/DV NTSC
|
|
* widescreen, you would specify the ratio 40:33. In this example, the value for
|
|
* parNumerator is 40.
|
|
*/
|
|
inline int GetParNumerator() const{ return m_parNumerator; }
|
|
|
|
/**
|
|
* Required when you set Pixel aspect ratio (parControl) to SPECIFIED. On the
|
|
* console, this corresponds to any value other than Follow source. When you
|
|
* specify an output pixel aspect ratio (PAR) that is different from your input
|
|
* video PAR, provide your output PAR as a ratio. For example, for D1/DV NTSC
|
|
* widescreen, you would specify the ratio 40:33. In this example, the value for
|
|
* parNumerator is 40.
|
|
*/
|
|
inline bool ParNumeratorHasBeenSet() const { return m_parNumeratorHasBeenSet; }
|
|
|
|
/**
|
|
* Required when you set Pixel aspect ratio (parControl) to SPECIFIED. On the
|
|
* console, this corresponds to any value other than Follow source. When you
|
|
* specify an output pixel aspect ratio (PAR) that is different from your input
|
|
* video PAR, provide your output PAR as a ratio. For example, for D1/DV NTSC
|
|
* widescreen, you would specify the ratio 40:33. In this example, the value for
|
|
* parNumerator is 40.
|
|
*/
|
|
inline void SetParNumerator(int value) { m_parNumeratorHasBeenSet = true; m_parNumerator = value; }
|
|
|
|
/**
|
|
* Required when you set Pixel aspect ratio (parControl) to SPECIFIED. On the
|
|
* console, this corresponds to any value other than Follow source. When you
|
|
* specify an output pixel aspect ratio (PAR) that is different from your input
|
|
* video PAR, provide your output PAR as a ratio. For example, for D1/DV NTSC
|
|
* widescreen, you would specify the ratio 40:33. In this example, the value for
|
|
* parNumerator is 40.
|
|
*/
|
|
inline Vp8Settings& WithParNumerator(int value) { SetParNumerator(value); return *this;}
|
|
|
|
|
|
/**
|
|
* Optional. Use Quality tuning level (qualityTuningLevel) to choose how you want
|
|
* to trade off encoding speed for output video quality. The default behavior is
|
|
* faster, lower quality, multi-pass encoding.
|
|
*/
|
|
inline const Vp8QualityTuningLevel& GetQualityTuningLevel() const{ return m_qualityTuningLevel; }
|
|
|
|
/**
|
|
* Optional. Use Quality tuning level (qualityTuningLevel) to choose how you want
|
|
* to trade off encoding speed for output video quality. The default behavior is
|
|
* faster, lower quality, multi-pass encoding.
|
|
*/
|
|
inline bool QualityTuningLevelHasBeenSet() const { return m_qualityTuningLevelHasBeenSet; }
|
|
|
|
/**
|
|
* Optional. Use Quality tuning level (qualityTuningLevel) to choose how you want
|
|
* to trade off encoding speed for output video quality. The default behavior is
|
|
* faster, lower quality, multi-pass encoding.
|
|
*/
|
|
inline void SetQualityTuningLevel(const Vp8QualityTuningLevel& value) { m_qualityTuningLevelHasBeenSet = true; m_qualityTuningLevel = value; }
|
|
|
|
/**
|
|
* Optional. Use Quality tuning level (qualityTuningLevel) to choose how you want
|
|
* to trade off encoding speed for output video quality. The default behavior is
|
|
* faster, lower quality, multi-pass encoding.
|
|
*/
|
|
inline void SetQualityTuningLevel(Vp8QualityTuningLevel&& value) { m_qualityTuningLevelHasBeenSet = true; m_qualityTuningLevel = std::move(value); }
|
|
|
|
/**
|
|
* Optional. Use Quality tuning level (qualityTuningLevel) to choose how you want
|
|
* to trade off encoding speed for output video quality. The default behavior is
|
|
* faster, lower quality, multi-pass encoding.
|
|
*/
|
|
inline Vp8Settings& WithQualityTuningLevel(const Vp8QualityTuningLevel& value) { SetQualityTuningLevel(value); return *this;}
|
|
|
|
/**
|
|
* Optional. Use Quality tuning level (qualityTuningLevel) to choose how you want
|
|
* to trade off encoding speed for output video quality. The default behavior is
|
|
* faster, lower quality, multi-pass encoding.
|
|
*/
|
|
inline Vp8Settings& WithQualityTuningLevel(Vp8QualityTuningLevel&& value) { SetQualityTuningLevel(std::move(value)); return *this;}
|
|
|
|
|
|
/**
|
|
* With the VP8 codec, you can use only the variable bitrate (VBR) rate control
|
|
* mode.
|
|
*/
|
|
inline const Vp8RateControlMode& GetRateControlMode() const{ return m_rateControlMode; }
|
|
|
|
/**
|
|
* With the VP8 codec, you can use only the variable bitrate (VBR) rate control
|
|
* mode.
|
|
*/
|
|
inline bool RateControlModeHasBeenSet() const { return m_rateControlModeHasBeenSet; }
|
|
|
|
/**
|
|
* With the VP8 codec, you can use only the variable bitrate (VBR) rate control
|
|
* mode.
|
|
*/
|
|
inline void SetRateControlMode(const Vp8RateControlMode& value) { m_rateControlModeHasBeenSet = true; m_rateControlMode = value; }
|
|
|
|
/**
|
|
* With the VP8 codec, you can use only the variable bitrate (VBR) rate control
|
|
* mode.
|
|
*/
|
|
inline void SetRateControlMode(Vp8RateControlMode&& value) { m_rateControlModeHasBeenSet = true; m_rateControlMode = std::move(value); }
|
|
|
|
/**
|
|
* With the VP8 codec, you can use only the variable bitrate (VBR) rate control
|
|
* mode.
|
|
*/
|
|
inline Vp8Settings& WithRateControlMode(const Vp8RateControlMode& value) { SetRateControlMode(value); return *this;}
|
|
|
|
/**
|
|
* With the VP8 codec, you can use only the variable bitrate (VBR) rate control
|
|
* mode.
|
|
*/
|
|
inline Vp8Settings& WithRateControlMode(Vp8RateControlMode&& value) { SetRateControlMode(std::move(value)); return *this;}
|
|
|
|
private:
|
|
|
|
int m_bitrate;
|
|
bool m_bitrateHasBeenSet;
|
|
|
|
Vp8FramerateControl m_framerateControl;
|
|
bool m_framerateControlHasBeenSet;
|
|
|
|
Vp8FramerateConversionAlgorithm m_framerateConversionAlgorithm;
|
|
bool m_framerateConversionAlgorithmHasBeenSet;
|
|
|
|
int m_framerateDenominator;
|
|
bool m_framerateDenominatorHasBeenSet;
|
|
|
|
int m_framerateNumerator;
|
|
bool m_framerateNumeratorHasBeenSet;
|
|
|
|
double m_gopSize;
|
|
bool m_gopSizeHasBeenSet;
|
|
|
|
int m_hrdBufferSize;
|
|
bool m_hrdBufferSizeHasBeenSet;
|
|
|
|
int m_maxBitrate;
|
|
bool m_maxBitrateHasBeenSet;
|
|
|
|
Vp8ParControl m_parControl;
|
|
bool m_parControlHasBeenSet;
|
|
|
|
int m_parDenominator;
|
|
bool m_parDenominatorHasBeenSet;
|
|
|
|
int m_parNumerator;
|
|
bool m_parNumeratorHasBeenSet;
|
|
|
|
Vp8QualityTuningLevel m_qualityTuningLevel;
|
|
bool m_qualityTuningLevelHasBeenSet;
|
|
|
|
Vp8RateControlMode m_rateControlMode;
|
|
bool m_rateControlModeHasBeenSet;
|
|
};
|
|
|
|
} // namespace Model
|
|
} // namespace MediaConvert
|
|
} // namespace Aws
|