1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/medialive/MediaLive_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <aws/medialive/model/M3u8NielsenId3Behavior.h> 10 #include <aws/medialive/model/M3u8PcrControl.h> 11 #include <aws/medialive/model/M3u8Scte35Behavior.h> 12 #include <aws/medialive/model/M3u8TimedMetadataBehavior.h> 13 #include <utility> 14 15 namespace Aws 16 { 17 namespace Utils 18 { 19 namespace Json 20 { 21 class JsonValue; 22 class JsonView; 23 } // namespace Json 24 } // namespace Utils 25 namespace MediaLive 26 { 27 namespace Model 28 { 29 30 /** 31 * Settings information for the .m3u8 container<p><h3>See Also:</h3> <a 32 * href="http://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/M3u8Settings">AWS 33 * API Reference</a></p> 34 */ 35 class AWS_MEDIALIVE_API M3u8Settings 36 { 37 public: 38 M3u8Settings(); 39 M3u8Settings(Aws::Utils::Json::JsonView jsonValue); 40 M3u8Settings& operator=(Aws::Utils::Json::JsonView jsonValue); 41 Aws::Utils::Json::JsonValue Jsonize() const; 42 43 44 /** 45 * The number of audio frames to insert for each PES packet. 46 */ GetAudioFramesPerPes()47 inline int GetAudioFramesPerPes() const{ return m_audioFramesPerPes; } 48 49 /** 50 * The number of audio frames to insert for each PES packet. 51 */ AudioFramesPerPesHasBeenSet()52 inline bool AudioFramesPerPesHasBeenSet() const { return m_audioFramesPerPesHasBeenSet; } 53 54 /** 55 * The number of audio frames to insert for each PES packet. 56 */ SetAudioFramesPerPes(int value)57 inline void SetAudioFramesPerPes(int value) { m_audioFramesPerPesHasBeenSet = true; m_audioFramesPerPes = value; } 58 59 /** 60 * The number of audio frames to insert for each PES packet. 61 */ WithAudioFramesPerPes(int value)62 inline M3u8Settings& WithAudioFramesPerPes(int value) { SetAudioFramesPerPes(value); return *this;} 63 64 65 /** 66 * Packet Identifier (PID) of the elementary audio stream(s) in the transport 67 * stream. Multiple values are accepted, and can be entered in ranges and/or by 68 * comma separation. Can be entered as decimal or hexadecimal values. 69 */ GetAudioPids()70 inline const Aws::String& GetAudioPids() const{ return m_audioPids; } 71 72 /** 73 * Packet Identifier (PID) of the elementary audio stream(s) in the transport 74 * stream. Multiple values are accepted, and can be entered in ranges and/or by 75 * comma separation. Can be entered as decimal or hexadecimal values. 76 */ AudioPidsHasBeenSet()77 inline bool AudioPidsHasBeenSet() const { return m_audioPidsHasBeenSet; } 78 79 /** 80 * Packet Identifier (PID) of the elementary audio stream(s) in the transport 81 * stream. Multiple values are accepted, and can be entered in ranges and/or by 82 * comma separation. Can be entered as decimal or hexadecimal values. 83 */ SetAudioPids(const Aws::String & value)84 inline void SetAudioPids(const Aws::String& value) { m_audioPidsHasBeenSet = true; m_audioPids = value; } 85 86 /** 87 * Packet Identifier (PID) of the elementary audio stream(s) in the transport 88 * stream. Multiple values are accepted, and can be entered in ranges and/or by 89 * comma separation. Can be entered as decimal or hexadecimal values. 90 */ SetAudioPids(Aws::String && value)91 inline void SetAudioPids(Aws::String&& value) { m_audioPidsHasBeenSet = true; m_audioPids = std::move(value); } 92 93 /** 94 * Packet Identifier (PID) of the elementary audio stream(s) in the transport 95 * stream. Multiple values are accepted, and can be entered in ranges and/or by 96 * comma separation. Can be entered as decimal or hexadecimal values. 97 */ SetAudioPids(const char * value)98 inline void SetAudioPids(const char* value) { m_audioPidsHasBeenSet = true; m_audioPids.assign(value); } 99 100 /** 101 * Packet Identifier (PID) of the elementary audio stream(s) in the transport 102 * stream. Multiple values are accepted, and can be entered in ranges and/or by 103 * comma separation. Can be entered as decimal or hexadecimal values. 104 */ WithAudioPids(const Aws::String & value)105 inline M3u8Settings& WithAudioPids(const Aws::String& value) { SetAudioPids(value); return *this;} 106 107 /** 108 * Packet Identifier (PID) of the elementary audio stream(s) in the transport 109 * stream. Multiple values are accepted, and can be entered in ranges and/or by 110 * comma separation. Can be entered as decimal or hexadecimal values. 111 */ WithAudioPids(Aws::String && value)112 inline M3u8Settings& WithAudioPids(Aws::String&& value) { SetAudioPids(std::move(value)); return *this;} 113 114 /** 115 * Packet Identifier (PID) of the elementary audio stream(s) in the transport 116 * stream. Multiple values are accepted, and can be entered in ranges and/or by 117 * comma separation. Can be entered as decimal or hexadecimal values. 118 */ WithAudioPids(const char * value)119 inline M3u8Settings& WithAudioPids(const char* value) { SetAudioPids(value); return *this;} 120 121 122 /** 123 * This parameter is unused and deprecated. 124 */ GetEcmPid()125 inline const Aws::String& GetEcmPid() const{ return m_ecmPid; } 126 127 /** 128 * This parameter is unused and deprecated. 129 */ EcmPidHasBeenSet()130 inline bool EcmPidHasBeenSet() const { return m_ecmPidHasBeenSet; } 131 132 /** 133 * This parameter is unused and deprecated. 134 */ SetEcmPid(const Aws::String & value)135 inline void SetEcmPid(const Aws::String& value) { m_ecmPidHasBeenSet = true; m_ecmPid = value; } 136 137 /** 138 * This parameter is unused and deprecated. 139 */ SetEcmPid(Aws::String && value)140 inline void SetEcmPid(Aws::String&& value) { m_ecmPidHasBeenSet = true; m_ecmPid = std::move(value); } 141 142 /** 143 * This parameter is unused and deprecated. 144 */ SetEcmPid(const char * value)145 inline void SetEcmPid(const char* value) { m_ecmPidHasBeenSet = true; m_ecmPid.assign(value); } 146 147 /** 148 * This parameter is unused and deprecated. 149 */ WithEcmPid(const Aws::String & value)150 inline M3u8Settings& WithEcmPid(const Aws::String& value) { SetEcmPid(value); return *this;} 151 152 /** 153 * This parameter is unused and deprecated. 154 */ WithEcmPid(Aws::String && value)155 inline M3u8Settings& WithEcmPid(Aws::String&& value) { SetEcmPid(std::move(value)); return *this;} 156 157 /** 158 * This parameter is unused and deprecated. 159 */ WithEcmPid(const char * value)160 inline M3u8Settings& WithEcmPid(const char* value) { SetEcmPid(value); return *this;} 161 162 163 /** 164 * If set to passthrough, Nielsen inaudible tones for media tracking will be 165 * detected in the input audio and an equivalent ID3 tag will be inserted in the 166 * output. 167 */ GetNielsenId3Behavior()168 inline const M3u8NielsenId3Behavior& GetNielsenId3Behavior() const{ return m_nielsenId3Behavior; } 169 170 /** 171 * If set to passthrough, Nielsen inaudible tones for media tracking will be 172 * detected in the input audio and an equivalent ID3 tag will be inserted in the 173 * output. 174 */ NielsenId3BehaviorHasBeenSet()175 inline bool NielsenId3BehaviorHasBeenSet() const { return m_nielsenId3BehaviorHasBeenSet; } 176 177 /** 178 * If set to passthrough, Nielsen inaudible tones for media tracking will be 179 * detected in the input audio and an equivalent ID3 tag will be inserted in the 180 * output. 181 */ SetNielsenId3Behavior(const M3u8NielsenId3Behavior & value)182 inline void SetNielsenId3Behavior(const M3u8NielsenId3Behavior& value) { m_nielsenId3BehaviorHasBeenSet = true; m_nielsenId3Behavior = value; } 183 184 /** 185 * If set to passthrough, Nielsen inaudible tones for media tracking will be 186 * detected in the input audio and an equivalent ID3 tag will be inserted in the 187 * output. 188 */ SetNielsenId3Behavior(M3u8NielsenId3Behavior && value)189 inline void SetNielsenId3Behavior(M3u8NielsenId3Behavior&& value) { m_nielsenId3BehaviorHasBeenSet = true; m_nielsenId3Behavior = std::move(value); } 190 191 /** 192 * If set to passthrough, Nielsen inaudible tones for media tracking will be 193 * detected in the input audio and an equivalent ID3 tag will be inserted in the 194 * output. 195 */ WithNielsenId3Behavior(const M3u8NielsenId3Behavior & value)196 inline M3u8Settings& WithNielsenId3Behavior(const M3u8NielsenId3Behavior& value) { SetNielsenId3Behavior(value); return *this;} 197 198 /** 199 * If set to passthrough, Nielsen inaudible tones for media tracking will be 200 * detected in the input audio and an equivalent ID3 tag will be inserted in the 201 * output. 202 */ WithNielsenId3Behavior(M3u8NielsenId3Behavior && value)203 inline M3u8Settings& WithNielsenId3Behavior(M3u8NielsenId3Behavior&& value) { SetNielsenId3Behavior(std::move(value)); return *this;} 204 205 206 /** 207 * The number of milliseconds between instances of this table in the output 208 * transport stream. A value of \"0\" writes out the PMT once per segment file. 209 */ GetPatInterval()210 inline int GetPatInterval() const{ return m_patInterval; } 211 212 /** 213 * The number of milliseconds between instances of this table in the output 214 * transport stream. A value of \"0\" writes out the PMT once per segment file. 215 */ PatIntervalHasBeenSet()216 inline bool PatIntervalHasBeenSet() const { return m_patIntervalHasBeenSet; } 217 218 /** 219 * The number of milliseconds between instances of this table in the output 220 * transport stream. A value of \"0\" writes out the PMT once per segment file. 221 */ SetPatInterval(int value)222 inline void SetPatInterval(int value) { m_patIntervalHasBeenSet = true; m_patInterval = value; } 223 224 /** 225 * The number of milliseconds between instances of this table in the output 226 * transport stream. A value of \"0\" writes out the PMT once per segment file. 227 */ WithPatInterval(int value)228 inline M3u8Settings& WithPatInterval(int value) { SetPatInterval(value); return *this;} 229 230 231 /** 232 * When set to pcrEveryPesPacket, a Program Clock Reference value is inserted for 233 * every Packetized Elementary Stream (PES) header. This parameter is effective 234 * only when the PCR PID is the same as the video or audio elementary stream. 235 */ GetPcrControl()236 inline const M3u8PcrControl& GetPcrControl() const{ return m_pcrControl; } 237 238 /** 239 * When set to pcrEveryPesPacket, a Program Clock Reference value is inserted for 240 * every Packetized Elementary Stream (PES) header. This parameter is effective 241 * only when the PCR PID is the same as the video or audio elementary stream. 242 */ PcrControlHasBeenSet()243 inline bool PcrControlHasBeenSet() const { return m_pcrControlHasBeenSet; } 244 245 /** 246 * When set to pcrEveryPesPacket, a Program Clock Reference value is inserted for 247 * every Packetized Elementary Stream (PES) header. This parameter is effective 248 * only when the PCR PID is the same as the video or audio elementary stream. 249 */ SetPcrControl(const M3u8PcrControl & value)250 inline void SetPcrControl(const M3u8PcrControl& value) { m_pcrControlHasBeenSet = true; m_pcrControl = value; } 251 252 /** 253 * When set to pcrEveryPesPacket, a Program Clock Reference value is inserted for 254 * every Packetized Elementary Stream (PES) header. This parameter is effective 255 * only when the PCR PID is the same as the video or audio elementary stream. 256 */ SetPcrControl(M3u8PcrControl && value)257 inline void SetPcrControl(M3u8PcrControl&& value) { m_pcrControlHasBeenSet = true; m_pcrControl = std::move(value); } 258 259 /** 260 * When set to pcrEveryPesPacket, a Program Clock Reference value is inserted for 261 * every Packetized Elementary Stream (PES) header. This parameter is effective 262 * only when the PCR PID is the same as the video or audio elementary stream. 263 */ WithPcrControl(const M3u8PcrControl & value)264 inline M3u8Settings& WithPcrControl(const M3u8PcrControl& value) { SetPcrControl(value); return *this;} 265 266 /** 267 * When set to pcrEveryPesPacket, a Program Clock Reference value is inserted for 268 * every Packetized Elementary Stream (PES) header. This parameter is effective 269 * only when the PCR PID is the same as the video or audio elementary stream. 270 */ WithPcrControl(M3u8PcrControl && value)271 inline M3u8Settings& WithPcrControl(M3u8PcrControl&& value) { SetPcrControl(std::move(value)); return *this;} 272 273 274 /** 275 * Maximum time in milliseconds between Program Clock References (PCRs) inserted 276 * into the transport stream. 277 */ GetPcrPeriod()278 inline int GetPcrPeriod() const{ return m_pcrPeriod; } 279 280 /** 281 * Maximum time in milliseconds between Program Clock References (PCRs) inserted 282 * into the transport stream. 283 */ PcrPeriodHasBeenSet()284 inline bool PcrPeriodHasBeenSet() const { return m_pcrPeriodHasBeenSet; } 285 286 /** 287 * Maximum time in milliseconds between Program Clock References (PCRs) inserted 288 * into the transport stream. 289 */ SetPcrPeriod(int value)290 inline void SetPcrPeriod(int value) { m_pcrPeriodHasBeenSet = true; m_pcrPeriod = value; } 291 292 /** 293 * Maximum time in milliseconds between Program Clock References (PCRs) inserted 294 * into the transport stream. 295 */ WithPcrPeriod(int value)296 inline M3u8Settings& WithPcrPeriod(int value) { SetPcrPeriod(value); return *this;} 297 298 299 /** 300 * Packet Identifier (PID) of the Program Clock Reference (PCR) in the transport 301 * stream. When no value is given, the encoder will assign the same value as the 302 * Video PID. Can be entered as a decimal or hexadecimal value. 303 */ GetPcrPid()304 inline const Aws::String& GetPcrPid() const{ return m_pcrPid; } 305 306 /** 307 * Packet Identifier (PID) of the Program Clock Reference (PCR) in the transport 308 * stream. When no value is given, the encoder will assign the same value as the 309 * Video PID. Can be entered as a decimal or hexadecimal value. 310 */ PcrPidHasBeenSet()311 inline bool PcrPidHasBeenSet() const { return m_pcrPidHasBeenSet; } 312 313 /** 314 * Packet Identifier (PID) of the Program Clock Reference (PCR) in the transport 315 * stream. When no value is given, the encoder will assign the same value as the 316 * Video PID. Can be entered as a decimal or hexadecimal value. 317 */ SetPcrPid(const Aws::String & value)318 inline void SetPcrPid(const Aws::String& value) { m_pcrPidHasBeenSet = true; m_pcrPid = value; } 319 320 /** 321 * Packet Identifier (PID) of the Program Clock Reference (PCR) in the transport 322 * stream. When no value is given, the encoder will assign the same value as the 323 * Video PID. Can be entered as a decimal or hexadecimal value. 324 */ SetPcrPid(Aws::String && value)325 inline void SetPcrPid(Aws::String&& value) { m_pcrPidHasBeenSet = true; m_pcrPid = std::move(value); } 326 327 /** 328 * Packet Identifier (PID) of the Program Clock Reference (PCR) in the transport 329 * stream. When no value is given, the encoder will assign the same value as the 330 * Video PID. Can be entered as a decimal or hexadecimal value. 331 */ SetPcrPid(const char * value)332 inline void SetPcrPid(const char* value) { m_pcrPidHasBeenSet = true; m_pcrPid.assign(value); } 333 334 /** 335 * Packet Identifier (PID) of the Program Clock Reference (PCR) in the transport 336 * stream. When no value is given, the encoder will assign the same value as the 337 * Video PID. Can be entered as a decimal or hexadecimal value. 338 */ WithPcrPid(const Aws::String & value)339 inline M3u8Settings& WithPcrPid(const Aws::String& value) { SetPcrPid(value); return *this;} 340 341 /** 342 * Packet Identifier (PID) of the Program Clock Reference (PCR) in the transport 343 * stream. When no value is given, the encoder will assign the same value as the 344 * Video PID. Can be entered as a decimal or hexadecimal value. 345 */ WithPcrPid(Aws::String && value)346 inline M3u8Settings& WithPcrPid(Aws::String&& value) { SetPcrPid(std::move(value)); return *this;} 347 348 /** 349 * Packet Identifier (PID) of the Program Clock Reference (PCR) in the transport 350 * stream. When no value is given, the encoder will assign the same value as the 351 * Video PID. Can be entered as a decimal or hexadecimal value. 352 */ WithPcrPid(const char * value)353 inline M3u8Settings& WithPcrPid(const char* value) { SetPcrPid(value); return *this;} 354 355 356 /** 357 * The number of milliseconds between instances of this table in the output 358 * transport stream. A value of \"0\" writes out the PMT once per segment file. 359 */ GetPmtInterval()360 inline int GetPmtInterval() const{ return m_pmtInterval; } 361 362 /** 363 * The number of milliseconds between instances of this table in the output 364 * transport stream. A value of \"0\" writes out the PMT once per segment file. 365 */ PmtIntervalHasBeenSet()366 inline bool PmtIntervalHasBeenSet() const { return m_pmtIntervalHasBeenSet; } 367 368 /** 369 * The number of milliseconds between instances of this table in the output 370 * transport stream. A value of \"0\" writes out the PMT once per segment file. 371 */ SetPmtInterval(int value)372 inline void SetPmtInterval(int value) { m_pmtIntervalHasBeenSet = true; m_pmtInterval = value; } 373 374 /** 375 * The number of milliseconds between instances of this table in the output 376 * transport stream. A value of \"0\" writes out the PMT once per segment file. 377 */ WithPmtInterval(int value)378 inline M3u8Settings& WithPmtInterval(int value) { SetPmtInterval(value); return *this;} 379 380 381 /** 382 * Packet Identifier (PID) for the Program Map Table (PMT) in the transport stream. 383 * Can be entered as a decimal or hexadecimal value. 384 */ GetPmtPid()385 inline const Aws::String& GetPmtPid() const{ return m_pmtPid; } 386 387 /** 388 * Packet Identifier (PID) for the Program Map Table (PMT) in the transport stream. 389 * Can be entered as a decimal or hexadecimal value. 390 */ PmtPidHasBeenSet()391 inline bool PmtPidHasBeenSet() const { return m_pmtPidHasBeenSet; } 392 393 /** 394 * Packet Identifier (PID) for the Program Map Table (PMT) in the transport stream. 395 * Can be entered as a decimal or hexadecimal value. 396 */ SetPmtPid(const Aws::String & value)397 inline void SetPmtPid(const Aws::String& value) { m_pmtPidHasBeenSet = true; m_pmtPid = value; } 398 399 /** 400 * Packet Identifier (PID) for the Program Map Table (PMT) in the transport stream. 401 * Can be entered as a decimal or hexadecimal value. 402 */ SetPmtPid(Aws::String && value)403 inline void SetPmtPid(Aws::String&& value) { m_pmtPidHasBeenSet = true; m_pmtPid = std::move(value); } 404 405 /** 406 * Packet Identifier (PID) for the Program Map Table (PMT) in the transport stream. 407 * Can be entered as a decimal or hexadecimal value. 408 */ SetPmtPid(const char * value)409 inline void SetPmtPid(const char* value) { m_pmtPidHasBeenSet = true; m_pmtPid.assign(value); } 410 411 /** 412 * Packet Identifier (PID) for the Program Map Table (PMT) in the transport stream. 413 * Can be entered as a decimal or hexadecimal value. 414 */ WithPmtPid(const Aws::String & value)415 inline M3u8Settings& WithPmtPid(const Aws::String& value) { SetPmtPid(value); return *this;} 416 417 /** 418 * Packet Identifier (PID) for the Program Map Table (PMT) in the transport stream. 419 * Can be entered as a decimal or hexadecimal value. 420 */ WithPmtPid(Aws::String && value)421 inline M3u8Settings& WithPmtPid(Aws::String&& value) { SetPmtPid(std::move(value)); return *this;} 422 423 /** 424 * Packet Identifier (PID) for the Program Map Table (PMT) in the transport stream. 425 * Can be entered as a decimal or hexadecimal value. 426 */ WithPmtPid(const char * value)427 inline M3u8Settings& WithPmtPid(const char* value) { SetPmtPid(value); return *this;} 428 429 430 /** 431 * The value of the program number field in the Program Map Table. 432 */ GetProgramNum()433 inline int GetProgramNum() const{ return m_programNum; } 434 435 /** 436 * The value of the program number field in the Program Map Table. 437 */ ProgramNumHasBeenSet()438 inline bool ProgramNumHasBeenSet() const { return m_programNumHasBeenSet; } 439 440 /** 441 * The value of the program number field in the Program Map Table. 442 */ SetProgramNum(int value)443 inline void SetProgramNum(int value) { m_programNumHasBeenSet = true; m_programNum = value; } 444 445 /** 446 * The value of the program number field in the Program Map Table. 447 */ WithProgramNum(int value)448 inline M3u8Settings& WithProgramNum(int value) { SetProgramNum(value); return *this;} 449 450 451 /** 452 * If set to passthrough, passes any SCTE-35 signals from the input source to this 453 * output. 454 */ GetScte35Behavior()455 inline const M3u8Scte35Behavior& GetScte35Behavior() const{ return m_scte35Behavior; } 456 457 /** 458 * If set to passthrough, passes any SCTE-35 signals from the input source to this 459 * output. 460 */ Scte35BehaviorHasBeenSet()461 inline bool Scte35BehaviorHasBeenSet() const { return m_scte35BehaviorHasBeenSet; } 462 463 /** 464 * If set to passthrough, passes any SCTE-35 signals from the input source to this 465 * output. 466 */ SetScte35Behavior(const M3u8Scte35Behavior & value)467 inline void SetScte35Behavior(const M3u8Scte35Behavior& value) { m_scte35BehaviorHasBeenSet = true; m_scte35Behavior = value; } 468 469 /** 470 * If set to passthrough, passes any SCTE-35 signals from the input source to this 471 * output. 472 */ SetScte35Behavior(M3u8Scte35Behavior && value)473 inline void SetScte35Behavior(M3u8Scte35Behavior&& value) { m_scte35BehaviorHasBeenSet = true; m_scte35Behavior = std::move(value); } 474 475 /** 476 * If set to passthrough, passes any SCTE-35 signals from the input source to this 477 * output. 478 */ WithScte35Behavior(const M3u8Scte35Behavior & value)479 inline M3u8Settings& WithScte35Behavior(const M3u8Scte35Behavior& value) { SetScte35Behavior(value); return *this;} 480 481 /** 482 * If set to passthrough, passes any SCTE-35 signals from the input source to this 483 * output. 484 */ WithScte35Behavior(M3u8Scte35Behavior && value)485 inline M3u8Settings& WithScte35Behavior(M3u8Scte35Behavior&& value) { SetScte35Behavior(std::move(value)); return *this;} 486 487 488 /** 489 * Packet Identifier (PID) of the SCTE-35 stream in the transport stream. Can be 490 * entered as a decimal or hexadecimal value. 491 */ GetScte35Pid()492 inline const Aws::String& GetScte35Pid() const{ return m_scte35Pid; } 493 494 /** 495 * Packet Identifier (PID) of the SCTE-35 stream in the transport stream. Can be 496 * entered as a decimal or hexadecimal value. 497 */ Scte35PidHasBeenSet()498 inline bool Scte35PidHasBeenSet() const { return m_scte35PidHasBeenSet; } 499 500 /** 501 * Packet Identifier (PID) of the SCTE-35 stream in the transport stream. Can be 502 * entered as a decimal or hexadecimal value. 503 */ SetScte35Pid(const Aws::String & value)504 inline void SetScte35Pid(const Aws::String& value) { m_scte35PidHasBeenSet = true; m_scte35Pid = value; } 505 506 /** 507 * Packet Identifier (PID) of the SCTE-35 stream in the transport stream. Can be 508 * entered as a decimal or hexadecimal value. 509 */ SetScte35Pid(Aws::String && value)510 inline void SetScte35Pid(Aws::String&& value) { m_scte35PidHasBeenSet = true; m_scte35Pid = std::move(value); } 511 512 /** 513 * Packet Identifier (PID) of the SCTE-35 stream in the transport stream. Can be 514 * entered as a decimal or hexadecimal value. 515 */ SetScte35Pid(const char * value)516 inline void SetScte35Pid(const char* value) { m_scte35PidHasBeenSet = true; m_scte35Pid.assign(value); } 517 518 /** 519 * Packet Identifier (PID) of the SCTE-35 stream in the transport stream. Can be 520 * entered as a decimal or hexadecimal value. 521 */ WithScte35Pid(const Aws::String & value)522 inline M3u8Settings& WithScte35Pid(const Aws::String& value) { SetScte35Pid(value); return *this;} 523 524 /** 525 * Packet Identifier (PID) of the SCTE-35 stream in the transport stream. Can be 526 * entered as a decimal or hexadecimal value. 527 */ WithScte35Pid(Aws::String && value)528 inline M3u8Settings& WithScte35Pid(Aws::String&& value) { SetScte35Pid(std::move(value)); return *this;} 529 530 /** 531 * Packet Identifier (PID) of the SCTE-35 stream in the transport stream. Can be 532 * entered as a decimal or hexadecimal value. 533 */ WithScte35Pid(const char * value)534 inline M3u8Settings& WithScte35Pid(const char* value) { SetScte35Pid(value); return *this;} 535 536 537 /** 538 * When set to passthrough, timed metadata is passed through from input to output. 539 */ GetTimedMetadataBehavior()540 inline const M3u8TimedMetadataBehavior& GetTimedMetadataBehavior() const{ return m_timedMetadataBehavior; } 541 542 /** 543 * When set to passthrough, timed metadata is passed through from input to output. 544 */ TimedMetadataBehaviorHasBeenSet()545 inline bool TimedMetadataBehaviorHasBeenSet() const { return m_timedMetadataBehaviorHasBeenSet; } 546 547 /** 548 * When set to passthrough, timed metadata is passed through from input to output. 549 */ SetTimedMetadataBehavior(const M3u8TimedMetadataBehavior & value)550 inline void SetTimedMetadataBehavior(const M3u8TimedMetadataBehavior& value) { m_timedMetadataBehaviorHasBeenSet = true; m_timedMetadataBehavior = value; } 551 552 /** 553 * When set to passthrough, timed metadata is passed through from input to output. 554 */ SetTimedMetadataBehavior(M3u8TimedMetadataBehavior && value)555 inline void SetTimedMetadataBehavior(M3u8TimedMetadataBehavior&& value) { m_timedMetadataBehaviorHasBeenSet = true; m_timedMetadataBehavior = std::move(value); } 556 557 /** 558 * When set to passthrough, timed metadata is passed through from input to output. 559 */ WithTimedMetadataBehavior(const M3u8TimedMetadataBehavior & value)560 inline M3u8Settings& WithTimedMetadataBehavior(const M3u8TimedMetadataBehavior& value) { SetTimedMetadataBehavior(value); return *this;} 561 562 /** 563 * When set to passthrough, timed metadata is passed through from input to output. 564 */ WithTimedMetadataBehavior(M3u8TimedMetadataBehavior && value)565 inline M3u8Settings& WithTimedMetadataBehavior(M3u8TimedMetadataBehavior&& value) { SetTimedMetadataBehavior(std::move(value)); return *this;} 566 567 568 /** 569 * Packet Identifier (PID) of the timed metadata stream in the transport stream. 570 * Can be entered as a decimal or hexadecimal value. Valid values are 32 (or 571 * 0x20)..8182 (or 0x1ff6). 572 */ GetTimedMetadataPid()573 inline const Aws::String& GetTimedMetadataPid() const{ return m_timedMetadataPid; } 574 575 /** 576 * Packet Identifier (PID) of the timed metadata stream in the transport stream. 577 * Can be entered as a decimal or hexadecimal value. Valid values are 32 (or 578 * 0x20)..8182 (or 0x1ff6). 579 */ TimedMetadataPidHasBeenSet()580 inline bool TimedMetadataPidHasBeenSet() const { return m_timedMetadataPidHasBeenSet; } 581 582 /** 583 * Packet Identifier (PID) of the timed metadata stream in the transport stream. 584 * Can be entered as a decimal or hexadecimal value. Valid values are 32 (or 585 * 0x20)..8182 (or 0x1ff6). 586 */ SetTimedMetadataPid(const Aws::String & value)587 inline void SetTimedMetadataPid(const Aws::String& value) { m_timedMetadataPidHasBeenSet = true; m_timedMetadataPid = value; } 588 589 /** 590 * Packet Identifier (PID) of the timed metadata stream in the transport stream. 591 * Can be entered as a decimal or hexadecimal value. Valid values are 32 (or 592 * 0x20)..8182 (or 0x1ff6). 593 */ SetTimedMetadataPid(Aws::String && value)594 inline void SetTimedMetadataPid(Aws::String&& value) { m_timedMetadataPidHasBeenSet = true; m_timedMetadataPid = std::move(value); } 595 596 /** 597 * Packet Identifier (PID) of the timed metadata stream in the transport stream. 598 * Can be entered as a decimal or hexadecimal value. Valid values are 32 (or 599 * 0x20)..8182 (or 0x1ff6). 600 */ SetTimedMetadataPid(const char * value)601 inline void SetTimedMetadataPid(const char* value) { m_timedMetadataPidHasBeenSet = true; m_timedMetadataPid.assign(value); } 602 603 /** 604 * Packet Identifier (PID) of the timed metadata stream in the transport stream. 605 * Can be entered as a decimal or hexadecimal value. Valid values are 32 (or 606 * 0x20)..8182 (or 0x1ff6). 607 */ WithTimedMetadataPid(const Aws::String & value)608 inline M3u8Settings& WithTimedMetadataPid(const Aws::String& value) { SetTimedMetadataPid(value); return *this;} 609 610 /** 611 * Packet Identifier (PID) of the timed metadata stream in the transport stream. 612 * Can be entered as a decimal or hexadecimal value. Valid values are 32 (or 613 * 0x20)..8182 (or 0x1ff6). 614 */ WithTimedMetadataPid(Aws::String && value)615 inline M3u8Settings& WithTimedMetadataPid(Aws::String&& value) { SetTimedMetadataPid(std::move(value)); return *this;} 616 617 /** 618 * Packet Identifier (PID) of the timed metadata stream in the transport stream. 619 * Can be entered as a decimal or hexadecimal value. Valid values are 32 (or 620 * 0x20)..8182 (or 0x1ff6). 621 */ WithTimedMetadataPid(const char * value)622 inline M3u8Settings& WithTimedMetadataPid(const char* value) { SetTimedMetadataPid(value); return *this;} 623 624 625 /** 626 * The value of the transport stream ID field in the Program Map Table. 627 */ GetTransportStreamId()628 inline int GetTransportStreamId() const{ return m_transportStreamId; } 629 630 /** 631 * The value of the transport stream ID field in the Program Map Table. 632 */ TransportStreamIdHasBeenSet()633 inline bool TransportStreamIdHasBeenSet() const { return m_transportStreamIdHasBeenSet; } 634 635 /** 636 * The value of the transport stream ID field in the Program Map Table. 637 */ SetTransportStreamId(int value)638 inline void SetTransportStreamId(int value) { m_transportStreamIdHasBeenSet = true; m_transportStreamId = value; } 639 640 /** 641 * The value of the transport stream ID field in the Program Map Table. 642 */ WithTransportStreamId(int value)643 inline M3u8Settings& WithTransportStreamId(int value) { SetTransportStreamId(value); return *this;} 644 645 646 /** 647 * Packet Identifier (PID) of the elementary video stream in the transport stream. 648 * Can be entered as a decimal or hexadecimal value. 649 */ GetVideoPid()650 inline const Aws::String& GetVideoPid() const{ return m_videoPid; } 651 652 /** 653 * Packet Identifier (PID) of the elementary video stream in the transport stream. 654 * Can be entered as a decimal or hexadecimal value. 655 */ VideoPidHasBeenSet()656 inline bool VideoPidHasBeenSet() const { return m_videoPidHasBeenSet; } 657 658 /** 659 * Packet Identifier (PID) of the elementary video stream in the transport stream. 660 * Can be entered as a decimal or hexadecimal value. 661 */ SetVideoPid(const Aws::String & value)662 inline void SetVideoPid(const Aws::String& value) { m_videoPidHasBeenSet = true; m_videoPid = value; } 663 664 /** 665 * Packet Identifier (PID) of the elementary video stream in the transport stream. 666 * Can be entered as a decimal or hexadecimal value. 667 */ SetVideoPid(Aws::String && value)668 inline void SetVideoPid(Aws::String&& value) { m_videoPidHasBeenSet = true; m_videoPid = std::move(value); } 669 670 /** 671 * Packet Identifier (PID) of the elementary video stream in the transport stream. 672 * Can be entered as a decimal or hexadecimal value. 673 */ SetVideoPid(const char * value)674 inline void SetVideoPid(const char* value) { m_videoPidHasBeenSet = true; m_videoPid.assign(value); } 675 676 /** 677 * Packet Identifier (PID) of the elementary video stream in the transport stream. 678 * Can be entered as a decimal or hexadecimal value. 679 */ WithVideoPid(const Aws::String & value)680 inline M3u8Settings& WithVideoPid(const Aws::String& value) { SetVideoPid(value); return *this;} 681 682 /** 683 * Packet Identifier (PID) of the elementary video stream in the transport stream. 684 * Can be entered as a decimal or hexadecimal value. 685 */ WithVideoPid(Aws::String && value)686 inline M3u8Settings& WithVideoPid(Aws::String&& value) { SetVideoPid(std::move(value)); return *this;} 687 688 /** 689 * Packet Identifier (PID) of the elementary video stream in the transport stream. 690 * Can be entered as a decimal or hexadecimal value. 691 */ WithVideoPid(const char * value)692 inline M3u8Settings& WithVideoPid(const char* value) { SetVideoPid(value); return *this;} 693 694 private: 695 696 int m_audioFramesPerPes; 697 bool m_audioFramesPerPesHasBeenSet; 698 699 Aws::String m_audioPids; 700 bool m_audioPidsHasBeenSet; 701 702 Aws::String m_ecmPid; 703 bool m_ecmPidHasBeenSet; 704 705 M3u8NielsenId3Behavior m_nielsenId3Behavior; 706 bool m_nielsenId3BehaviorHasBeenSet; 707 708 int m_patInterval; 709 bool m_patIntervalHasBeenSet; 710 711 M3u8PcrControl m_pcrControl; 712 bool m_pcrControlHasBeenSet; 713 714 int m_pcrPeriod; 715 bool m_pcrPeriodHasBeenSet; 716 717 Aws::String m_pcrPid; 718 bool m_pcrPidHasBeenSet; 719 720 int m_pmtInterval; 721 bool m_pmtIntervalHasBeenSet; 722 723 Aws::String m_pmtPid; 724 bool m_pmtPidHasBeenSet; 725 726 int m_programNum; 727 bool m_programNumHasBeenSet; 728 729 M3u8Scte35Behavior m_scte35Behavior; 730 bool m_scte35BehaviorHasBeenSet; 731 732 Aws::String m_scte35Pid; 733 bool m_scte35PidHasBeenSet; 734 735 M3u8TimedMetadataBehavior m_timedMetadataBehavior; 736 bool m_timedMetadataBehaviorHasBeenSet; 737 738 Aws::String m_timedMetadataPid; 739 bool m_timedMetadataPidHasBeenSet; 740 741 int m_transportStreamId; 742 bool m_transportStreamIdHasBeenSet; 743 744 Aws::String m_videoPid; 745 bool m_videoPidHasBeenSet; 746 }; 747 748 } // namespace Model 749 } // namespace MediaLive 750 } // namespace Aws 751