1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647 3648 3649 3650 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 3749 3750 3751 3752 3753 3754 3755 3756 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774 3775 3776 3777 3778 3779 3780 3781 3782 3783 3784 3785 3786 3787 3788 3789 3790 3791 3792 3793 3794 3795 3796 3797 3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 3811 3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863 3864 3865 3866 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877 3878 3879 3880 3881 3882 3883 3884 3885 3886 3887 3888 3889 3890 3891 3892 3893 3894 3895 3896 3897 3898 3899 3900 3901 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913 3914 3915 3916 3917 3918 3919 3920 3921 3922 3923 3924 3925 3926 3927 3928 3929 3930 3931 3932 3933 3934 3935 3936 3937 3938 3939 3940 3941 3942 3943 3944 3945 3946 3947 3948 3949 3950 3951 3952 3953 3954 3955 3956 3957 3958 3959 3960 3961 3962 3963 3964 3965 3966 3967 3968 3969 3970 3971 3972 3973 3974 3975 3976 3977 3978 3979 3980 3981 3982 3983 3984 3985 3986 3987 3988 3989 3990 3991 3992 3993 3994 3995 3996 3997 3998 3999 4000 4001 4002 4003 4004 4005 4006 4007 4008 4009 4010 4011 4012 4013 4014 4015 4016 4017 4018 4019 4020 4021 4022 4023 4024 4025 4026 4027 4028 4029 4030 4031 4032 4033 4034 4035 4036 4037 4038 4039 4040 4041 4042 4043 4044 4045 4046 4047 4048 4049 4050 4051 4052 4053 4054 4055 4056 4057 4058 4059 4060 4061 4062 4063 4064 4065 4066 4067 4068 4069 4070 4071 4072 4073 4074 4075 4076 4077 4078 4079 4080 4081 4082 4083 4084 4085 4086 4087 4088 4089 4090 4091 4092 4093 4094 4095 4096 4097 4098 4099 4100 4101 4102 4103 4104 4105 4106 4107 4108 4109 4110 4111 4112 4113 4114 4115 4116 4117 4118 4119 4120 4121 4122 4123 4124 4125 4126 4127 4128 4129 4130 4131 4132 4133 4134 4135 4136 4137 4138 4139 4140 4141 4142 4143 4144 4145 4146 4147 4148 4149 4150 4151 4152 4153 4154 4155 4156 4157 4158 4159 4160 4161 4162 4163 4164 4165 4166 4167 4168 4169 4170 4171 4172 4173 4174 4175 4176 4177 4178 4179 4180 4181 4182 4183 4184 4185 4186 4187 4188 4189 4190 4191 4192 4193 4194 4195 4196 4197 4198 4199 4200 4201 4202 4203 4204 4205 4206 4207 4208 4209 4210 4211 4212 4213 4214 4215 4216 4217 4218 4219 4220 4221 4222 4223 4224 4225 4226 4227 4228 4229 4230 4231 4232 4233 4234 4235 4236 4237 4238 4239 4240 4241 4242 4243 4244 4245 4246 4247 4248 4249 4250 4251 4252 4253 4254 4255 4256 4257 4258 4259 4260 4261 4262 4263 4264 4265 4266 4267 4268 4269 4270 4271 4272 4273 4274 4275 4276 4277 4278 4279 4280 4281 4282 4283 4284 4285 4286 4287 4288 4289 4290 4291 4292 4293 4294 4295 4296 4297 4298 4299 4300 4301 4302 4303 4304 4305 4306 4307 4308 4309 4310 4311 4312 4313 4314 4315 4316 4317 4318 4319 4320 4321 4322 4323 4324 4325 4326 4327 4328 4329 4330 4331 4332 4333 4334 4335 4336 4337 4338 4339 4340 4341 4342 4343 4344 4345 4346 4347 4348 4349 4350 4351 4352 4353 4354 4355 4356 4357 4358 4359 4360 4361 4362 4363 4364 4365 4366 4367 4368 4369 4370 4371 4372 4373 4374 4375 4376 4377 4378 4379 4380 4381 4382 4383 4384 4385 4386 4387 4388 4389 4390 4391 4392 4393 4394 4395 4396 4397 4398 4399 4400 4401 4402 4403 4404 4405 4406 4407 4408 4409 4410 4411 4412 4413 4414 4415 4416 4417 4418 4419 4420 4421 4422 4423 4424 4425 4426 4427 4428 4429 4430 4431 4432 4433 4434 4435 4436 4437 4438 4439 4440 4441 4442 4443 4444 4445 4446 4447 4448 4449 4450 4451 4452 4453 4454 4455 4456 4457 4458 4459 4460 4461 4462 4463 4464 4465 4466 4467 4468 4469 4470 4471 4472 4473 4474 4475 4476 4477 4478 4479 4480 4481 4482 4483 4484 4485 4486 4487 4488 4489 4490 4491 4492 4493 4494 4495 4496 4497 4498 4499 4500 4501 4502 4503 4504 4505 4506 4507 4508 4509 4510 4511 4512 4513 4514 4515 4516 4517 4518 4519 4520 4521 4522 4523 4524 4525 4526 4527 4528 4529 4530 4531 4532 4533 4534 4535 4536 4537 4538 4539 4540 4541 4542 4543 4544 4545 4546 4547 4548 4549 4550 4551 4552 4553 4554 4555 4556 4557 4558 4559 4560 4561 4562 4563 4564 4565 4566 4567 4568 4569 4570 4571 4572 4573 4574 4575 4576 4577 4578 4579 4580 4581 4582 4583 4584 4585 4586 4587 4588 4589 4590 4591 4592 4593 4594 4595 4596 4597 4598 4599 4600 4601 4602 4603 4604 4605 4606 4607 4608 4609 4610 4611 4612 4613 4614 4615 4616 4617 4618 4619 4620 4621 4622 4623 4624 4625 4626 4627 4628 4629 4630 4631 4632 4633 4634 4635 4636 4637 4638 4639 4640 4641 4642 4643 4644 4645 4646 4647 4648 4649 4650 4651 4652 4653 4654 4655 4656 4657 4658 4659 4660 4661 4662 4663 4664 4665 4666 4667 4668 4669 4670 4671 4672 4673 4674 4675 4676 4677 4678 4679 4680 4681 4682 4683 4684 4685 4686 4687 4688 4689 4690 4691 4692 4693 4694 4695 4696 4697 4698 4699 4700 4701 4702 4703 4704 4705 4706 4707 4708 4709 4710 4711 4712 4713 4714 4715 4716 4717 4718 4719 4720 4721 4722 4723 4724 4725 4726 4727 4728 4729 4730 4731 4732 4733 4734 4735 4736 4737 4738 4739 4740 4741 4742 4743 4744 4745 4746 4747 4748 4749 4750 4751 4752 4753 4754 4755 4756 4757 4758 4759 4760 4761 4762 4763 4764 4765 4766 4767 4768 4769 4770 4771 4772 4773 4774 4775 4776 4777 4778 4779 4780 4781 4782 4783 4784 4785 4786 4787 4788 4789 4790 4791 4792 4793 4794 4795 4796 4797 4798 4799 4800 4801 4802 4803 4804 4805 4806 4807 4808 4809 4810 4811 4812 4813 4814 4815 4816 4817 4818 4819 4820 4821 4822 4823 4824 4825 4826 4827 4828 4829 4830 4831 4832 4833 4834 4835 4836 4837 4838 4839 4840 4841 4842 4843 4844 4845 4846 4847 4848 4849 4850 4851 4852 4853 4854 4855 4856 4857 4858 4859 4860 4861 4862 4863 4864 4865 4866 4867 4868 4869 4870 4871 4872 4873 4874 4875 4876 4877 4878 4879 4880 4881 4882 4883 4884 4885 4886 4887 4888 4889 4890 4891 4892 4893 4894 4895 4896 4897 4898 4899 4900 4901 4902 4903 4904 4905 4906 4907 4908 4909 4910 4911 4912 4913 4914 4915 4916 4917 4918 4919 4920 4921 4922 4923 4924 4925 4926 4927 4928 4929 4930 4931 4932 4933 4934 4935 4936 4937 4938 4939 4940 4941 4942 4943 4944 4945 4946 4947 4948 4949 4950 4951 4952 4953 4954 4955 4956 4957 4958 4959 4960 4961 4962 4963 4964 4965 4966 4967 4968 4969 4970 4971 4972 4973 4974 4975 4976 4977 4978 4979 4980 4981 4982 4983 4984 4985 4986 4987 4988 4989 4990 4991 4992 4993 4994 4995 4996 4997 4998 4999 5000 5001 5002 5003 5004 5005 5006 5007 5008 5009 5010 5011 5012 5013 5014 5015 5016 5017 5018 5019 5020 5021 5022 5023 5024 5025 5026 5027 5028 5029 5030 5031 5032 5033 5034 5035 5036 5037 5038 5039 5040 5041 5042 5043 5044 5045 5046 5047 5048 5049 5050 5051 5052 5053 5054 5055 5056 5057 5058 5059 5060 5061 5062 5063 5064 5065 5066 5067 5068 5069 5070 5071 5072 5073 5074 5075 5076 5077 5078 5079 5080 5081 5082 5083 5084 5085 5086 5087 5088 5089 5090 5091 5092 5093 5094 5095 5096 5097 5098 5099 5100 5101 5102 5103 5104 5105 5106 5107 5108 5109 5110 5111 5112 5113 5114 5115 5116 5117 5118 5119 5120 5121 5122 5123 5124 5125 5126 5127 5128 5129 5130 5131 5132 5133 5134 5135 5136 5137 5138 5139 5140 5141 5142 5143 5144 5145 5146 5147 5148 5149 5150 5151 5152 5153 5154 5155 5156 5157 5158 5159 5160 5161 5162 5163 5164 5165 5166 5167 5168 5169 5170 5171 5172 5173 5174 5175 5176 5177 5178 5179 5180 5181 5182 5183 5184 5185 5186 5187 5188 5189 5190 5191 5192 5193 5194 5195 5196 5197 5198 5199 5200 5201 5202 5203 5204 5205 5206 5207 5208 5209 5210 5211 5212 5213 5214 5215 5216 5217 5218 5219 5220 5221 5222 5223 5224 5225 5226 5227 5228 5229 5230 5231 5232 5233 5234 5235 5236 5237 5238 5239 5240 5241 5242 5243 5244 5245 5246 5247 5248 5249 5250 5251 5252 5253 5254 5255 5256 5257 5258 5259 5260 5261 5262 5263 5264 5265 5266 5267 5268 5269 5270 5271 5272 5273 5274 5275 5276 5277 5278 5279 5280 5281 5282 5283 5284 5285 5286 5287 5288 5289 5290 5291 5292 5293 5294 5295 5296 5297 5298 5299 5300 5301 5302 5303 5304 5305 5306 5307 5308 5309 5310 5311 5312 5313 5314 5315 5316 5317 5318 5319 5320 5321 5322 5323 5324 5325 5326 5327 5328 5329 5330 5331 5332 5333 5334 5335 5336 5337 5338 5339 5340 5341 5342 5343 5344 5345 5346 5347 5348 5349 5350 5351 5352 5353 5354 5355 5356 5357 5358 5359 5360 5361 5362 5363 5364 5365 5366 5367 5368 5369 5370 5371 5372 5373 5374 5375 5376 5377 5378 5379 5380 5381 5382 5383 5384 5385 5386 5387 5388 5389 5390 5391 5392 5393 5394 5395 5396 5397 5398 5399 5400 5401 5402 5403 5404 5405 5406 5407 5408 5409 5410 5411 5412 5413 5414 5415 5416 5417 5418 5419 5420 5421 5422 5423 5424 5425 5426 5427 5428 5429 5430 5431 5432 5433 5434 5435 5436 5437 5438 5439 5440 5441 5442 5443 5444 5445 5446 5447 5448 5449 5450 5451 5452 5453 5454 5455 5456 5457 5458 5459 5460 5461 5462 5463 5464 5465 5466 5467 5468 5469 5470 5471 5472 5473 5474 5475 5476 5477 5478 5479 5480 5481 5482 5483 5484 5485 5486 5487 5488 5489 5490 5491 5492 5493 5494 5495 5496 5497 5498 5499 5500 5501 5502 5503 5504 5505 5506 5507 5508 5509 5510 5511 5512 5513 5514 5515 5516 5517 5518 5519 5520 5521 5522 5523 5524 5525 5526 5527 5528 5529 5530 5531 5532 5533 5534 5535 5536 5537 5538 5539 5540 5541 5542 5543 5544 5545 5546 5547 5548 5549 5550 5551 5552 5553 5554 5555 5556 5557 5558 5559 5560 5561 5562 5563 5564 5565 5566 5567 5568 5569 5570 5571 5572 5573 5574 5575 5576 5577 5578 5579 5580 5581 5582 5583 5584 5585 5586 5587 5588 5589 5590 5591 5592 5593 5594 5595 5596 5597 5598 5599 5600 5601 5602 5603 5604 5605 5606 5607 5608 5609 5610 5611 5612 5613 5614 5615 5616 5617 5618 5619 5620 5621 5622 5623 5624 5625 5626 5627 5628 5629 5630 5631 5632 5633 5634 5635 5636 5637 5638 5639 5640 5641 5642 5643 5644 5645 5646 5647 5648 5649 5650 5651 5652 5653 5654 5655 5656 5657 5658 5659 5660 5661 5662 5663 5664 5665 5666 5667 5668 5669 5670 5671 5672 5673 5674 5675 5676 5677 5678 5679 5680 5681 5682 5683 5684 5685 5686 5687 5688 5689 5690 5691 5692 5693 5694 5695 5696 5697 5698 5699 5700 5701 5702 5703 5704 5705 5706 5707 5708 5709 5710 5711 5712 5713 5714 5715 5716 5717 5718 5719 5720 5721 5722 5723 5724 5725 5726 5727 5728 5729 5730 5731 5732 5733 5734 5735 5736 5737 5738 5739 5740 5741 5742 5743 5744 5745 5746 5747 5748 5749 5750 5751 5752 5753 5754 5755 5756 5757 5758 5759 5760 5761 5762 5763 5764 5765 5766 5767 5768 5769 5770 5771 5772 5773 5774 5775 5776 5777 5778 5779 5780 5781 5782 5783 5784 5785 5786 5787 5788 5789 5790 5791 5792 5793 5794 5795 5796 5797 5798 5799 5800 5801 5802 5803 5804 5805 5806 5807 5808 5809 5810 5811 5812 5813 5814 5815 5816 5817 5818 5819 5820 5821 5822 5823 5824 5825 5826 5827 5828 5829 5830 5831 5832 5833 5834 5835 5836 5837 5838 5839 5840 5841 5842 5843 5844 5845 5846 5847 5848 5849 5850 5851 5852 5853 5854 5855 5856 5857 5858 5859 5860 5861 5862 5863 5864 5865 5866 5867 5868 5869 5870 5871 5872 5873 5874 5875 5876 5877 5878 5879 5880 5881 5882 5883 5884 5885 5886 5887 5888 5889 5890 5891 5892 5893 5894 5895 5896 5897 5898 5899 5900 5901 5902 5903 5904 5905 5906 5907 5908 5909 5910 5911 5912 5913 5914 5915 5916 5917 5918 5919 5920 5921 5922 5923 5924 5925 5926 5927 5928 5929 5930 5931 5932 5933 5934 5935 5936 5937 5938 5939 5940 5941 5942 5943 5944 5945 5946 5947 5948 5949 5950 5951 5952 5953 5954 5955 5956 5957 5958 5959 5960 5961 5962 5963 5964 5965 5966 5967 5968 5969 5970 5971 5972 5973 5974 5975 5976 5977 5978 5979 5980 5981 5982 5983 5984 5985 5986 5987 5988 5989 5990 5991 5992 5993 5994 5995 5996 5997 5998 5999 6000 6001 6002 6003 6004 6005 6006 6007 6008 6009 6010 6011 6012 6013 6014 6015 6016 6017 6018 6019 6020 6021 6022 6023 6024 6025 6026 6027 6028 6029 6030 6031 6032 6033 6034 6035 6036 6037 6038 6039 6040 6041 6042 6043 6044 6045 6046 6047 6048 6049 6050 6051 6052 6053 6054 6055 6056 6057 6058 6059 6060 6061 6062 6063 6064 6065 6066 6067 6068 6069 6070 6071 6072 6073 6074 6075 6076 6077 6078 6079 6080 6081 6082 6083 6084 6085 6086 6087 6088 6089 6090 6091 6092 6093 6094 6095 6096 6097 6098 6099 6100 6101 6102 6103 6104 6105 6106 6107 6108 6109
|
// Code generated by smithy-go-codegen DO NOT EDIT.
package types
import (
smithydocument "github.com/aws/smithy-go/document"
"time"
)
// Aac Settings
type AacSettings struct {
// Average bitrate in bits/second. Valid values depend on rate control mode and
// profile.
Bitrate *float64
// Mono, Stereo, or 5.1 channel layout. Valid values depend on rate control mode
// and profile. The adReceiverMix setting receives a stereo description plus
// control track and emits a mono AAC encode of the description track, with control
// data emitted in the PES header as per ETSI TS 101 154 Annex E.
CodingMode AacCodingMode
// Set to "broadcasterMixedAd" when input contains pre-mixed main audio + AD
// (narration) as a stereo pair. The Audio Type field (audioType) will be set to 3,
// which signals to downstream systems that this stream contains "broadcaster mixed
// AD". Note that the input received by the encoder must contain pre-mixed audio;
// the encoder does not perform the mixing. The values in audioTypeControl and
// audioType (in AudioDescription) are ignored when set to broadcasterMixedAd.
// Leave set to "normal" when input does not contain pre-mixed audio + AD.
InputType AacInputType
// AAC Profile.
Profile AacProfile
// Rate Control Mode.
RateControlMode AacRateControlMode
// Sets LATM / LOAS AAC output for raw containers.
RawFormat AacRawFormat
// Sample rate in Hz. Valid values depend on rate control mode and profile.
SampleRate *float64
// Use MPEG-2 AAC audio instead of MPEG-4 AAC audio for raw or MPEG-2 Transport
// Stream containers.
Spec AacSpec
// VBR Quality Level - Only used if rateControlMode is VBR.
VbrQuality AacVbrQuality
noSmithyDocumentSerde
}
// Ac3 Settings
type Ac3Settings struct {
// Applies a 3 dB attenuation to the surround channels. Applies only when the
// coding mode parameter is CODING_MODE_3_2_LFE.
AttenuationControl Ac3AttenuationControl
// Average bitrate in bits/second. Valid bitrates depend on the coding mode.
Bitrate *float64
// Specifies the bitstream mode (bsmod) for the emitted AC-3 stream. See ATSC
// A/52-2012 for background on these values.
BitstreamMode Ac3BitstreamMode
// Dolby Digital coding mode. Determines number of channels.
CodingMode Ac3CodingMode
// Sets the dialnorm for the output. If excluded and input audio is Dolby Digital,
// dialnorm will be passed through.
Dialnorm *int32
// If set to filmStandard, adds dynamic range compression signaling to the output
// bitstream as defined in the Dolby Digital specification.
DrcProfile Ac3DrcProfile
// When set to enabled, applies a 120Hz lowpass filter to the LFE channel prior to
// encoding. Only valid in codingMode32Lfe mode.
LfeFilter Ac3LfeFilter
// When set to "followInput", encoder metadata will be sourced from the DD, DD+,
// or DolbyE decoder that supplied this audio data. If audio was not supplied from
// one of these streams, then the static metadata settings will be used.
MetadataControl Ac3MetadataControl
noSmithyDocumentSerde
}
// Placeholder documentation for AccountConfiguration
type AccountConfiguration struct {
// Specifies the KMS key to use for all features that use key encryption. Specify
// the ARN of a KMS key that you have created. Or leave blank to use the key that
// MediaLive creates and manages for you.
KmsKeyId *string
noSmithyDocumentSerde
}
// Ancillary Source Settings
type AncillarySourceSettings struct {
// Specifies the number (1 to 4) of the captions channel you want to extract from
// the ancillary captions. If you plan to convert the ancillary captions to another
// format, complete this field. If you plan to choose Embedded as the captions
// destination in the output (to pass through all the channels in the ancillary
// captions), leave this field blank because MediaLive ignores the field.
SourceAncillaryChannelNumber *int32
noSmithyDocumentSerde
}
// Archive Cdn Settings
type ArchiveCdnSettings struct {
// Archive S3 Settings
ArchiveS3Settings *ArchiveS3Settings
noSmithyDocumentSerde
}
// Archive Container Settings
type ArchiveContainerSettings struct {
// M2ts Settings
M2tsSettings *M2tsSettings
// Raw Settings
RawSettings *RawSettings
noSmithyDocumentSerde
}
// Archive Group Settings
type ArchiveGroupSettings struct {
// A directory and base filename where archive files should be written.
//
// This member is required.
Destination *OutputLocationRef
// Parameters that control interactions with the CDN.
ArchiveCdnSettings *ArchiveCdnSettings
// Number of seconds to write to archive file before closing and starting a new
// one.
RolloverInterval *int32
noSmithyDocumentSerde
}
// Archive Output Settings
type ArchiveOutputSettings struct {
// Settings specific to the container type of the file.
//
// This member is required.
ContainerSettings *ArchiveContainerSettings
// Output file extension. If excluded, this will be auto-selected from the
// container type.
Extension *string
// String concatenated to the end of the destination filename. Required for
// multiple outputs of the same type.
NameModifier *string
noSmithyDocumentSerde
}
// Archive S3 Settings
type ArchiveS3Settings struct {
// Specify the canned ACL to apply to each S3 request. Defaults to none.
CannedAcl S3CannedAcl
noSmithyDocumentSerde
}
// Arib Destination Settings
type AribDestinationSettings struct {
noSmithyDocumentSerde
}
// Arib Source Settings
type AribSourceSettings struct {
noSmithyDocumentSerde
}
// Audio Channel Mapping
type AudioChannelMapping struct {
// Indices and gain values for each input channel that should be remixed into this
// output channel.
//
// This member is required.
InputChannelLevels []InputChannelLevel
// The index of the output channel being produced.
//
// This member is required.
OutputChannel *int32
noSmithyDocumentSerde
}
// Audio Codec Settings
type AudioCodecSettings struct {
// Aac Settings
AacSettings *AacSettings
// Ac3 Settings
Ac3Settings *Ac3Settings
// Eac3 Atmos Settings
Eac3AtmosSettings *Eac3AtmosSettings
// Eac3 Settings
Eac3Settings *Eac3Settings
// Mp2 Settings
Mp2Settings *Mp2Settings
// Pass Through Settings
PassThroughSettings *PassThroughSettings
// Wav Settings
WavSettings *WavSettings
noSmithyDocumentSerde
}
// Audio Description
type AudioDescription struct {
// The name of the AudioSelector used as the source for this AudioDescription.
//
// This member is required.
AudioSelectorName *string
// The name of this AudioDescription. Outputs will use this name to uniquely
// identify this AudioDescription. Description names should be unique within this
// Live Event.
//
// This member is required.
Name *string
// Advanced audio normalization settings.
AudioNormalizationSettings *AudioNormalizationSettings
// Applies only if audioTypeControl is useConfigured. The values for audioType are
// defined in ISO-IEC 13818-1.
AudioType AudioType
// Determines how audio type is determined. followInput: If the input contains an
// ISO 639 audioType, then that value is passed through to the output. If the input
// contains no ISO 639 audioType, the value in Audio Type is included in the
// output. useConfigured: The value in Audio Type is included in the output. Note
// that this field and audioType are both ignored if inputType is
// broadcasterMixedAd.
AudioTypeControl AudioDescriptionAudioTypeControl
// Settings to configure one or more solutions that insert audio watermarks in the
// audio encode
AudioWatermarkingSettings *AudioWatermarkSettings
// Audio codec settings.
CodecSettings *AudioCodecSettings
// RFC 5646 language code representing the language of the audio output track.
// Only used if languageControlMode is useConfigured, or there is no ISO 639
// language code specified in the input.
LanguageCode *string
// Choosing followInput will cause the ISO 639 language code of the output to
// follow the ISO 639 language code of the input. The languageCode will be used
// when useConfigured is set, or when followInput is selected but there is no ISO
// 639 language code specified by the input.
LanguageCodeControl AudioDescriptionLanguageCodeControl
// Settings that control how input audio channels are remixed into the output
// audio channels.
RemixSettings *RemixSettings
// Used for MS Smooth and Apple HLS outputs. Indicates the name displayed by the
// player (eg. English, or Director Commentary).
StreamName *string
noSmithyDocumentSerde
}
// Audio Dolby EDecode
type AudioDolbyEDecode struct {
// Applies only to Dolby E. Enter the program ID (according to the metadata in the
// audio) of the Dolby E program to extract from the specified track. One program
// extracted per audio selector. To select multiple programs, create multiple
// selectors with the same Track and different Program numbers. “All channels”
// means to ignore the program IDs and include all the channels in this selector;
// useful if metadata is known to be incorrect.
//
// This member is required.
ProgramSelection DolbyEProgramSelection
noSmithyDocumentSerde
}
// Audio Hls Rendition Selection
type AudioHlsRenditionSelection struct {
// Specifies the GROUP-ID in the #EXT-X-MEDIA tag of the target HLS audio
// rendition.
//
// This member is required.
GroupId *string
// Specifies the NAME in the #EXT-X-MEDIA tag of the target HLS audio rendition.
//
// This member is required.
Name *string
noSmithyDocumentSerde
}
// Audio Language Selection
type AudioLanguageSelection struct {
// Selects a specific three-letter language code from within an audio source.
//
// This member is required.
LanguageCode *string
// When set to "strict", the transport stream demux strictly identifies audio
// streams by their language descriptor. If a PMT update occurs such that an audio
// stream matching the initially selected language is no longer present then mute
// will be encoded until the language returns. If "loose", then on a PMT update the
// demux will choose another audio stream in the program with the same stream type
// if it can't find one with the same language.
LanguageSelectionPolicy AudioLanguageSelectionPolicy
noSmithyDocumentSerde
}
// Audio Normalization Settings
type AudioNormalizationSettings struct {
// Audio normalization algorithm to use. itu17701 conforms to the CALM Act
// specification, itu17702 conforms to the EBU R-128 specification.
Algorithm AudioNormalizationAlgorithm
// When set to correctAudio the output audio is corrected using the chosen
// algorithm. If set to measureOnly, the audio will be measured but not adjusted.
AlgorithmControl AudioNormalizationAlgorithmControl
// Target LKFS(loudness) to adjust volume to. If no value is entered, a default
// value will be used according to the chosen algorithm. The CALM Act (1770-1)
// recommends a target of -24 LKFS. The EBU R-128 specification (1770-2) recommends
// a target of -23 LKFS.
TargetLkfs *float64
noSmithyDocumentSerde
}
// Audio Only Hls Settings
type AudioOnlyHlsSettings struct {
// Specifies the group to which the audio Rendition belongs.
AudioGroupId *string
// Optional. Specifies the .jpg or .png image to use as the cover art for an
// audio-only output. We recommend a low bit-size file because the image increases
// the output audio bandwidth. The image is attached to the audio as an ID3 tag,
// frame type APIC, picture type 0x10, as per the "ID3 tag version 2.4.0 - Native
// Frames" standard.
AudioOnlyImage *InputLocation
// Four types of audio-only tracks are supported: Audio-Only Variant Stream The
// client can play back this audio-only stream instead of video in low-bandwidth
// scenarios. Represented as an EXT-X-STREAM-INF in the HLS manifest. Alternate
// Audio, Auto Select, Default Alternate rendition that the client should try to
// play back by default. Represented as an EXT-X-MEDIA in the HLS manifest with
// DEFAULT=YES, AUTOSELECT=YES Alternate Audio, Auto Select, Not Default Alternate
// rendition that the client may try to play back by default. Represented as an
// EXT-X-MEDIA in the HLS manifest with DEFAULT=NO, AUTOSELECT=YES Alternate Audio,
// not Auto Select Alternate rendition that the client will not try to play back by
// default. Represented as an EXT-X-MEDIA in the HLS manifest with DEFAULT=NO,
// AUTOSELECT=NO
AudioTrackType AudioOnlyHlsTrackType
// Specifies the segment type.
SegmentType AudioOnlyHlsSegmentType
noSmithyDocumentSerde
}
// Audio Pid Selection
type AudioPidSelection struct {
// Selects a specific PID from within a source.
//
// This member is required.
Pid *int32
noSmithyDocumentSerde
}
// Audio Selector
type AudioSelector struct {
// The name of this AudioSelector. AudioDescriptions will use this name to
// uniquely identify this Selector. Selector names should be unique per input.
//
// This member is required.
Name *string
// The audio selector settings.
SelectorSettings *AudioSelectorSettings
noSmithyDocumentSerde
}
// Audio Selector Settings
type AudioSelectorSettings struct {
// Audio Hls Rendition Selection
AudioHlsRenditionSelection *AudioHlsRenditionSelection
// Audio Language Selection
AudioLanguageSelection *AudioLanguageSelection
// Audio Pid Selection
AudioPidSelection *AudioPidSelection
// Audio Track Selection
AudioTrackSelection *AudioTrackSelection
noSmithyDocumentSerde
}
// Placeholder documentation for AudioSilenceFailoverSettings
type AudioSilenceFailoverSettings struct {
// The name of the audio selector in the input that MediaLive should monitor to
// detect silence. Select your most important rendition. If you didn't create an
// audio selector in this input, leave blank.
//
// This member is required.
AudioSelectorName *string
// The amount of time (in milliseconds) that the active input must be silent
// before automatic input failover occurs. Silence is defined as audio loss or
// audio quieter than -50 dBFS.
AudioSilenceThresholdMsec *int32
noSmithyDocumentSerde
}
// Audio Track
type AudioTrack struct {
// 1-based integer value that maps to a specific audio track
//
// This member is required.
Track *int32
noSmithyDocumentSerde
}
// Audio Track Selection
type AudioTrackSelection struct {
// Selects one or more unique audio tracks from within a source.
//
// This member is required.
Tracks []AudioTrack
// Configure decoding options for Dolby E streams - these should be Dolby E frames
// carried in PCM streams tagged with SMPTE-337
DolbyEDecode *AudioDolbyEDecode
noSmithyDocumentSerde
}
// Audio Watermark Settings
type AudioWatermarkSettings struct {
// Settings to configure Nielsen Watermarks in the audio encode
NielsenWatermarksSettings *NielsenWatermarksSettings
noSmithyDocumentSerde
}
// The settings for Automatic Input Failover.
type AutomaticInputFailoverSettings struct {
// The input ID of the secondary input in the automatic input failover pair.
//
// This member is required.
SecondaryInputId *string
// This clear time defines the requirement a recovered input must meet to be
// considered healthy. The input must have no failover conditions for this length
// of time. Enter a time in milliseconds. This value is particularly important if
// the input_preference for the failover pair is set to PRIMARY_INPUT_PREFERRED,
// because after this time, MediaLive will switch back to the primary input.
ErrorClearTimeMsec *int32
// A list of failover conditions. If any of these conditions occur, MediaLive will
// perform a failover to the other input.
FailoverConditions []FailoverCondition
// Input preference when deciding which input to make active when a previously
// failed input has recovered.
InputPreference InputPreference
noSmithyDocumentSerde
}
// Avail Blanking
type AvailBlanking struct {
// Blanking image to be used. Leave empty for solid black. Only bmp and png images
// are supported.
AvailBlankingImage *InputLocation
// When set to enabled, causes video, audio and captions to be blanked when
// insertion metadata is added.
State AvailBlankingState
noSmithyDocumentSerde
}
// Avail Configuration
type AvailConfiguration struct {
// Controls how SCTE-35 messages create cues. Splice Insert mode treats all
// segmentation signals traditionally. With Time Signal APOS mode only Time Signal
// Placement Opportunity and Break messages create segment breaks. With ESAM mode,
// signals are forwarded to an ESAM server for possible update.
AvailSettings *AvailSettings
noSmithyDocumentSerde
}
// Avail Settings
type AvailSettings struct {
// Esam
Esam *Esam
// Typical configuration that applies breaks on splice inserts in addition to time
// signal placement opportunities, breaks, and advertisements.
Scte35SpliceInsert *Scte35SpliceInsert
// Atypical configuration that applies segment breaks only on SCTE-35 time signal
// placement opportunities and breaks.
Scte35TimeSignalApos *Scte35TimeSignalApos
noSmithyDocumentSerde
}
// Details from a failed operation
type BatchFailedResultModel struct {
// ARN of the resource
Arn *string
// Error code for the failed operation
Code *string
// ID of the resource
Id *string
// Error message for the failed operation
Message *string
noSmithyDocumentSerde
}
// A list of schedule actions to create (in a request) or that have been created
// (in a response).
type BatchScheduleActionCreateRequest struct {
// A list of schedule actions to create.
//
// This member is required.
ScheduleActions []ScheduleAction
noSmithyDocumentSerde
}
// List of actions that have been created in the schedule.
type BatchScheduleActionCreateResult struct {
// List of actions that have been created in the schedule.
//
// This member is required.
ScheduleActions []ScheduleAction
noSmithyDocumentSerde
}
// A list of schedule actions to delete.
type BatchScheduleActionDeleteRequest struct {
// A list of schedule actions to delete.
//
// This member is required.
ActionNames []string
noSmithyDocumentSerde
}
// List of actions that have been deleted from the schedule.
type BatchScheduleActionDeleteResult struct {
// List of actions that have been deleted from the schedule.
//
// This member is required.
ScheduleActions []ScheduleAction
noSmithyDocumentSerde
}
// Details from a successful operation
type BatchSuccessfulResultModel struct {
// ARN of the resource
Arn *string
// ID of the resource
Id *string
// Current state of the resource
State *string
noSmithyDocumentSerde
}
// Blackout Slate
type BlackoutSlate struct {
// Blackout slate image to be used. Leave empty for solid black. Only bmp and png
// images are supported.
BlackoutSlateImage *InputLocation
// Setting to enabled causes the encoder to blackout the video, audio, and
// captions, and raise the "Network Blackout Image" slate when an SCTE104/35
// Network End Segmentation Descriptor is encountered. The blackout will be lifted
// when the Network Start Segmentation Descriptor is encountered. The Network End
// and Network Start descriptors must contain a network ID that matches the value
// entered in "Network ID".
NetworkEndBlackout BlackoutSlateNetworkEndBlackout
// Path to local file to use as Network End Blackout image. Image will be scaled
// to fill the entire output raster.
NetworkEndBlackoutImage *InputLocation
// Provides Network ID that matches EIDR ID format (e.g.,
// "10.XXXX/XXXX-XXXX-XXXX-XXXX-XXXX-C").
NetworkId *string
// When set to enabled, causes video, audio and captions to be blanked when
// indicated by program metadata.
State BlackoutSlateState
noSmithyDocumentSerde
}
// Burn In Destination Settings
type BurnInDestinationSettings struct {
// If no explicit xPosition or yPosition is provided, setting alignment to
// centered will place the captions at the bottom center of the output. Similarly,
// setting a left alignment will align captions to the bottom left of the output.
// If x and y positions are given in conjunction with the alignment parameter, the
// font will be justified (either left or centered) relative to those coordinates.
// Selecting "smart" justification will left-justify live subtitles and
// center-justify pre-recorded subtitles. All burn-in and DVB-Sub font settings
// must match.
Alignment BurnInAlignment
// Specifies the color of the rectangle behind the captions. All burn-in and
// DVB-Sub font settings must match.
BackgroundColor BurnInBackgroundColor
// Specifies the opacity of the background rectangle. 255 is opaque; 0 is
// transparent. Leaving this parameter out is equivalent to setting it to 0
// (transparent). All burn-in and DVB-Sub font settings must match.
BackgroundOpacity *int32
// External font file used for caption burn-in. File extension must be 'ttf' or
// 'tte'. Although the user can select output fonts for many different types of
// input captions, embedded, STL and teletext sources use a strict grid system.
// Using external fonts with these caption sources could cause unexpected display
// of proportional fonts. All burn-in and DVB-Sub font settings must match.
Font *InputLocation
// Specifies the color of the burned-in captions. This option is not valid for
// source captions that are STL, 608/embedded or teletext. These source settings
// are already pre-defined by the caption stream. All burn-in and DVB-Sub font
// settings must match.
FontColor BurnInFontColor
// Specifies the opacity of the burned-in captions. 255 is opaque; 0 is
// transparent. All burn-in and DVB-Sub font settings must match.
FontOpacity *int32
// Font resolution in DPI (dots per inch); default is 96 dpi. All burn-in and
// DVB-Sub font settings must match.
FontResolution *int32
// When set to 'auto' fontSize will scale depending on the size of the output.
// Giving a positive integer will specify the exact font size in points. All
// burn-in and DVB-Sub font settings must match.
FontSize *string
// Specifies font outline color. This option is not valid for source captions that
// are either 608/embedded or teletext. These source settings are already
// pre-defined by the caption stream. All burn-in and DVB-Sub font settings must
// match.
OutlineColor BurnInOutlineColor
// Specifies font outline size in pixels. This option is not valid for source
// captions that are either 608/embedded or teletext. These source settings are
// already pre-defined by the caption stream. All burn-in and DVB-Sub font settings
// must match.
OutlineSize *int32
// Specifies the color of the shadow cast by the captions. All burn-in and DVB-Sub
// font settings must match.
ShadowColor BurnInShadowColor
// Specifies the opacity of the shadow. 255 is opaque; 0 is transparent. Leaving
// this parameter out is equivalent to setting it to 0 (transparent). All burn-in
// and DVB-Sub font settings must match.
ShadowOpacity *int32
// Specifies the horizontal offset of the shadow relative to the captions in
// pixels. A value of -2 would result in a shadow offset 2 pixels to the left. All
// burn-in and DVB-Sub font settings must match.
ShadowXOffset *int32
// Specifies the vertical offset of the shadow relative to the captions in pixels.
// A value of -2 would result in a shadow offset 2 pixels above the text. All
// burn-in and DVB-Sub font settings must match.
ShadowYOffset *int32
// Controls whether a fixed grid size will be used to generate the output
// subtitles bitmap. Only applicable for Teletext inputs and DVB-Sub/Burn-in
// outputs.
TeletextGridControl BurnInTeletextGridControl
// Specifies the horizontal position of the caption relative to the left side of
// the output in pixels. A value of 10 would result in the captions starting 10
// pixels from the left of the output. If no explicit xPosition is provided, the
// horizontal caption position will be determined by the alignment parameter. All
// burn-in and DVB-Sub font settings must match.
XPosition *int32
// Specifies the vertical position of the caption relative to the top of the
// output in pixels. A value of 10 would result in the captions starting 10 pixels
// from the top of the output. If no explicit yPosition is provided, the caption
// will be positioned towards the bottom of the output. All burn-in and DVB-Sub
// font settings must match.
YPosition *int32
noSmithyDocumentSerde
}
// Caption Description
type CaptionDescription struct {
// Specifies which input caption selector to use as a caption source when
// generating output captions. This field should match a captionSelector name.
//
// This member is required.
CaptionSelectorName *string
// Name of the caption description. Used to associate a caption description with
// an output. Names must be unique within an event.
//
// This member is required.
Name *string
// Indicates whether the caption track implements accessibility features such as
// written descriptions of spoken dialog, music, and sounds.
Accessibility AccessibilityType
// Additional settings for captions destination that depend on the destination
// type.
DestinationSettings *CaptionDestinationSettings
// ISO 639-2 three-digit code: http://www.loc.gov/standards/iso639-2/
LanguageCode *string
// Human readable information to indicate captions available for players (eg.
// English, or Spanish).
LanguageDescription *string
noSmithyDocumentSerde
}
// Caption Destination Settings
type CaptionDestinationSettings struct {
// Arib Destination Settings
AribDestinationSettings *AribDestinationSettings
// Burn In Destination Settings
BurnInDestinationSettings *BurnInDestinationSettings
// Dvb Sub Destination Settings
DvbSubDestinationSettings *DvbSubDestinationSettings
// Ebu Tt DDestination Settings
EbuTtDDestinationSettings *EbuTtDDestinationSettings
// Embedded Destination Settings
EmbeddedDestinationSettings *EmbeddedDestinationSettings
// Embedded Plus Scte20 Destination Settings
EmbeddedPlusScte20DestinationSettings *EmbeddedPlusScte20DestinationSettings
// Rtmp Caption Info Destination Settings
RtmpCaptionInfoDestinationSettings *RtmpCaptionInfoDestinationSettings
// Scte20 Plus Embedded Destination Settings
Scte20PlusEmbeddedDestinationSettings *Scte20PlusEmbeddedDestinationSettings
// Scte27 Destination Settings
Scte27DestinationSettings *Scte27DestinationSettings
// Smpte Tt Destination Settings
SmpteTtDestinationSettings *SmpteTtDestinationSettings
// Teletext Destination Settings
TeletextDestinationSettings *TeletextDestinationSettings
// Ttml Destination Settings
TtmlDestinationSettings *TtmlDestinationSettings
// Webvtt Destination Settings
WebvttDestinationSettings *WebvttDestinationSettings
noSmithyDocumentSerde
}
// Maps a caption channel to an ISO 693-2 language code
// (http://www.loc.gov/standards/iso639-2), with an optional description.
type CaptionLanguageMapping struct {
// The closed caption channel being described by this CaptionLanguageMapping. Each
// channel mapping must have a unique channel number (maximum of 4)
//
// This member is required.
CaptionChannel *int32
// Three character ISO 639-2 language code (see
// http://www.loc.gov/standards/iso639-2)
//
// This member is required.
LanguageCode *string
// Textual description of language
//
// This member is required.
LanguageDescription *string
noSmithyDocumentSerde
}
// Caption Rectangle
type CaptionRectangle struct {
// See the description in leftOffset. For height, specify the entire height of the
// rectangle as a percentage of the underlying frame height. For example, "80"
// means the rectangle height is 80% of the underlying frame height. The topOffset
// and rectangleHeight must add up to 100% or less. This field corresponds to
// tts:extent - Y in the TTML standard.
//
// This member is required.
Height *float64
// Applies only if you plan to convert these source captions to EBU-TT-D or TTML
// in an output. (Make sure to leave the default if you don't have either of these
// formats in the output.) You can define a display rectangle for the captions that
// is smaller than the underlying video frame. You define the rectangle by
// specifying the position of the left edge, top edge, bottom edge, and right edge
// of the rectangle, all within the underlying video frame. The units for the
// measurements are percentages. If you specify a value for one of these fields,
// you must specify a value for all of them. For leftOffset, specify the position
// of the left edge of the rectangle, as a percentage of the underlying frame
// width, and relative to the left edge of the frame. For example, "10" means the
// measurement is 10% of the underlying frame width. The rectangle left edge starts
// at that position from the left edge of the frame. This field corresponds to
// tts:origin - X in the TTML standard.
//
// This member is required.
LeftOffset *float64
// See the description in leftOffset. For topOffset, specify the position of the
// top edge of the rectangle, as a percentage of the underlying frame height, and
// relative to the top edge of the frame. For example, "10" means the measurement
// is 10% of the underlying frame height. The rectangle top edge starts at that
// position from the top edge of the frame. This field corresponds to tts:origin -
// Y in the TTML standard.
//
// This member is required.
TopOffset *float64
// See the description in leftOffset. For width, specify the entire width of the
// rectangle as a percentage of the underlying frame width. For example, "80" means
// the rectangle width is 80% of the underlying frame width. The leftOffset and
// rectangleWidth must add up to 100% or less. This field corresponds to tts:extent
// - X in the TTML standard.
//
// This member is required.
Width *float64
noSmithyDocumentSerde
}
// Caption Selector
type CaptionSelector struct {
// Name identifier for a caption selector. This name is used to associate this
// caption selector with one or more caption descriptions. Names must be unique
// within an event.
//
// This member is required.
Name *string
// When specified this field indicates the three letter language code of the
// caption track to extract from the source.
LanguageCode *string
// Caption selector settings.
SelectorSettings *CaptionSelectorSettings
noSmithyDocumentSerde
}
// Caption Selector Settings
type CaptionSelectorSettings struct {
// Ancillary Source Settings
AncillarySourceSettings *AncillarySourceSettings
// Arib Source Settings
AribSourceSettings *AribSourceSettings
// Dvb Sub Source Settings
DvbSubSourceSettings *DvbSubSourceSettings
// Embedded Source Settings
EmbeddedSourceSettings *EmbeddedSourceSettings
// Scte20 Source Settings
Scte20SourceSettings *Scte20SourceSettings
// Scte27 Source Settings
Scte27SourceSettings *Scte27SourceSettings
// Teletext Source Settings
TeletextSourceSettings *TeletextSourceSettings
noSmithyDocumentSerde
}
// Placeholder documentation for CdiInputSpecification
type CdiInputSpecification struct {
// Maximum CDI input resolution
Resolution CdiInputResolution
noSmithyDocumentSerde
}
// Placeholder documentation for Channel
type Channel struct {
// The unique arn of the channel.
Arn *string
// Specification of CDI inputs for this channel
CdiInputSpecification *CdiInputSpecification
// The class for this channel. STANDARD for a channel with two pipelines or
// SINGLE_PIPELINE for a channel with one pipeline.
ChannelClass ChannelClass
// A list of destinations of the channel. For UDP outputs, there is one
// destination per output. For other types (HLS, for example), there is one
// destination per packager.
Destinations []OutputDestination
// The endpoints where outgoing connections initiate from
EgressEndpoints []ChannelEgressEndpoint
// Encoder Settings
EncoderSettings *EncoderSettings
// The unique id of the channel.
Id *string
// List of input attachments for channel.
InputAttachments []InputAttachment
// Specification of network and file inputs for this channel
InputSpecification *InputSpecification
// The log level being written to CloudWatch Logs.
LogLevel LogLevel
// Maintenance settings for this channel.
Maintenance *MaintenanceStatus
// The name of the channel. (user-mutable)
Name *string
// Runtime details for the pipelines of a running channel.
PipelineDetails []PipelineDetail
// The number of currently healthy pipelines.
PipelinesRunningCount *int32
// The Amazon Resource Name (ARN) of the role assumed when running the Channel.
RoleArn *string
// Placeholder documentation for ChannelState
State ChannelState
// A collection of key-value pairs.
Tags map[string]string
// Settings for VPC output
Vpc *VpcOutputSettingsDescription
noSmithyDocumentSerde
}
// Placeholder documentation for ChannelEgressEndpoint
type ChannelEgressEndpoint struct {
// Public IP of where a channel's output comes from
SourceIp *string
noSmithyDocumentSerde
}
// Placeholder documentation for ChannelSummary
type ChannelSummary struct {
// The unique arn of the channel.
Arn *string
// Specification of CDI inputs for this channel
CdiInputSpecification *CdiInputSpecification
// The class for this channel. STANDARD for a channel with two pipelines or
// SINGLE_PIPELINE for a channel with one pipeline.
ChannelClass ChannelClass
// A list of destinations of the channel. For UDP outputs, there is one
// destination per output. For other types (HLS, for example), there is one
// destination per packager.
Destinations []OutputDestination
// The endpoints where outgoing connections initiate from
EgressEndpoints []ChannelEgressEndpoint
// The unique id of the channel.
Id *string
// List of input attachments for channel.
InputAttachments []InputAttachment
// Specification of network and file inputs for this channel
InputSpecification *InputSpecification
// The log level being written to CloudWatch Logs.
LogLevel LogLevel
// Maintenance settings for this channel.
Maintenance *MaintenanceStatus
// The name of the channel. (user-mutable)
Name *string
// The number of currently healthy pipelines.
PipelinesRunningCount *int32
// The Amazon Resource Name (ARN) of the role assumed when running the Channel.
RoleArn *string
// Placeholder documentation for ChannelState
State ChannelState
// A collection of key-value pairs.
Tags map[string]string
// Settings for any VPC outputs.
Vpc *VpcOutputSettingsDescription
noSmithyDocumentSerde
}
// Property of ColorCorrectionSettings. Used for custom color space conversion.
// The object identifies one 3D LUT file and specifies the input/output color space
// combination that the file will be used for.
type ColorCorrection struct {
// The color space of the input.
//
// This member is required.
InputColorSpace ColorSpace
// The color space of the output.
//
// This member is required.
OutputColorSpace ColorSpace
// The URI of the 3D LUT file. The protocol must be 's3:' or 's3ssl:':.
//
// This member is required.
Uri *string
noSmithyDocumentSerde
}
// Property of encoderSettings. Controls color conversion when you are using 3D
// LUT files to perform color conversion on video.
type ColorCorrectionSettings struct {
// An array of colorCorrections that applies when you are using 3D LUT files to
// perform color conversion on video. Each colorCorrection contains one 3D LUT file
// (that defines the color mapping for converting an input color space to an output
// color space), and the input/output combination that this 3D LUT file applies to.
// MediaLive reads the color space in the input metadata, determines the color
// space that you have specified for the output, and finds and uses the LUT file
// that applies to this combination.
//
// This member is required.
GlobalColorCorrections []ColorCorrection
noSmithyDocumentSerde
}
// Passthrough applies no color space conversion to the output
type ColorSpacePassthroughSettings struct {
noSmithyDocumentSerde
}
// Dolby Vision81 Settings
type DolbyVision81Settings struct {
noSmithyDocumentSerde
}
// DVB Network Information Table (NIT)
type DvbNitSettings struct {
// The numeric value placed in the Network Information Table (NIT).
//
// This member is required.
NetworkId *int32
// The network name text placed in the networkNameDescriptor inside the Network
// Information Table. Maximum length is 256 characters.
//
// This member is required.
NetworkName *string
// The number of milliseconds between instances of this table in the output
// transport stream.
RepInterval *int32
noSmithyDocumentSerde
}
// DVB Service Description Table (SDT)
type DvbSdtSettings struct {
// Selects method of inserting SDT information into output stream. The sdtFollow
// setting copies SDT information from input stream to output stream. The
// sdtFollowIfPresent setting copies SDT information from input stream to output
// stream if SDT information is present in the input, otherwise it will fall back
// on the user-defined values. The sdtManual setting means user will enter the SDT
// information. The sdtNone setting means output stream will not contain SDT
// information.
OutputSdt DvbSdtOutputSdt
// The number of milliseconds between instances of this table in the output
// transport stream.
RepInterval *int32
// The service name placed in the serviceDescriptor in the Service Description
// Table. Maximum length is 256 characters.
ServiceName *string
// The service provider name placed in the serviceDescriptor in the Service
// Description Table. Maximum length is 256 characters.
ServiceProviderName *string
noSmithyDocumentSerde
}
// Dvb Sub Destination Settings
type DvbSubDestinationSettings struct {
// If no explicit xPosition or yPosition is provided, setting alignment to
// centered will place the captions at the bottom center of the output. Similarly,
// setting a left alignment will align captions to the bottom left of the output.
// If x and y positions are given in conjunction with the alignment parameter, the
// font will be justified (either left or centered) relative to those coordinates.
// Selecting "smart" justification will left-justify live subtitles and
// center-justify pre-recorded subtitles. This option is not valid for source
// captions that are STL or 608/embedded. These source settings are already
// pre-defined by the caption stream. All burn-in and DVB-Sub font settings must
// match.
Alignment DvbSubDestinationAlignment
// Specifies the color of the rectangle behind the captions. All burn-in and
// DVB-Sub font settings must match.
BackgroundColor DvbSubDestinationBackgroundColor
// Specifies the opacity of the background rectangle. 255 is opaque; 0 is
// transparent. Leaving this parameter blank is equivalent to setting it to 0
// (transparent). All burn-in and DVB-Sub font settings must match.
BackgroundOpacity *int32
// External font file used for caption burn-in. File extension must be 'ttf' or
// 'tte'. Although the user can select output fonts for many different types of
// input captions, embedded, STL and teletext sources use a strict grid system.
// Using external fonts with these caption sources could cause unexpected display
// of proportional fonts. All burn-in and DVB-Sub font settings must match.
Font *InputLocation
// Specifies the color of the burned-in captions. This option is not valid for
// source captions that are STL, 608/embedded or teletext. These source settings
// are already pre-defined by the caption stream. All burn-in and DVB-Sub font
// settings must match.
FontColor DvbSubDestinationFontColor
// Specifies the opacity of the burned-in captions. 255 is opaque; 0 is
// transparent. All burn-in and DVB-Sub font settings must match.
FontOpacity *int32
// Font resolution in DPI (dots per inch); default is 96 dpi. All burn-in and
// DVB-Sub font settings must match.
FontResolution *int32
// When set to auto fontSize will scale depending on the size of the output.
// Giving a positive integer will specify the exact font size in points. All
// burn-in and DVB-Sub font settings must match.
FontSize *string
// Specifies font outline color. This option is not valid for source captions that
// are either 608/embedded or teletext. These source settings are already
// pre-defined by the caption stream. All burn-in and DVB-Sub font settings must
// match.
OutlineColor DvbSubDestinationOutlineColor
// Specifies font outline size in pixels. This option is not valid for source
// captions that are either 608/embedded or teletext. These source settings are
// already pre-defined by the caption stream. All burn-in and DVB-Sub font settings
// must match.
OutlineSize *int32
// Specifies the color of the shadow cast by the captions. All burn-in and DVB-Sub
// font settings must match.
ShadowColor DvbSubDestinationShadowColor
// Specifies the opacity of the shadow. 255 is opaque; 0 is transparent. Leaving
// this parameter blank is equivalent to setting it to 0 (transparent). All burn-in
// and DVB-Sub font settings must match.
ShadowOpacity *int32
// Specifies the horizontal offset of the shadow relative to the captions in
// pixels. A value of -2 would result in a shadow offset 2 pixels to the left. All
// burn-in and DVB-Sub font settings must match.
ShadowXOffset *int32
// Specifies the vertical offset of the shadow relative to the captions in pixels.
// A value of -2 would result in a shadow offset 2 pixels above the text. All
// burn-in and DVB-Sub font settings must match.
ShadowYOffset *int32
// Controls whether a fixed grid size will be used to generate the output
// subtitles bitmap. Only applicable for Teletext inputs and DVB-Sub/Burn-in
// outputs.
TeletextGridControl DvbSubDestinationTeletextGridControl
// Specifies the horizontal position of the caption relative to the left side of
// the output in pixels. A value of 10 would result in the captions starting 10
// pixels from the left of the output. If no explicit xPosition is provided, the
// horizontal caption position will be determined by the alignment parameter. This
// option is not valid for source captions that are STL, 608/embedded or teletext.
// These source settings are already pre-defined by the caption stream. All burn-in
// and DVB-Sub font settings must match.
XPosition *int32
// Specifies the vertical position of the caption relative to the top of the
// output in pixels. A value of 10 would result in the captions starting 10 pixels
// from the top of the output. If no explicit yPosition is provided, the caption
// will be positioned towards the bottom of the output. This option is not valid
// for source captions that are STL, 608/embedded or teletext. These source
// settings are already pre-defined by the caption stream. All burn-in and DVB-Sub
// font settings must match.
YPosition *int32
noSmithyDocumentSerde
}
// Dvb Sub Source Settings
type DvbSubSourceSettings struct {
// If you will configure a WebVTT caption description that references this caption
// selector, use this field to provide the language to consider when translating
// the image-based source to text.
OcrLanguage DvbSubOcrLanguage
// When using DVB-Sub with Burn-In or SMPTE-TT, use this PID for the source
// content. Unused for DVB-Sub passthrough. All DVB-Sub content is passed through,
// regardless of selectors.
Pid *int32
noSmithyDocumentSerde
}
// DVB Time and Date Table (SDT)
type DvbTdtSettings struct {
// The number of milliseconds between instances of this table in the output
// transport stream.
RepInterval *int32
noSmithyDocumentSerde
}
// Eac3 Atmos Settings
type Eac3AtmosSettings struct {
// Average bitrate in bits/second. Valid bitrates depend on the coding mode. // *
// @affectsRightSizing true
Bitrate *float64
// Dolby Digital Plus with Dolby Atmos coding mode. Determines number of channels.
CodingMode Eac3AtmosCodingMode
// Sets the dialnorm for the output. Default 23.
Dialnorm *int32
// Sets the Dolby dynamic range compression profile.
DrcLine Eac3AtmosDrcLine
// Sets the profile for heavy Dolby dynamic range compression, ensures that the
// instantaneous signal peaks do not exceed specified levels.
DrcRf Eac3AtmosDrcRf
// Height dimensional trim. Sets the maximum amount to attenuate the height
// channels when the downstream player isn??t configured to handle Dolby Digital
// Plus with Dolby Atmos and must remix the channels.
HeightTrim *float64
// Surround dimensional trim. Sets the maximum amount to attenuate the surround
// channels when the downstream player isn't configured to handle Dolby Digital
// Plus with Dolby Atmos and must remix the channels.
SurroundTrim *float64
noSmithyDocumentSerde
}
// Eac3 Settings
type Eac3Settings struct {
// When set to attenuate3Db, applies a 3 dB attenuation to the surround channels.
// Only used for 3/2 coding mode.
AttenuationControl Eac3AttenuationControl
// Average bitrate in bits/second. Valid bitrates depend on the coding mode.
Bitrate *float64
// Specifies the bitstream mode (bsmod) for the emitted E-AC-3 stream. See ATSC
// A/52-2012 (Annex E) for background on these values.
BitstreamMode Eac3BitstreamMode
// Dolby Digital Plus coding mode. Determines number of channels.
CodingMode Eac3CodingMode
// When set to enabled, activates a DC highpass filter for all input channels.
DcFilter Eac3DcFilter
// Sets the dialnorm for the output. If blank and input audio is Dolby Digital
// Plus, dialnorm will be passed through.
Dialnorm *int32
// Sets the Dolby dynamic range compression profile.
DrcLine Eac3DrcLine
// Sets the profile for heavy Dolby dynamic range compression, ensures that the
// instantaneous signal peaks do not exceed specified levels.
DrcRf Eac3DrcRf
// When encoding 3/2 audio, setting to lfe enables the LFE channel
LfeControl Eac3LfeControl
// When set to enabled, applies a 120Hz lowpass filter to the LFE channel prior to
// encoding. Only valid with codingMode32 coding mode.
LfeFilter Eac3LfeFilter
// Left only/Right only center mix level. Only used for 3/2 coding mode.
LoRoCenterMixLevel *float64
// Left only/Right only surround mix level. Only used for 3/2 coding mode.
LoRoSurroundMixLevel *float64
// Left total/Right total center mix level. Only used for 3/2 coding mode.
LtRtCenterMixLevel *float64
// Left total/Right total surround mix level. Only used for 3/2 coding mode.
LtRtSurroundMixLevel *float64
// When set to followInput, encoder metadata will be sourced from the DD, DD+, or
// DolbyE decoder that supplied this audio data. If audio was not supplied from one
// of these streams, then the static metadata settings will be used.
MetadataControl Eac3MetadataControl
// When set to whenPossible, input DD+ audio will be passed through if it is
// present on the input. This detection is dynamic over the life of the transcode.
// Inputs that alternate between DD+ and non-DD+ content will have a consistent DD+
// output as the system alternates between passthrough and encoding.
PassthroughControl Eac3PassthroughControl
// When set to shift90Degrees, applies a 90-degree phase shift to the surround
// channels. Only used for 3/2 coding mode.
PhaseControl Eac3PhaseControl
// Stereo downmix preference. Only used for 3/2 coding mode.
StereoDownmix Eac3StereoDownmix
// When encoding 3/2 audio, sets whether an extra center back surround channel is
// matrix encoded into the left and right surround channels.
SurroundExMode Eac3SurroundExMode
// When encoding 2/0 audio, sets whether Dolby Surround is matrix encoded into the
// two channels.
SurroundMode Eac3SurroundMode
noSmithyDocumentSerde
}
// Ebu Tt DDestination Settings
type EbuTtDDestinationSettings struct {
// Complete this field if you want to include the name of the copyright holder in
// the copyright tag in the captions metadata.
CopyrightHolder *string
// Specifies how to handle the gap between the lines (in multi-line captions).
// - enabled: Fill with the captions background color (as specified in the input
// captions).
// - disabled: Leave the gap unfilled.
FillLineGap EbuTtDFillLineGapControl
// Specifies the font family to include in the font data attached to the EBU-TT
// captions. Valid only if styleControl is set to include. If you leave this field
// empty, the font family is set to "monospaced". (If styleControl is set to
// exclude, the font family is always set to "monospaced".) You specify only the
// font family. All other style information (color, bold, position and so on) is
// copied from the input captions. The size is always set to 100% to allow the
// downstream player to choose the size.
// - Enter a list of font families, as a comma-separated list of font names, in
// order of preference. The name can be a font family (such as “Arial”), or a
// generic font family (such as “serif”), or “default” (to let the downstream
// player choose the font).
// - Leave blank to set the family to “monospace”.
FontFamily *string
// Specifies the style information (font color, font position, and so on) to
// include in the font data that is attached to the EBU-TT captions.
// - include: Take the style information (font color, font position, and so on)
// from the source captions and include that information in the font data attached
// to the EBU-TT captions. This option is valid only if the source captions are
// Embedded or Teletext.
// - exclude: In the font data attached to the EBU-TT captions, set the font
// family to "monospaced". Do not include any other style information.
StyleControl EbuTtDDestinationStyleControl
noSmithyDocumentSerde
}
// Embedded Destination Settings
type EmbeddedDestinationSettings struct {
noSmithyDocumentSerde
}
// Embedded Plus Scte20 Destination Settings
type EmbeddedPlusScte20DestinationSettings struct {
noSmithyDocumentSerde
}
// Embedded Source Settings
type EmbeddedSourceSettings struct {
// If upconvert, 608 data is both passed through via the "608 compatibility bytes"
// fields of the 708 wrapper as well as translated into 708. 708 data present in
// the source content will be discarded.
Convert608To708 EmbeddedConvert608To708
// Set to "auto" to handle streams with intermittent and/or non-aligned SCTE-20
// and Embedded captions.
Scte20Detection EmbeddedScte20Detection
// Specifies the 608/708 channel number within the video track from which to
// extract captions. Unused for passthrough.
Source608ChannelNumber *int32
// This field is unused and deprecated.
Source608TrackNumber *int32
noSmithyDocumentSerde
}
// Encoder Settings
type EncoderSettings struct {
// Placeholder documentation for __listOfAudioDescription
//
// This member is required.
AudioDescriptions []AudioDescription
// Placeholder documentation for __listOfOutputGroup
//
// This member is required.
OutputGroups []OutputGroup
// Contains settings used to acquire and adjust timecode information from inputs.
//
// This member is required.
TimecodeConfig *TimecodeConfig
// Placeholder documentation for __listOfVideoDescription
//
// This member is required.
VideoDescriptions []VideoDescription
// Settings for ad avail blanking.
AvailBlanking *AvailBlanking
// Event-wide configuration settings for ad avail insertion.
AvailConfiguration *AvailConfiguration
// Settings for blackout slate.
BlackoutSlate *BlackoutSlate
// Settings for caption decriptions
CaptionDescriptions []CaptionDescription
// Color Correction Settings
ColorCorrectionSettings *ColorCorrectionSettings
// Feature Activations
FeatureActivations *FeatureActivations
// Configuration settings that apply to the event as a whole.
GlobalConfiguration *GlobalConfiguration
// Settings for motion graphics.
MotionGraphicsConfiguration *MotionGraphicsConfiguration
// Nielsen configuration settings.
NielsenConfiguration *NielsenConfiguration
// Thumbnail configuration settings.
ThumbnailConfiguration *ThumbnailConfiguration
noSmithyDocumentSerde
}
// Epoch Locking Settings
type EpochLockingSettings struct {
// Optional. Enter a value here to use a custom epoch, instead of the standard
// epoch (which started at 1970-01-01T00:00:00 UTC). Specify the start time of the
// custom epoch, in YYYY-MM-DDTHH:MM:SS in UTC. The time must be
// 2000-01-01T00:00:00 or later. Always set the MM:SS portion to 00:00.
CustomEpoch *string
// Optional. Enter a time for the jam sync. The default is midnight UTC. When
// epoch locking is enabled, MediaLive performs a daily jam sync on every output
// encode to ensure timecodes don’t diverge from the wall clock. The jam sync
// applies only to encodes with frame rate of 29.97 or 59.94 FPS. To override,
// enter a time in HH:MM:SS in UTC. Always set the MM:SS portion to 00:00.
JamSyncTime *string
noSmithyDocumentSerde
}
// Esam
type Esam struct {
// Sent as acquisitionPointIdentity to identify the MediaLive channel to the POIS.
//
// This member is required.
AcquisitionPointId *string
// The URL of the signal conditioner endpoint on the Placement Opportunity
// Information System (POIS). MediaLive sends SignalProcessingEvents here when
// SCTE-35 messages are read.
//
// This member is required.
PoisEndpoint *string
// When specified, this offset (in milliseconds) is added to the input Ad Avail
// PTS time. This only applies to embedded SCTE 104/35 messages and does not apply
// to OOB messages.
AdAvailOffset *int32
// Documentation update needed
PasswordParam *string
// Documentation update needed
Username *string
// Optional data sent as zoneIdentity to identify the MediaLive channel to the
// POIS.
ZoneIdentity *string
noSmithyDocumentSerde
}
// Failover Condition settings. There can be multiple failover conditions inside
// AutomaticInputFailoverSettings.
type FailoverCondition struct {
// Failover condition type-specific settings.
FailoverConditionSettings *FailoverConditionSettings
noSmithyDocumentSerde
}
// Settings for one failover condition.
type FailoverConditionSettings struct {
// MediaLive will perform a failover if the specified audio selector is silent for
// the specified period.
AudioSilenceSettings *AudioSilenceFailoverSettings
// MediaLive will perform a failover if content is not detected in this input for
// the specified period.
InputLossSettings *InputLossFailoverSettings
// MediaLive will perform a failover if content is considered black for the
// specified period.
VideoBlackSettings *VideoBlackFailoverSettings
noSmithyDocumentSerde
}
// Feature Activations
type FeatureActivations struct {
// Enables the Input Prepare feature. You can create Input Prepare actions in the
// schedule only if this feature is enabled. If you disable the feature on an
// existing schedule, make sure that you first delete all input prepare actions
// from the schedule.
InputPrepareScheduleActions FeatureActivationsInputPrepareScheduleActions
// Enables the output static image overlay feature. Enabling this feature allows
// you to send channel schedule updates to display/clear/modify image overlays on
// an output-by-output bases.
OutputStaticImageOverlayScheduleActions FeatureActivationsOutputStaticImageOverlayScheduleActions
noSmithyDocumentSerde
}
// Fec Output Settings
type FecOutputSettings struct {
// Parameter D from SMPTE 2022-1. The height of the FEC protection matrix. The
// number of transport stream packets per column error correction packet. Must be
// between 4 and 20, inclusive.
ColumnDepth *int32
// Enables column only or column and row based FEC
IncludeFec FecOutputIncludeFec
// Parameter L from SMPTE 2022-1. The width of the FEC protection matrix. Must be
// between 1 and 20, inclusive. If only Column FEC is used, then larger values
// increase robustness. If Row FEC is used, then this is the number of transport
// stream packets per row error correction packet, and the value must be between 4
// and 20, inclusive, if includeFec is columnAndRow. If includeFec is column, this
// value must be 1 to 20, inclusive.
RowLength *int32
noSmithyDocumentSerde
}
// Start time for the action.
type FixedModeScheduleActionStartSettings struct {
// Start time for the action to start in the channel. (Not the time for the action
// to be added to the schedule: actions are always added to the schedule
// immediately.) UTC format: yyyy-mm-ddThh:mm:ss.nnnZ. All the letters are digits
// (for example, mm might be 01) except for the two constants "T" for time and "Z"
// for "UTC format".
//
// This member is required.
Time *string
noSmithyDocumentSerde
}
// Fmp4 Hls Settings
type Fmp4HlsSettings struct {
// List all the audio groups that are used with the video output stream. Input all
// the audio GROUP-IDs that are associated to the video, separate by ','.
AudioRenditionSets *string
// If set to passthrough, Nielsen inaudible tones for media tracking will be
// detected in the input audio and an equivalent ID3 tag will be inserted in the
// output.
NielsenId3Behavior Fmp4NielsenId3Behavior
// When set to passthrough, timed metadata is passed through from input to output.
TimedMetadataBehavior Fmp4TimedMetadataBehavior
noSmithyDocumentSerde
}
// Settings to specify if an action follows another.
type FollowModeScheduleActionStartSettings struct {
// Identifies whether this action starts relative to the start or relative to the
// end of the reference action.
//
// This member is required.
FollowPoint FollowPoint
// The action name of another action that this one refers to.
//
// This member is required.
ReferenceActionName *string
noSmithyDocumentSerde
}
// Frame Capture Cdn Settings
type FrameCaptureCdnSettings struct {
// Frame Capture S3 Settings
FrameCaptureS3Settings *FrameCaptureS3Settings
noSmithyDocumentSerde
}
// Frame Capture Group Settings
type FrameCaptureGroupSettings struct {
// The destination for the frame capture files. Either the URI for an Amazon S3
// bucket and object, plus a file name prefix (for example,
// s3ssl://sportsDelivery/highlights/20180820/curling-) or the URI for a MediaStore
// container, plus a file name prefix (for example,
// mediastoressl://sportsDelivery/20180820/curling-). The final file names consist
// of the prefix from the destination field (for example, "curling-") + name
// modifier + the counter (5 digits, starting from 00001) + extension (which is
// always .jpg). For example, curling-low.00001.jpg
//
// This member is required.
Destination *OutputLocationRef
// Parameters that control interactions with the CDN.
FrameCaptureCdnSettings *FrameCaptureCdnSettings
noSmithyDocumentSerde
}
// Frame Capture Hls Settings
type FrameCaptureHlsSettings struct {
noSmithyDocumentSerde
}
// Frame Capture Output Settings
type FrameCaptureOutputSettings struct {
// Required if the output group contains more than one output. This modifier forms
// part of the output file name.
NameModifier *string
noSmithyDocumentSerde
}
// Frame Capture S3 Settings
type FrameCaptureS3Settings struct {
// Specify the canned ACL to apply to each S3 request. Defaults to none.
CannedAcl S3CannedAcl
noSmithyDocumentSerde
}
// Frame Capture Settings
type FrameCaptureSettings struct {
// The frequency at which to capture frames for inclusion in the output. May be
// specified in either seconds or milliseconds, as specified by
// captureIntervalUnits.
CaptureInterval *int32
// Unit for the frame capture interval.
CaptureIntervalUnits FrameCaptureIntervalUnit
// Timecode burn-in settings
TimecodeBurninSettings *TimecodeBurninSettings
noSmithyDocumentSerde
}
// Global Configuration
type GlobalConfiguration struct {
// Value to set the initial audio gain for the Live Event.
InitialAudioGain *int32
// Indicates the action to take when the current input completes (e.g.
// end-of-file). When switchAndLoopInputs is configured the encoder will restart at
// the beginning of the first input. When "none" is configured the encoder will
// transcode either black, a solid color, or a user specified slate images per the
// "Input Loss Behavior" configuration until the next input switch occurs (which is
// controlled through the Channel Schedule API).
InputEndAction GlobalConfigurationInputEndAction
// Settings for system actions when input is lost.
InputLossBehavior *InputLossBehavior
// Indicates how MediaLive pipelines are synchronized. PIPELINE_LOCKING -
// MediaLive will attempt to synchronize the output of each pipeline to the other.
// EPOCH_LOCKING - MediaLive will attempt to synchronize the output of each
// pipeline to the Unix epoch.
OutputLockingMode GlobalConfigurationOutputLockingMode
// Advanced output locking settings
OutputLockingSettings *OutputLockingSettings
// Indicates whether the rate of frames emitted by the Live encoder should be
// paced by its system clock (which optionally may be locked to another source via
// NTP) or should be locked to the clock of the source that is providing the input
// stream.
OutputTimingSource GlobalConfigurationOutputTimingSource
// Adjusts video input buffer for streams with very low video framerates. This is
// commonly set to enabled for music channels with less than one video frame per
// second.
SupportLowFramerateInputs GlobalConfigurationLowFramerateInputs
noSmithyDocumentSerde
}
// H264 Color Space Settings
type H264ColorSpaceSettings struct {
// Passthrough applies no color space conversion to the output
ColorSpacePassthroughSettings *ColorSpacePassthroughSettings
// Rec601 Settings
Rec601Settings *Rec601Settings
// Rec709 Settings
Rec709Settings *Rec709Settings
noSmithyDocumentSerde
}
// H264 Filter Settings
type H264FilterSettings struct {
// Temporal Filter Settings
TemporalFilterSettings *TemporalFilterSettings
noSmithyDocumentSerde
}
// H264 Settings
type H264Settings struct {
// Enables or disables adaptive quantization, which is a technique MediaLive can
// apply to video on a frame-by-frame basis to produce more compression without
// losing quality. There are three types of adaptive quantization: flicker,
// spatial, and temporal. Set the field in one of these ways: Set to Auto.
// Recommended. For each type of AQ, MediaLive will determine if AQ is needed, and
// if so, the appropriate strength. Set a strength (a value other than Auto or
// Disable). This strength will apply to any of the AQ fields that you choose to
// enable. Set to Disabled to disable all types of adaptive quantization.
AdaptiveQuantization H264AdaptiveQuantization
// Indicates that AFD values will be written into the output stream. If
// afdSignaling is "auto", the system will try to preserve the input AFD value (in
// cases where multiple AFD values are valid). If set to "fixed", the AFD value
// will be the value configured in the fixedAfd parameter.
AfdSignaling AfdSignaling
// Average bitrate in bits/second. Required when the rate control mode is VBR or
// CBR. Not used for QVBR. In an MS Smooth output group, each output must have a
// unique value when its bitrate is rounded down to the nearest multiple of 1000.
Bitrate *int32
// Percentage of the buffer that should initially be filled (HRD buffer model).
BufFillPct *int32
// Size of buffer (HRD buffer model) in bits.
BufSize *int32
// Includes colorspace metadata in the output.
ColorMetadata H264ColorMetadata
// Color Space settings
ColorSpaceSettings *H264ColorSpaceSettings
// Entropy encoding mode. Use cabac (must be in Main or High profile) or cavlc.
EntropyEncoding H264EntropyEncoding
// Optional filters that you can apply to an encode.
FilterSettings *H264FilterSettings
// Four bit AFD value to write on all frames of video in the output stream. Only
// valid when afdSignaling is set to 'Fixed'.
FixedAfd FixedAfd
// Flicker AQ makes adjustments within each frame to reduce flicker or 'pop' on
// I-frames. The value to enter in this field depends on the value in the Adaptive
// quantization field: If you have set the Adaptive quantization field to Auto,
// MediaLive ignores any value in this field. MediaLive will determine if flicker
// AQ is appropriate and will apply the appropriate strength. If you have set the
// Adaptive quantization field to a strength, you can set this field to Enabled or
// Disabled. Enabled: MediaLive will apply flicker AQ using the specified strength.
// Disabled: MediaLive won't apply flicker AQ. If you have set the Adaptive
// quantization to Disabled, MediaLive ignores any value in this field and doesn't
// apply flicker AQ.
FlickerAq H264FlickerAq
// This setting applies only when scan type is "interlaced." It controls whether
// coding is performed on a field basis or on a frame basis. (When the video is
// progressive, the coding is always performed on a frame basis.) enabled: Force
// MediaLive to code on a field basis, so that odd and even sets of fields are
// coded separately. disabled: Code the two sets of fields separately (on a field
// basis) or together (on a frame basis using PAFF), depending on what is most
// appropriate for the content.
ForceFieldPictures H264ForceFieldPictures
// This field indicates how the output video frame rate is specified. If
// "specified" is selected then the output video frame rate is determined by
// framerateNumerator and framerateDenominator, else if "initializeFromSource" is
// selected then the output video frame rate will be set equal to the input video
// frame rate of the first input.
FramerateControl H264FramerateControl
// Framerate denominator.
FramerateDenominator *int32
// Framerate numerator - framerate is a fraction, e.g. 24000 / 1001 = 23.976 fps.
FramerateNumerator *int32
// Documentation update needed
GopBReference H264GopBReference
// Frequency of closed GOPs. In streaming applications, it is recommended that
// this be set to 1 so a decoder joining mid-stream will receive an IDR frame as
// quickly as possible. Setting this value to 0 will break output segmenting.
GopClosedCadence *int32
// Number of B-frames between reference frames.
GopNumBFrames *int32
// GOP size (keyframe interval) in units of either frames or seconds per
// gopSizeUnits. If gopSizeUnits is frames, gopSize must be an integer and must be
// greater than or equal to 1. If gopSizeUnits is seconds, gopSize must be greater
// than 0, but need not be an integer.
GopSize *float64
// Indicates if the gopSize is specified in frames or seconds. If seconds the
// system will convert the gopSize into a frame count at run time.
GopSizeUnits H264GopSizeUnits
// H.264 Level.
Level H264Level
// Amount of lookahead. A value of low can decrease latency and memory usage,
// while high can produce better quality for certain content.
LookAheadRateControl H264LookAheadRateControl
// For QVBR: See the tooltip for Quality level For VBR: Set the maximum bitrate in
// order to accommodate expected spikes in the complexity of the video.
MaxBitrate *int32
// Only meaningful if sceneChangeDetect is set to enabled. Defaults to 5 if
// multiplex rate control is used. Enforces separation between repeated (cadence)
// I-frames and I-frames inserted by Scene Change Detection. If a scene change
// I-frame is within I-interval frames of a cadence I-frame, the GOP is shrunk
// and/or stretched to the scene change I-frame. GOP stretch requires enabling
// lookahead as well as setting I-interval. The normal cadence resumes for the next
// GOP. Note: Maximum GOP stretch = GOP size + Min-I-interval - 1
MinIInterval *int32
// Number of reference frames to use. The encoder may use more than requested if
// using B-frames and/or interlaced encoding.
NumRefFrames *int32
// This field indicates how the output pixel aspect ratio is specified. If
// "specified" is selected then the output video pixel aspect ratio is determined
// by parNumerator and parDenominator, else if "initializeFromSource" is selected
// then the output pixsel aspect ratio will be set equal to the input video pixel
// aspect ratio of the first input.
ParControl H264ParControl
// Pixel Aspect Ratio denominator.
ParDenominator *int32
// Pixel Aspect Ratio numerator.
ParNumerator *int32
// H.264 Profile.
Profile H264Profile
// Leave as STANDARD_QUALITY or choose a different value (which might result in
// additional costs to run the channel).
// - ENHANCED_QUALITY: Produces a slightly better video quality without an
// increase in the bitrate. Has an effect only when the Rate control mode is QVBR
// or CBR. If this channel is in a MediaLive multiplex, the value must be
// ENHANCED_QUALITY.
// - STANDARD_QUALITY: Valid for any Rate control mode.
QualityLevel H264QualityLevel
// Controls the target quality for the video encode. Applies only when the rate
// control mode is QVBR. You can set a target quality or you can let MediaLive
// determine the best quality. To set a target quality, enter values in the QVBR
// quality level field and the Max bitrate field. Enter values that suit your most
// important viewing devices. Recommended values are:
// - Primary screen: Quality level: 8 to 10. Max bitrate: 4M
// - PC or tablet: Quality level: 7. Max bitrate: 1.5M to 3M
// - Smartphone: Quality level: 6. Max bitrate: 1M to 1.5M To let MediaLive
// decide, leave the QVBR quality level field empty, and in Max bitrate enter the
// maximum rate you want in the video. For more information, see the section called
// "Video - rate control mode" in the MediaLive user guide
QvbrQualityLevel *int32
// Rate control mode. QVBR: Quality will match the specified quality level except
// when it is constrained by the maximum bitrate. Recommended if you or your
// viewers pay for bandwidth. VBR: Quality and bitrate vary, depending on the video
// complexity. Recommended instead of QVBR if you want to maintain a specific
// average bitrate over the duration of the channel. CBR: Quality varies, depending
// on the video complexity. Recommended only if you distribute your assets to
// devices that cannot handle variable bitrates. Multiplex: This rate control mode
// is only supported (and is required) when the video is being delivered to a
// MediaLive Multiplex in which case the rate control configuration is controlled
// by the properties within the Multiplex Program.
RateControlMode H264RateControlMode
// Sets the scan type of the output to progressive or top-field-first interlaced.
ScanType H264ScanType
// Scene change detection.
// - On: inserts I-frames when scene change is detected.
// - Off: does not force an I-frame when scene change is detected.
SceneChangeDetect H264SceneChangeDetect
// Number of slices per picture. Must be less than or equal to the number of
// macroblock rows for progressive pictures, and less than or equal to half the
// number of macroblock rows for interlaced pictures. This field is optional; when
// no value is specified the encoder will choose the number of slices based on
// encode resolution.
Slices *int32
// Softness. Selects quantizer matrix, larger values reduce high-frequency content
// in the encoded image. If not set to zero, must be greater than 15.
Softness *int32
// Spatial AQ makes adjustments within each frame based on spatial variation of
// content complexity. The value to enter in this field depends on the value in the
// Adaptive quantization field: If you have set the Adaptive quantization field to
// Auto, MediaLive ignores any value in this field. MediaLive will determine if
// spatial AQ is appropriate and will apply the appropriate strength. If you have
// set the Adaptive quantization field to a strength, you can set this field to
// Enabled or Disabled. Enabled: MediaLive will apply spatial AQ using the
// specified strength. Disabled: MediaLive won't apply spatial AQ. If you have set
// the Adaptive quantization to Disabled, MediaLive ignores any value in this field
// and doesn't apply spatial AQ.
SpatialAq H264SpatialAq
// If set to fixed, use gopNumBFrames B-frames per sub-GOP. If set to dynamic,
// optimize the number of B-frames used for each sub-GOP to improve visual quality.
SubgopLength H264SubGopLength
// Produces a bitstream compliant with SMPTE RP-2027.
Syntax H264Syntax
// Temporal makes adjustments within each frame based on temporal variation of
// content complexity. The value to enter in this field depends on the value in the
// Adaptive quantization field: If you have set the Adaptive quantization field to
// Auto, MediaLive ignores any value in this field. MediaLive will determine if
// temporal AQ is appropriate and will apply the appropriate strength. If you have
// set the Adaptive quantization field to a strength, you can set this field to
// Enabled or Disabled. Enabled: MediaLive will apply temporal AQ using the
// specified strength. Disabled: MediaLive won't apply temporal AQ. If you have set
// the Adaptive quantization to Disabled, MediaLive ignores any value in this field
// and doesn't apply temporal AQ.
TemporalAq H264TemporalAq
// Timecode burn-in settings
TimecodeBurninSettings *TimecodeBurninSettings
// Determines how timecodes should be inserted into the video elementary stream.
// - 'disabled': Do not include timecodes
// - 'picTimingSei': Pass through picture timing SEI messages from the source
// specified in Timecode Config
TimecodeInsertion H264TimecodeInsertionBehavior
noSmithyDocumentSerde
}
// H265 Color Space Settings
type H265ColorSpaceSettings struct {
// Passthrough applies no color space conversion to the output
ColorSpacePassthroughSettings *ColorSpacePassthroughSettings
// Dolby Vision81 Settings
DolbyVision81Settings *DolbyVision81Settings
// Hdr10 Settings
Hdr10Settings *Hdr10Settings
// Rec601 Settings
Rec601Settings *Rec601Settings
// Rec709 Settings
Rec709Settings *Rec709Settings
noSmithyDocumentSerde
}
// H265 Filter Settings
type H265FilterSettings struct {
// Temporal Filter Settings
TemporalFilterSettings *TemporalFilterSettings
noSmithyDocumentSerde
}
// H265 Settings
type H265Settings struct {
// Framerate denominator.
//
// This member is required.
FramerateDenominator *int32
// Framerate numerator - framerate is a fraction, e.g. 24000 / 1001 = 23.976 fps.
//
// This member is required.
FramerateNumerator *int32
// Adaptive quantization. Allows intra-frame quantizers to vary to improve visual
// quality.
AdaptiveQuantization H265AdaptiveQuantization
// Indicates that AFD values will be written into the output stream. If
// afdSignaling is "auto", the system will try to preserve the input AFD value (in
// cases where multiple AFD values are valid). If set to "fixed", the AFD value
// will be the value configured in the fixedAfd parameter.
AfdSignaling AfdSignaling
// Whether or not EML should insert an Alternative Transfer Function SEI message
// to support backwards compatibility with non-HDR decoders and displays.
AlternativeTransferFunction H265AlternativeTransferFunction
// Average bitrate in bits/second. Required when the rate control mode is VBR or
// CBR. Not used for QVBR. In an MS Smooth output group, each output must have a
// unique value when its bitrate is rounded down to the nearest multiple of 1000.
Bitrate *int32
// Size of buffer (HRD buffer model) in bits.
BufSize *int32
// Includes colorspace metadata in the output.
ColorMetadata H265ColorMetadata
// Color Space settings
ColorSpaceSettings *H265ColorSpaceSettings
// Optional filters that you can apply to an encode.
FilterSettings *H265FilterSettings
// Four bit AFD value to write on all frames of video in the output stream. Only
// valid when afdSignaling is set to 'Fixed'.
FixedAfd FixedAfd
// If set to enabled, adjust quantization within each frame to reduce flicker or
// 'pop' on I-frames.
FlickerAq H265FlickerAq
// Frequency of closed GOPs. In streaming applications, it is recommended that
// this be set to 1 so a decoder joining mid-stream will receive an IDR frame as
// quickly as possible. Setting this value to 0 will break output segmenting.
GopClosedCadence *int32
// GOP size (keyframe interval) in units of either frames or seconds per
// gopSizeUnits. If gopSizeUnits is frames, gopSize must be an integer and must be
// greater than or equal to 1. If gopSizeUnits is seconds, gopSize must be greater
// than 0, but need not be an integer.
GopSize *float64
// Indicates if the gopSize is specified in frames or seconds. If seconds the
// system will convert the gopSize into a frame count at run time.
GopSizeUnits H265GopSizeUnits
// H.265 Level.
Level H265Level
// Amount of lookahead. A value of low can decrease latency and memory usage,
// while high can produce better quality for certain content.
LookAheadRateControl H265LookAheadRateControl
// For QVBR: See the tooltip for Quality level
MaxBitrate *int32
// Only meaningful if sceneChangeDetect is set to enabled. Defaults to 5 if
// multiplex rate control is used. Enforces separation between repeated (cadence)
// I-frames and I-frames inserted by Scene Change Detection. If a scene change
// I-frame is within I-interval frames of a cadence I-frame, the GOP is shrunk
// and/or stretched to the scene change I-frame. GOP stretch requires enabling
// lookahead as well as setting I-interval. The normal cadence resumes for the next
// GOP. Note: Maximum GOP stretch = GOP size + Min-I-interval - 1
MinIInterval *int32
// Pixel Aspect Ratio denominator.
ParDenominator *int32
// Pixel Aspect Ratio numerator.
ParNumerator *int32
// H.265 Profile.
Profile H265Profile
// Controls the target quality for the video encode. Applies only when the rate
// control mode is QVBR. Set values for the QVBR quality level field and Max
// bitrate field that suit your most important viewing devices. Recommended values
// are:
// - Primary screen: Quality level: 8 to 10. Max bitrate: 4M
// - PC or tablet: Quality level: 7. Max bitrate: 1.5M to 3M
// - Smartphone: Quality level: 6. Max bitrate: 1M to 1.5M
QvbrQualityLevel *int32
// Rate control mode. QVBR: Quality will match the specified quality level except
// when it is constrained by the maximum bitrate. Recommended if you or your
// viewers pay for bandwidth. CBR: Quality varies, depending on the video
// complexity. Recommended only if you distribute your assets to devices that
// cannot handle variable bitrates. Multiplex: This rate control mode is only
// supported (and is required) when the video is being delivered to a MediaLive
// Multiplex in which case the rate control configuration is controlled by the
// properties within the Multiplex Program.
RateControlMode H265RateControlMode
// Sets the scan type of the output to progressive or top-field-first interlaced.
ScanType H265ScanType
// Scene change detection.
SceneChangeDetect H265SceneChangeDetect
// Number of slices per picture. Must be less than or equal to the number of
// macroblock rows for progressive pictures, and less than or equal to half the
// number of macroblock rows for interlaced pictures. This field is optional; when
// no value is specified the encoder will choose the number of slices based on
// encode resolution.
Slices *int32
// H.265 Tier.
Tier H265Tier
// Timecode burn-in settings
TimecodeBurninSettings *TimecodeBurninSettings
// Determines how timecodes should be inserted into the video elementary stream.
// - 'disabled': Do not include timecodes
// - 'picTimingSei': Pass through picture timing SEI messages from the source
// specified in Timecode Config
TimecodeInsertion H265TimecodeInsertionBehavior
noSmithyDocumentSerde
}
// Hdr10 Settings
type Hdr10Settings struct {
// Maximum Content Light Level An integer metadata value defining the maximum
// light level, in nits, of any single pixel within an encoded HDR video stream or
// file.
MaxCll *int32
// Maximum Frame Average Light Level An integer metadata value defining the
// maximum average light level, in nits, for any single frame within an encoded HDR
// video stream or file.
MaxFall *int32
noSmithyDocumentSerde
}
// Hls Akamai Settings
type HlsAkamaiSettings struct {
// Number of seconds to wait before retrying connection to the CDN if the
// connection is lost.
ConnectionRetryInterval *int32
// Size in seconds of file cache for streaming outputs.
FilecacheDuration *int32
// Specify whether or not to use chunked transfer encoding to Akamai. User should
// contact Akamai to enable this feature.
HttpTransferMode HlsAkamaiHttpTransferMode
// Number of retry attempts that will be made before the Live Event is put into an
// error state. Applies only if the CDN destination URI begins with "s3" or
// "mediastore". For other URIs, the value is always 3.
NumRetries *int32
// If a streaming output fails, number of seconds to wait until a restart is
// initiated. A value of 0 means never restart.
RestartDelay *int32
// Salt for authenticated Akamai.
Salt *string
// Token parameter for authenticated akamai. If not specified, gda is used.
Token *string
noSmithyDocumentSerde
}
// Hls Basic Put Settings
type HlsBasicPutSettings struct {
// Number of seconds to wait before retrying connection to the CDN if the
// connection is lost.
ConnectionRetryInterval *int32
// Size in seconds of file cache for streaming outputs.
FilecacheDuration *int32
// Number of retry attempts that will be made before the Live Event is put into an
// error state. Applies only if the CDN destination URI begins with "s3" or
// "mediastore". For other URIs, the value is always 3.
NumRetries *int32
// If a streaming output fails, number of seconds to wait until a restart is
// initiated. A value of 0 means never restart.
RestartDelay *int32
noSmithyDocumentSerde
}
// Hls Cdn Settings
type HlsCdnSettings struct {
// Hls Akamai Settings
HlsAkamaiSettings *HlsAkamaiSettings
// Hls Basic Put Settings
HlsBasicPutSettings *HlsBasicPutSettings
// Hls Media Store Settings
HlsMediaStoreSettings *HlsMediaStoreSettings
// Hls S3 Settings
HlsS3Settings *HlsS3Settings
// Hls Webdav Settings
HlsWebdavSettings *HlsWebdavSettings
noSmithyDocumentSerde
}
// Hls Group Settings
type HlsGroupSettings struct {
// A directory or HTTP destination for the HLS segments, manifest files, and
// encryption keys (if enabled).
//
// This member is required.
Destination *OutputLocationRef
// Choose one or more ad marker types to pass SCTE35 signals through to this group
// of Apple HLS outputs.
AdMarkers []HlsAdMarkers
// A partial URI prefix that will be prepended to each output in the media .m3u8
// file. Can be used if base manifest is delivered from a different URL than the
// main .m3u8 file.
BaseUrlContent *string
// Optional. One value per output group. This field is required only if you are
// completing Base URL content A, and the downstream system has notified you that
// the media files for pipeline 1 of all outputs are in a location different from
// the media files for pipeline 0.
BaseUrlContent1 *string
// A partial URI prefix that will be prepended to each output in the media .m3u8
// file. Can be used if base manifest is delivered from a different URL than the
// main .m3u8 file.
BaseUrlManifest *string
// Optional. One value per output group. Complete this field only if you are
// completing Base URL manifest A, and the downstream system has notified you that
// the child manifest files for pipeline 1 of all outputs are in a location
// different from the child manifest files for pipeline 0.
BaseUrlManifest1 *string
// Mapping of up to 4 caption channels to caption languages. Is only meaningful if
// captionLanguageSetting is set to "insert".
CaptionLanguageMappings []CaptionLanguageMapping
// Applies only to 608 Embedded output captions. insert: Include CLOSED-CAPTIONS
// lines in the manifest. Specify at least one language in the CC1 Language Code
// field. One CLOSED-CAPTION line is added for each Language Code you specify. Make
// sure to specify the languages in the order in which they appear in the original
// source (if the source is embedded format) or the order of the caption selectors
// (if the source is other than embedded). Otherwise, languages in the manifest
// will not match up properly with the output captions. none: Include
// CLOSED-CAPTIONS=NONE line in the manifest. omit: Omit any CLOSED-CAPTIONS line
// from the manifest.
CaptionLanguageSetting HlsCaptionLanguageSetting
// When set to "disabled", sets the #EXT-X-ALLOW-CACHE:no tag in the manifest,
// which prevents clients from saving media segments for later replay.
ClientCache HlsClientCache
// Specification to use (RFC-6381 or the default RFC-4281) during m3u8 playlist
// generation.
CodecSpecification HlsCodecSpecification
// For use with encryptionType. This is a 128-bit, 16-byte hex value represented
// by a 32-character text string. If ivSource is set to "explicit" then this
// parameter is required and is used as the IV for encryption.
ConstantIv *string
// Place segments in subdirectories.
DirectoryStructure HlsDirectoryStructure
// Specifies whether to insert EXT-X-DISCONTINUITY tags in the HLS child manifests
// for this output group. Typically, choose Insert because these tags are required
// in the manifest (according to the HLS specification) and serve an important
// purpose. Choose Never Insert only if the downstream system is doing real-time
// failover (without using the MediaLive automatic failover feature) and only if
// that downstream system has advised you to exclude the tags.
DiscontinuityTags HlsDiscontinuityTags
// Encrypts the segments with the given encryption scheme. Exclude this parameter
// if no encryption is desired.
EncryptionType HlsEncryptionType
// Parameters that control interactions with the CDN.
HlsCdnSettings *HlsCdnSettings
// State of HLS ID3 Segment Tagging
HlsId3SegmentTagging HlsId3SegmentTaggingState
// DISABLED: Do not create an I-frame-only manifest, but do create the master and
// media manifests (according to the Output Selection field). STANDARD: Create an
// I-frame-only manifest for each output that contains video, as well as the other
// manifests (according to the Output Selection field). The I-frame manifest
// contains a #EXT-X-I-FRAMES-ONLY tag to indicate it is I-frame only, and one or
// more #EXT-X-BYTERANGE entries identifying the I-frame position. For example,
// #EXT-X-BYTERANGE:160364@1461888"
IFrameOnlyPlaylists IFrameOnlyPlaylistType
// Specifies whether to include the final (incomplete) segment in the media output
// when the pipeline stops producing output because of a channel stop, a channel
// pause or a loss of input to the pipeline. Auto means that MediaLive decides
// whether to include the final segment, depending on the channel class and the
// types of output groups. Suppress means to never include the incomplete segment.
// We recommend you choose Auto and let MediaLive control the behavior.
IncompleteSegmentBehavior HlsIncompleteSegmentBehavior
// Applies only if Mode field is LIVE. Specifies the maximum number of segments in
// the media manifest file. After this maximum, older segments are removed from the
// media manifest. This number must be smaller than the number in the Keep Segments
// field.
IndexNSegments *int32
// Parameter that control output group behavior on input loss.
InputLossAction InputLossActionForHlsOut
// For use with encryptionType. The IV (Initialization Vector) is a 128-bit number
// used in conjunction with the key for encrypting blocks. If set to "include", IV
// is listed in the manifest, otherwise the IV is not in the manifest.
IvInManifest HlsIvInManifest
// For use with encryptionType. The IV (Initialization Vector) is a 128-bit number
// used in conjunction with the key for encrypting blocks. If this setting is
// "followsSegmentNumber", it will cause the IV to change every segment (to match
// the segment number). If this is set to "explicit", you must enter a constantIv
// value.
IvSource HlsIvSource
// Applies only if Mode field is LIVE. Specifies the number of media segments to
// retain in the destination directory. This number should be bigger than
// indexNSegments (Num segments). We recommend (value = (2 x indexNsegments) + 1).
// If this "keep segments" number is too low, the following might happen: the
// player is still reading a media manifest file that lists this segment, but that
// segment has been removed from the destination directory (as directed by
// indexNSegments). This situation would result in a 404 HTTP error on the player.
KeepSegments *int32
// The value specifies how the key is represented in the resource identified by
// the URI. If parameter is absent, an implicit value of "identity" is used. A
// reverse DNS string can also be given.
KeyFormat *string
// Either a single positive integer version value or a slash delimited list of
// version values (1/2/3).
KeyFormatVersions *string
// The key provider settings.
KeyProviderSettings *KeyProviderSettings
// When set to gzip, compresses HLS playlist.
ManifestCompression HlsManifestCompression
// Indicates whether the output manifest should use floating point or integer
// values for segment duration.
ManifestDurationFormat HlsManifestDurationFormat
// Minimum length of MPEG-2 Transport Stream segments in seconds. When set,
// minimum segment length is enforced by looking ahead and back within the
// specified range for a nearby avail and extending the segment size if needed.
MinSegmentLength *int32
// If "vod", all segments are indexed and kept permanently in the destination and
// manifest. If "live", only the number segments specified in keepSegments and
// indexNSegments are kept; newer segments replace older segments, which may
// prevent players from rewinding all the way to the beginning of the event. VOD
// mode uses HLS EXT-X-PLAYLIST-TYPE of EVENT while the channel is running,
// converting it to a "VOD" type manifest on completion of the stream.
Mode HlsMode
// MANIFESTS_AND_SEGMENTS: Generates manifests (master manifest, if applicable,
// and media manifests) for this output group. VARIANT_MANIFESTS_AND_SEGMENTS:
// Generates media manifests for this output group, but not a master manifest.
// SEGMENTS_ONLY: Does not generate any manifests for this output group.
OutputSelection HlsOutputSelection
// Includes or excludes EXT-X-PROGRAM-DATE-TIME tag in .m3u8 manifest files. The
// value is calculated using the program date time clock.
ProgramDateTime HlsProgramDateTime
// Specifies the algorithm used to drive the HLS EXT-X-PROGRAM-DATE-TIME clock.
// Options include: INITIALIZE_FROM_OUTPUT_TIMECODE: The PDT clock is initialized
// as a function of the first output timecode, then incremented by the EXTINF
// duration of each encoded segment. SYSTEM_CLOCK: The PDT clock is initialized as
// a function of the UTC wall clock, then incremented by the EXTINF duration of
// each encoded segment. If the PDT clock diverges from the wall clock by more than
// 500ms, it is resynchronized to the wall clock.
ProgramDateTimeClock HlsProgramDateTimeClock
// Period of insertion of EXT-X-PROGRAM-DATE-TIME entry, in seconds.
ProgramDateTimePeriod *int32
// ENABLED: The master manifest (.m3u8 file) for each pipeline includes
// information about both pipelines: first its own media files, then the media
// files of the other pipeline. This feature allows playout device that support
// stale manifest detection to switch from one manifest to the other, when the
// current manifest seems to be stale. There are still two destinations and two
// master manifests, but both master manifests reference the media files from both
// pipelines. DISABLED: The master manifest (.m3u8 file) for each pipeline includes
// information about its own pipeline only. For an HLS output group with
// MediaPackage as the destination, the DISABLED behavior is always followed.
// MediaPackage regenerates the manifests it serves to players so a redundant
// manifest from MediaLive is irrelevant.
RedundantManifest HlsRedundantManifest
// Length of MPEG-2 Transport Stream segments to create in seconds. Note that
// segments will end on the next keyframe after this duration, so actual segment
// length may be longer.
SegmentLength *int32
// useInputSegmentation has been deprecated. The configured segment size is always
// used.
SegmentationMode HlsSegmentationMode
// Number of segments to write to a subdirectory before starting a new one.
// directoryStructure must be subdirectoryPerStream for this setting to have an
// effect.
SegmentsPerSubdirectory *int32
// Include or exclude RESOLUTION attribute for video in EXT-X-STREAM-INF tag of
// variant manifest.
StreamInfResolution HlsStreamInfResolution
// Indicates ID3 frame that has the timecode.
TimedMetadataId3Frame HlsTimedMetadataId3Frame
// Timed Metadata interval in seconds.
TimedMetadataId3Period *int32
// Provides an extra millisecond delta offset to fine tune the timestamps.
TimestampDeltaMilliseconds *int32
// SEGMENTED_FILES: Emit the program as segments - multiple .ts media files.
// SINGLE_FILE: Applies only if Mode field is VOD. Emit the program as a single .ts
// media file. The media manifest includes #EXT-X-BYTERANGE tags to index segments
// for playback. A typical use for this value is when sending the output to AWS
// Elemental MediaConvert, which can accept only a single media file. Playback
// while the channel is running is not guaranteed due to HTTP server caching.
TsFileMode HlsTsFileMode
noSmithyDocumentSerde
}
// Settings for the action to insert a user-defined ID3 tag in each HLS segment
type HlsId3SegmentTaggingScheduleActionSettings struct {
// Base64 string formatted according to the ID3 specification:
// http://id3.org/id3v2.4.0-structure
Id3 *string
// ID3 tag to insert into each segment. Supports special keyword identifiers to
// substitute in segment-related values.\nSupported keyword identifiers:
// https://docs.aws.amazon.com/medialive/latest/ug/variable-data-identifiers.html
Tag *string
noSmithyDocumentSerde
}
// Hls Input Settings
type HlsInputSettings struct {
// When specified the HLS stream with the m3u8 BANDWIDTH that most closely matches
// this value will be chosen, otherwise the highest bandwidth stream in the m3u8
// will be chosen. The bitrate is specified in bits per second, as in an HLS
// manifest.
Bandwidth *int32
// When specified, reading of the HLS input will begin this many buffer segments
// from the end (most recently written segment). When not specified, the HLS input
// will begin with the first segment specified in the m3u8.
BufferSegments *int32
// The number of consecutive times that attempts to read a manifest or segment
// must fail before the input is considered unavailable.
Retries *int32
// The number of seconds between retries when an attempt to read a manifest or
// segment fails.
RetryInterval *int32
// Identifies the source for the SCTE-35 messages that MediaLive will ingest.
// Messages can be ingested from the content segments (in the stream) or from tags
// in the playlist (the HLS manifest). MediaLive ignores SCTE-35 information in the
// source that is not selected.
Scte35Source HlsScte35SourceType
noSmithyDocumentSerde
}
// Hls Media Store Settings
type HlsMediaStoreSettings struct {
// Number of seconds to wait before retrying connection to the CDN if the
// connection is lost.
ConnectionRetryInterval *int32
// Size in seconds of file cache for streaming outputs.
FilecacheDuration *int32
// When set to temporal, output files are stored in non-persistent memory for
// faster reading and writing.
MediaStoreStorageClass HlsMediaStoreStorageClass
// Number of retry attempts that will be made before the Live Event is put into an
// error state. Applies only if the CDN destination URI begins with "s3" or
// "mediastore". For other URIs, the value is always 3.
NumRetries *int32
// If a streaming output fails, number of seconds to wait until a restart is
// initiated. A value of 0 means never restart.
RestartDelay *int32
noSmithyDocumentSerde
}
// Hls Output Settings
type HlsOutputSettings struct {
// Settings regarding the underlying stream. These settings are different for
// audio-only outputs.
//
// This member is required.
HlsSettings *HlsSettings
// Only applicable when this output is referencing an H.265 video description.
// Specifies whether MP4 segments should be packaged as HEV1 or HVC1.
H265PackagingType HlsH265PackagingType
// String concatenated to the end of the destination filename. Accepts "Format
// Identifiers":#formatIdentifierParameters.
NameModifier *string
// String concatenated to end of segment filenames.
SegmentModifier *string
noSmithyDocumentSerde
}
// Hls S3 Settings
type HlsS3Settings struct {
// Specify the canned ACL to apply to each S3 request. Defaults to none.
CannedAcl S3CannedAcl
noSmithyDocumentSerde
}
// Hls Settings
type HlsSettings struct {
// Audio Only Hls Settings
AudioOnlyHlsSettings *AudioOnlyHlsSettings
// Fmp4 Hls Settings
Fmp4HlsSettings *Fmp4HlsSettings
// Frame Capture Hls Settings
FrameCaptureHlsSettings *FrameCaptureHlsSettings
// Standard Hls Settings
StandardHlsSettings *StandardHlsSettings
noSmithyDocumentSerde
}
// Settings for the action to emit HLS metadata
type HlsTimedMetadataScheduleActionSettings struct {
// Base64 string formatted according to the ID3 specification:
// http://id3.org/id3v2.4.0-structure
//
// This member is required.
Id3 *string
noSmithyDocumentSerde
}
// Hls Webdav Settings
type HlsWebdavSettings struct {
// Number of seconds to wait before retrying connection to the CDN if the
// connection is lost.
ConnectionRetryInterval *int32
// Size in seconds of file cache for streaming outputs.
FilecacheDuration *int32
// Specify whether or not to use chunked transfer encoding to WebDAV.
HttpTransferMode HlsWebdavHttpTransferMode
// Number of retry attempts that will be made before the Live Event is put into an
// error state. Applies only if the CDN destination URI begins with "s3" or
// "mediastore". For other URIs, the value is always 3.
NumRetries *int32
// If a streaming output fails, number of seconds to wait until a restart is
// initiated. A value of 0 means never restart.
RestartDelay *int32
noSmithyDocumentSerde
}
// Html Motion Graphics Settings
type HtmlMotionGraphicsSettings struct {
noSmithyDocumentSerde
}
// Settings to configure an action so that it occurs as soon as possible.
type ImmediateModeScheduleActionStartSettings struct {
noSmithyDocumentSerde
}
// Placeholder documentation for Input
type Input struct {
// The Unique ARN of the input (generated, immutable).
Arn *string
// A list of channel IDs that that input is attached to (currently an input can
// only be attached to one channel).
AttachedChannels []string
// A list of the destinations of the input (PUSH-type).
Destinations []InputDestination
// The generated ID of the input (unique for user account, immutable).
Id *string
// STANDARD - MediaLive expects two sources to be connected to this input. If the
// channel is also STANDARD, both sources will be ingested. If the channel is
// SINGLE_PIPELINE, only the first source will be ingested; the second source will
// always be ignored, even if the first source fails. SINGLE_PIPELINE - You can
// connect only one source to this input. If the ChannelClass is also
// SINGLE_PIPELINE, this value is valid. If the ChannelClass is STANDARD, this
// value is not valid because the channel requires two sources in the input.
InputClass InputClass
// Settings for the input devices.
InputDevices []InputDeviceSettings
// A list of IDs for all Inputs which are partners of this one.
InputPartnerIds []string
// Certain pull input sources can be dynamic, meaning that they can have their
// URL's dynamically changes during input switch actions. Presently, this
// functionality only works with MP4_FILE and TS_FILE inputs.
InputSourceType InputSourceType
// A list of MediaConnect Flows for this input.
MediaConnectFlows []MediaConnectFlow
// The user-assigned name (This is a mutable value).
Name *string
// The Amazon Resource Name (ARN) of the role this input assumes during and after
// creation.
RoleArn *string
// A list of IDs for all the Input Security Groups attached to the input.
SecurityGroups []string
// A list of the sources of the input (PULL-type).
Sources []InputSource
// Placeholder documentation for InputState
State InputState
// A collection of key-value pairs.
Tags map[string]string
// The different types of inputs that AWS Elemental MediaLive supports.
Type InputType
noSmithyDocumentSerde
}
// Placeholder documentation for InputAttachment
type InputAttachment struct {
// User-specified settings for defining what the conditions are for declaring the
// input unhealthy and failing over to a different input.
AutomaticInputFailoverSettings *AutomaticInputFailoverSettings
// User-specified name for the attachment. This is required if the user wants to
// use this input in an input switch action.
InputAttachmentName *string
// The ID of the input
InputId *string
// Settings of an input (caption selector, etc.)
InputSettings *InputSettings
noSmithyDocumentSerde
}
// Input Channel Level
type InputChannelLevel struct {
// Remixing value. Units are in dB and acceptable values are within the range from
// -60 (mute) and 6 dB.
//
// This member is required.
Gain *int32
// The index of the input channel used as a source.
//
// This member is required.
InputChannel *int32
noSmithyDocumentSerde
}
// Settings to let you create a clip of the file input, in order to set up the
// input to ingest only a portion of the file.
type InputClippingSettings struct {
// The source of the timecodes in the source being clipped.
//
// This member is required.
InputTimecodeSource InputTimecodeSource
// Settings to identify the start of the clip.
StartTimecode *StartTimecode
// Settings to identify the end of the clip.
StopTimecode *StopTimecode
noSmithyDocumentSerde
}
// The settings for a PUSH type input.
type InputDestination struct {
// The system-generated static IP address of endpoint. It remains fixed for the
// lifetime of the input.
Ip *string
// The port number for the input.
Port *string
// This represents the endpoint that the customer stream will be pushed to.
Url *string
// The properties for a VPC type input destination.
Vpc *InputDestinationVpc
noSmithyDocumentSerde
}
// Endpoint settings for a PUSH type input.
type InputDestinationRequest struct {
// A unique name for the location the RTMP stream is being pushed to.
StreamName *string
noSmithyDocumentSerde
}
// The properties for a VPC type input destination.
type InputDestinationVpc struct {
// The availability zone of the Input destination.
AvailabilityZone *string
// The network interface ID of the Input destination in the VPC.
NetworkInterfaceId *string
noSmithyDocumentSerde
}
// One audio configuration that specifies the format for one audio pair that the
// device produces as output.
type InputDeviceConfigurableAudioChannelPairConfig struct {
// The ID for one audio pair configuration, a value from 1 to 8.
Id *int32
// The profile to set for one audio pair configuration. Choose an enumeration
// value. Each value describes one audio configuration using the format (rate
// control algorithm)-(codec)_(quality)-(bitrate in bytes). For example,
// CBR-AAC_HQ-192000. Or choose DISABLED, in which case the device won't produce
// audio for this pair.
Profile InputDeviceConfigurableAudioChannelPairProfile
noSmithyDocumentSerde
}
// Configurable settings for the input device.
type InputDeviceConfigurableSettings struct {
// An array of eight audio configurations, one for each audio pair in the source.
// Set up each audio configuration either to exclude the pair, or to format it and
// include it in the output from the device. This parameter applies only to UHD
// devices, and only when the device is configured as the source for a MediaConnect
// flow. For an HD device, you configure the audio by setting up audio selectors in
// the channel configuration.
AudioChannelPairs []InputDeviceConfigurableAudioChannelPairConfig
// Choose the codec for the video that the device produces. Only UHD devices can
// specify this parameter.
Codec InputDeviceCodec
// The input source that you want to use. If the device has a source connected to
// only one of its input ports, or if you don't care which source the device sends,
// specify Auto. If the device has sources connected to both its input ports, and
// you want to use a specific source, specify the source.
ConfiguredInput InputDeviceConfiguredInput
// The Link device's buffer size (latency) in milliseconds (ms).
LatencyMs *int32
// The maximum bitrate in bits per second. Set a value here to throttle the
// bitrate of the source video.
MaxBitrate *int32
// To attach this device to a MediaConnect flow, specify these parameters. To
// detach an existing flow, enter {} for the value of mediaconnectSettings. Only
// UHD devices can specify this parameter.
MediaconnectSettings *InputDeviceMediaConnectConfigurableSettings
noSmithyDocumentSerde
}
// Settings that describe the active source from the input device, and the video
// characteristics of that source.
type InputDeviceHdSettings struct {
// If you specified Auto as the configured input, specifies which of the sources
// is currently active (SDI or HDMI).
ActiveInput InputDeviceActiveInput
// The source at the input device that is currently active. You can specify this
// source.
ConfiguredInput InputDeviceConfiguredInput
// The state of the input device.
DeviceState InputDeviceState
// The frame rate of the video source.
Framerate *float64
// The height of the video source, in pixels.
Height *int32
// The Link device's buffer size (latency) in milliseconds (ms). You can specify
// this value.
LatencyMs *int32
// The current maximum bitrate for ingesting this source, in bits per second. You
// can specify this maximum.
MaxBitrate *int32
// The scan type of the video source.
ScanType InputDeviceScanType
// The width of the video source, in pixels.
Width *int32
noSmithyDocumentSerde
}
// Parameters required to attach a MediaConnect flow to the device.
type InputDeviceMediaConnectConfigurableSettings struct {
// The ARN of the MediaConnect flow to attach this device to.
FlowArn *string
// The ARN for the role that MediaLive assumes to access the attached flow and
// secret. For more information about how to create this role, see the MediaLive
// user guide.
RoleArn *string
// The ARN for the secret that holds the encryption key to encrypt the content
// output by the device.
SecretArn *string
// The name of the MediaConnect Flow source to stream to.
SourceName *string
noSmithyDocumentSerde
}
// Information about the MediaConnect flow attached to the device.
type InputDeviceMediaConnectSettings struct {
// The ARN of the MediaConnect flow.
FlowArn *string
// The ARN for the role that MediaLive assumes to access the attached flow and
// secret.
RoleArn *string
// The ARN of the secret used to encrypt the stream.
SecretArn *string
// The name of the MediaConnect flow source.
SourceName *string
noSmithyDocumentSerde
}
// The network settings for the input device.
type InputDeviceNetworkSettings struct {
// The DNS addresses of the input device.
DnsAddresses []string
// The network gateway IP address.
Gateway *string
// The IP address of the input device.
IpAddress *string
// Specifies whether the input device has been configured (outside of MediaLive)
// to use a dynamic IP address assignment (DHCP) or a static IP address.
IpScheme InputDeviceIpScheme
// The subnet mask of the input device.
SubnetMask *string
noSmithyDocumentSerde
}
// Settings for an input device.
type InputDeviceRequest struct {
// The unique ID for the device.
Id *string
noSmithyDocumentSerde
}
// Settings for an input device.
type InputDeviceSettings struct {
// The unique ID for the device.
Id *string
noSmithyDocumentSerde
}
// Details of the input device.
type InputDeviceSummary struct {
// The unique ARN of the input device.
Arn *string
// The Availability Zone associated with this input device.
AvailabilityZone *string
// The state of the connection between the input device and AWS.
ConnectionState InputDeviceConnectionState
// The status of the action to synchronize the device configuration. If you change
// the configuration of the input device (for example, the maximum bitrate),
// MediaLive sends the new data to the device. The device might not update itself
// immediately. SYNCED means the device has updated its configuration. SYNCING
// means that it has not updated its configuration.
DeviceSettingsSyncState DeviceSettingsSyncState
// The status of software on the input device.
DeviceUpdateStatus DeviceUpdateStatus
// Settings that describe an input device that is type HD.
HdDeviceSettings *InputDeviceHdSettings
// The unique ID of the input device.
Id *string
// The network MAC address of the input device.
MacAddress *string
// An array of the ARNs for the MediaLive inputs attached to the device. Returned
// only if the outputType is MEDIALIVE_INPUT.
MedialiveInputArns []string
// A name that you specify for the input device.
Name *string
// Network settings for the input device.
NetworkSettings *InputDeviceNetworkSettings
// The output attachment type of the input device. Specifies MEDIACONNECT_FLOW if
// this device is the source for a MediaConnect flow. Specifies MEDIALIVE_INPUT if
// this device is the source for a MediaLive input.
OutputType InputDeviceOutputType
// The unique serial number of the input device.
SerialNumber *string
// A collection of key-value pairs.
Tags map[string]string
// The type of the input device.
Type InputDeviceType
// Settings that describe an input device that is type UHD.
UhdDeviceSettings *InputDeviceUhdSettings
noSmithyDocumentSerde
}
// One audio configuration that specifies the format for one audio pair that the
// device produces as output.
type InputDeviceUhdAudioChannelPairConfig struct {
// The ID for one audio pair configuration, a value from 1 to 8.
Id *int32
// The profile for one audio pair configuration. This property describes one audio
// configuration in the format (rate control algorithm)-(codec)_(quality)-(bitrate
// in bytes). For example, CBR-AAC_HQ-192000. Or DISABLED, in which case the device
// won't produce audio for this pair.
Profile InputDeviceUhdAudioChannelPairProfile
noSmithyDocumentSerde
}
// Settings that describe the active source from the input device, and the video
// characteristics of that source.
type InputDeviceUhdSettings struct {
// If you specified Auto as the configured input, specifies which of the sources
// is currently active (SDI or HDMI).
ActiveInput InputDeviceActiveInput
// An array of eight audio configurations, one for each audio pair in the source.
// Each audio configuration specifies either to exclude the pair, or to format it
// and include it in the output from the UHD device. Applies only when the device
// is configured as the source for a MediaConnect flow.
AudioChannelPairs []InputDeviceUhdAudioChannelPairConfig
// The codec for the video that the device produces.
Codec InputDeviceCodec
// The source at the input device that is currently active. You can specify this
// source.
ConfiguredInput InputDeviceConfiguredInput
// The state of the input device.
DeviceState InputDeviceState
// The frame rate of the video source.
Framerate *float64
// The height of the video source, in pixels.
Height *int32
// The Link device's buffer size (latency) in milliseconds (ms). You can specify
// this value.
LatencyMs *int32
// The current maximum bitrate for ingesting this source, in bits per second. You
// can specify this maximum.
MaxBitrate *int32
// Information about the MediaConnect flow attached to the device. Returned only
// if the outputType is MEDIACONNECT_FLOW.
MediaconnectSettings *InputDeviceMediaConnectSettings
// The scan type of the video source.
ScanType InputDeviceScanType
// The width of the video source, in pixels.
Width *int32
noSmithyDocumentSerde
}
// Input Location
type InputLocation struct {
// Uniform Resource Identifier - This should be a path to a file accessible to the
// Live system (eg. a http:// URI) depending on the output type. For example, a
// RTMP destination should have a uri simliar to: "rtmp://fmsserver/live".
//
// This member is required.
Uri *string
// key used to extract the password from EC2 Parameter store
PasswordParam *string
// Documentation update needed
Username *string
noSmithyDocumentSerde
}
// Input Loss Behavior
type InputLossBehavior struct {
// Documentation update needed
BlackFrameMsec *int32
// When input loss image type is "color" this field specifies the color to use.
// Value: 6 hex characters representing the values of RGB.
InputLossImageColor *string
// When input loss image type is "slate" these fields specify the parameters for
// accessing the slate.
InputLossImageSlate *InputLocation
// Indicates whether to substitute a solid color or a slate into the output after
// input loss exceeds blackFrameMsec.
InputLossImageType InputLossImageType
// Documentation update needed
RepeatFrameMsec *int32
noSmithyDocumentSerde
}
// MediaLive will perform a failover if content is not detected in this input for
// the specified period.
type InputLossFailoverSettings struct {
// The amount of time (in milliseconds) that no input is detected. After that
// time, an input failover will occur.
InputLossThresholdMsec *int32
noSmithyDocumentSerde
}
// Action to prepare an input for a future immediate input switch.
type InputPrepareScheduleActionSettings struct {
// The name of the input attachment that should be prepared by this action. If no
// name is provided, the action will stop the most recent prepare (if any) when
// activated.
InputAttachmentNameReference *string
// Settings to let you create a clip of the file input, in order to set up the
// input to ingest only a portion of the file.
InputClippingSettings *InputClippingSettings
// The value for the variable portion of the URL for the dynamic input, for this
// instance of the input. Each time you use the same dynamic input in an input
// switch action, you can provide a different value, in order to connect the input
// to a different content source.
UrlPath []string
noSmithyDocumentSerde
}
// An Input Security Group
type InputSecurityGroup struct {
// Unique ARN of Input Security Group
Arn *string
// The Id of the Input Security Group
Id *string
// The list of inputs currently using this Input Security Group.
Inputs []string
// The current state of the Input Security Group.
State InputSecurityGroupState
// A collection of key-value pairs.
Tags map[string]string
// Whitelist rules and their sync status
WhitelistRules []InputWhitelistRule
noSmithyDocumentSerde
}
// Live Event input parameters. There can be multiple inputs in a single Live
// Event.
type InputSettings struct {
// Used to select the audio stream to decode for inputs that have multiple
// available.
AudioSelectors []AudioSelector
// Used to select the caption input to use for inputs that have multiple available.
CaptionSelectors []CaptionSelector
// Enable or disable the deblock filter when filtering.
DeblockFilter InputDeblockFilter
// Enable or disable the denoise filter when filtering.
DenoiseFilter InputDenoiseFilter
// Adjusts the magnitude of filtering from 1 (minimal) to 5 (strongest).
FilterStrength *int32
// Turns on the filter for this input. MPEG-2 inputs have the deblocking filter
// enabled by default.
// - auto - filtering will be applied depending on input type/quality
// - disabled - no filtering will be applied to the input
// - forced - filtering will be applied regardless of input type
InputFilter InputFilter
// Input settings.
NetworkInputSettings *NetworkInputSettings
// PID from which to read SCTE-35 messages. If left undefined, EML will select the
// first SCTE-35 PID found in the input.
Scte35Pid *int32
// Specifies whether to extract applicable ancillary data from a SMPTE-2038 source
// in this input. Applicable data types are captions, timecode, AFD, and SCTE-104
// messages.
// - PREFER: Extract from SMPTE-2038 if present in this input, otherwise extract
// from another source (if any).
// - IGNORE: Never extract any ancillary data from SMPTE-2038.
Smpte2038DataPreference Smpte2038DataPreference
// Loop input if it is a file. This allows a file input to be streamed
// indefinitely.
SourceEndBehavior InputSourceEndBehavior
// Informs which video elementary stream to decode for input types that have
// multiple available.
VideoSelector *VideoSelector
noSmithyDocumentSerde
}
// The settings for a PULL type input.
type InputSource struct {
// The key used to extract the password from EC2 Parameter store.
PasswordParam *string
// This represents the customer's source URL where stream is pulled from.
Url *string
// The username for the input source.
Username *string
noSmithyDocumentSerde
}
// Settings for for a PULL type input.
type InputSourceRequest struct {
// The key used to extract the password from EC2 Parameter store.
PasswordParam *string
// This represents the customer's source URL where stream is pulled from.
Url *string
// The username for the input source.
Username *string
noSmithyDocumentSerde
}
// Placeholder documentation for InputSpecification
type InputSpecification struct {
// Input codec
Codec InputCodec
// Maximum input bitrate, categorized coarsely
MaximumBitrate InputMaximumBitrate
// Input resolution, categorized coarsely
Resolution InputResolution
noSmithyDocumentSerde
}
// Settings for the "switch input" action: to switch from ingesting one input to
// ingesting another input.
type InputSwitchScheduleActionSettings struct {
// The name of the input attachment (not the name of the input!) to switch to. The
// name is specified in the channel configuration.
//
// This member is required.
InputAttachmentNameReference *string
// Settings to let you create a clip of the file input, in order to set up the
// input to ingest only a portion of the file.
InputClippingSettings *InputClippingSettings
// The value for the variable portion of the URL for the dynamic input, for this
// instance of the input. Each time you use the same dynamic input in an input
// switch action, you can provide a different value, in order to connect the input
// to a different content source.
UrlPath []string
noSmithyDocumentSerde
}
// Settings for a private VPC Input. When this property is specified, the input
// destination addresses will be created in a VPC rather than with public Internet
// addresses. This property requires setting the roleArn property on Input
// creation. Not compatible with the inputSecurityGroups property.
type InputVpcRequest struct {
// A list of 2 VPC subnet IDs from the same VPC. Subnet IDs must be mapped to two
// unique availability zones (AZ).
//
// This member is required.
SubnetIds []string
// A list of up to 5 EC2 VPC security group IDs to attach to the Input VPC network
// interfaces. Requires subnetIds. If none are specified then the VPC default
// security group will be used.
SecurityGroupIds []string
noSmithyDocumentSerde
}
// Whitelist rule
type InputWhitelistRule struct {
// The IPv4 CIDR that's whitelisted.
Cidr *string
noSmithyDocumentSerde
}
// An IPv4 CIDR to whitelist.
type InputWhitelistRuleCidr struct {
// The IPv4 CIDR to whitelist.
Cidr *string
noSmithyDocumentSerde
}
// Key Provider Settings
type KeyProviderSettings struct {
// Static Key Settings
StaticKeySettings *StaticKeySettings
noSmithyDocumentSerde
}
// M2ts Settings
type M2tsSettings struct {
// When set to drop, output audio streams will be removed from the program if the
// selected input audio stream is removed from the input. This allows the output
// audio configuration to dynamically change based on input configuration. If this
// is set to encodeSilence, all output audio streams will output encoded silence
// when not connected to an active input stream.
AbsentInputAudioBehavior M2tsAbsentInputAudioBehavior
// When set to enabled, uses ARIB-compliant field muxing and removes video
// descriptor.
Arib M2tsArib
// Packet Identifier (PID) for ARIB Captions in the transport stream. Can be
// entered as a decimal or hexadecimal value. Valid values are 32 (or 0x20)..8182
// (or 0x1ff6).
AribCaptionsPid *string
// If set to auto, pid number used for ARIB Captions will be auto-selected from
// unused pids. If set to useConfigured, ARIB Captions will be on the configured
// pid number.
AribCaptionsPidControl M2tsAribCaptionsPidControl
// When set to dvb, uses DVB buffer model for Dolby Digital audio. When set to
// atsc, the ATSC model is used.
AudioBufferModel M2tsAudioBufferModel
// The number of audio frames to insert for each PES packet.
AudioFramesPerPes *int32
// Packet Identifier (PID) of the elementary audio stream(s) in the transport
// stream. Multiple values are accepted, and can be entered in ranges and/or by
// comma separation. Can be entered as decimal or hexadecimal values. Each PID
// specified must be in the range of 32 (or 0x20)..8182 (or 0x1ff6).
AudioPids *string
// When set to atsc, uses stream type = 0x81 for AC3 and stream type = 0x87 for
// EAC3. When set to dvb, uses stream type = 0x06.
AudioStreamType M2tsAudioStreamType
// The output bitrate of the transport stream in bits per second. Setting to 0
// lets the muxer automatically determine the appropriate bitrate.
Bitrate *int32
// Controls the timing accuracy for output network traffic. Leave as MULTIPLEX to
// ensure accurate network packet timing. Or set to NONE, which might result in
// lower latency but will result in more variability in output network packet
// timing. This variability might cause interruptions, jitter, or bursty behavior
// in your playback or receiving devices.
BufferModel M2tsBufferModel
// When set to enabled, generates captionServiceDescriptor in PMT.
CcDescriptor M2tsCcDescriptor
// Inserts DVB Network Information Table (NIT) at the specified table repetition
// interval.
DvbNitSettings *DvbNitSettings
// Inserts DVB Service Description Table (SDT) at the specified table repetition
// interval.
DvbSdtSettings *DvbSdtSettings
// Packet Identifier (PID) for input source DVB Subtitle data to this output.
// Multiple values are accepted, and can be entered in ranges and/or by comma
// separation. Can be entered as decimal or hexadecimal values. Each PID specified
// must be in the range of 32 (or 0x20)..8182 (or 0x1ff6).
DvbSubPids *string
// Inserts DVB Time and Date Table (TDT) at the specified table repetition
// interval.
DvbTdtSettings *DvbTdtSettings
// Packet Identifier (PID) for input source DVB Teletext data to this output. Can
// be entered as a decimal or hexadecimal value. Valid values are 32 (or
// 0x20)..8182 (or 0x1ff6).
DvbTeletextPid *string
// If set to passthrough, passes any EBIF data from the input source to this
// output.
Ebif M2tsEbifControl
// When videoAndFixedIntervals is selected, audio EBP markers will be added to
// partitions 3 and 4. The interval between these additional markers will be fixed,
// and will be slightly shorter than the video EBP marker interval. Only available
// when EBP Cablelabs segmentation markers are selected. Partitions 1 and 2 will
// always follow the video interval.
EbpAudioInterval M2tsAudioInterval
// When set, enforces that Encoder Boundary Points do not come within the
// specified time interval of each other by looking ahead at input video. If
// another EBP is going to come in within the specified time interval, the current
// EBP is not emitted, and the segment is "stretched" to the next marker. The
// lookahead value does not add latency to the system. The Live Event must be
// configured elsewhere to create sufficient latency to make the lookahead
// accurate.
EbpLookaheadMs *int32
// Controls placement of EBP on Audio PIDs. If set to videoAndAudioPids, EBP
// markers will be placed on the video PID and all audio PIDs. If set to videoPid,
// EBP markers will be placed on only the video PID.
EbpPlacement M2tsEbpPlacement
// This field is unused and deprecated.
EcmPid *string
// Include or exclude the ES Rate field in the PES header.
EsRateInPes M2tsEsRateInPes
// Packet Identifier (PID) for input source ETV Platform data to this output. Can
// be entered as a decimal or hexadecimal value. Valid values are 32 (or
// 0x20)..8182 (or 0x1ff6).
EtvPlatformPid *string
// Packet Identifier (PID) for input source ETV Signal data to this output. Can be
// entered as a decimal or hexadecimal value. Valid values are 32 (or 0x20)..8182
// (or 0x1ff6).
EtvSignalPid *string
// The length in seconds of each fragment. Only used with EBP markers.
FragmentTime *float64
// If set to passthrough, passes any KLV data from the input source to this output.
Klv M2tsKlv
// Packet Identifier (PID) for input source KLV data to this output. Multiple
// values are accepted, and can be entered in ranges and/or by comma separation.
// Can be entered as decimal or hexadecimal values. Each PID specified must be in
// the range of 32 (or 0x20)..8182 (or 0x1ff6).
KlvDataPids *string
// If set to passthrough, Nielsen inaudible tones for media tracking will be
// detected in the input audio and an equivalent ID3 tag will be inserted in the
// output.
NielsenId3Behavior M2tsNielsenId3Behavior
// Value in bits per second of extra null packets to insert into the transport
// stream. This can be used if a downstream encryption system requires periodic
// null packets.
NullPacketBitrate *float64
// The number of milliseconds between instances of this table in the output
// transport stream. Valid values are 0, 10..1000.
PatInterval *int32
// When set to pcrEveryPesPacket, a Program Clock Reference value is inserted for
// every Packetized Elementary Stream (PES) header. This parameter is effective
// only when the PCR PID is the same as the video or audio elementary stream.
PcrControl M2tsPcrControl
// Maximum time in milliseconds between Program Clock Reference (PCRs) inserted
// into the transport stream.
PcrPeriod *int32
// Packet Identifier (PID) of the Program Clock Reference (PCR) in the transport
// stream. When no value is given, the encoder will assign the same value as the
// Video PID. Can be entered as a decimal or hexadecimal value. Valid values are 32
// (or 0x20)..8182 (or 0x1ff6).
PcrPid *string
// The number of milliseconds between instances of this table in the output
// transport stream. Valid values are 0, 10..1000.
PmtInterval *int32
// Packet Identifier (PID) for the Program Map Table (PMT) in the transport
// stream. Can be entered as a decimal or hexadecimal value. Valid values are 32
// (or 0x20)..8182 (or 0x1ff6).
PmtPid *string
// The value of the program number field in the Program Map Table.
ProgramNum *int32
// When vbr, does not insert null packets into transport stream to fill specified
// bitrate. The bitrate setting acts as the maximum bitrate when vbr is set.
RateMode M2tsRateMode
// Packet Identifier (PID) for input source SCTE-27 data to this output. Multiple
// values are accepted, and can be entered in ranges and/or by comma separation.
// Can be entered as decimal or hexadecimal values. Each PID specified must be in
// the range of 32 (or 0x20)..8182 (or 0x1ff6).
Scte27Pids *string
// Optionally pass SCTE-35 signals from the input source to this output.
Scte35Control M2tsScte35Control
// Packet Identifier (PID) of the SCTE-35 stream in the transport stream. Can be
// entered as a decimal or hexadecimal value. Valid values are 32 (or 0x20)..8182
// (or 0x1ff6).
Scte35Pid *string
// Defines the amount SCTE-35 preroll will be increased (in milliseconds) on the
// output. Preroll is the amount of time between the presence of a SCTE-35
// indication in a transport stream and the PTS of the video frame it references.
// Zero means don't add pullup (it doesn't mean set the preroll to zero). Negative
// pullup is not supported, which means that you can't make the preroll shorter. Be
// aware that latency in the output will increase by the pullup amount.
Scte35PrerollPullupMilliseconds *float64
// Inserts segmentation markers at each segmentationTime period. raiSegstart sets
// the Random Access Indicator bit in the adaptation field. raiAdapt sets the RAI
// bit and adds the current timecode in the private data bytes. psiSegstart inserts
// PAT and PMT tables at the start of segments. ebp adds Encoder Boundary Point
// information to the adaptation field as per OpenCable specification
// OC-SP-EBP-I01-130118. ebpLegacy adds Encoder Boundary Point information to the
// adaptation field using a legacy proprietary format.
SegmentationMarkers M2tsSegmentationMarkers
// The segmentation style parameter controls how segmentation markers are inserted
// into the transport stream. With avails, it is possible that segments may be
// truncated, which can influence where future segmentation markers are inserted.
// When a segmentation style of "resetCadence" is selected and a segment is
// truncated due to an avail, we will reset the segmentation cadence. This means
// the subsequent segment will have a duration of $segmentationTime seconds. When
// a segmentation style of "maintainCadence" is selected and a segment is truncated
// due to an avail, we will not reset the segmentation cadence. This means the
// subsequent segment will likely be truncated as well. However, all segments after
// that will have a duration of $segmentationTime seconds. Note that EBP lookahead
// is a slight exception to this rule.
SegmentationStyle M2tsSegmentationStyle
// The length in seconds of each segment. Required unless markers is set to none.
SegmentationTime *float64
// When set to passthrough, timed metadata will be passed through from input to
// output.
TimedMetadataBehavior M2tsTimedMetadataBehavior
// Packet Identifier (PID) of the timed metadata stream in the transport stream.
// Can be entered as a decimal or hexadecimal value. Valid values are 32 (or
// 0x20)..8182 (or 0x1ff6).
TimedMetadataPid *string
// The value of the transport stream ID field in the Program Map Table.
TransportStreamId *int32
// Packet Identifier (PID) of the elementary video stream in the transport stream.
// Can be entered as a decimal or hexadecimal value. Valid values are 32 (or
// 0x20)..8182 (or 0x1ff6).
VideoPid *string
noSmithyDocumentSerde
}
// Settings information for the .m3u8 container
type M3u8Settings struct {
// The number of audio frames to insert for each PES packet.
AudioFramesPerPes *int32
// Packet Identifier (PID) of the elementary audio stream(s) in the transport
// stream. Multiple values are accepted, and can be entered in ranges and/or by
// comma separation. Can be entered as decimal or hexadecimal values.
AudioPids *string
// This parameter is unused and deprecated.
EcmPid *string
// If set to passthrough, passes any KLV data from the input source to this output.
KlvBehavior M3u8KlvBehavior
// Packet Identifier (PID) for input source KLV data to this output. Multiple
// values are accepted, and can be entered in ranges and/or by comma separation.
// Can be entered as decimal or hexadecimal values. Each PID specified must be in
// the range of 32 (or 0x20)..8182 (or 0x1ff6).
KlvDataPids *string
// If set to passthrough, Nielsen inaudible tones for media tracking will be
// detected in the input audio and an equivalent ID3 tag will be inserted in the
// output.
NielsenId3Behavior M3u8NielsenId3Behavior
// The number of milliseconds between instances of this table in the output
// transport stream. A value of "0" writes out the PMT once per segment file.
PatInterval *int32
// When set to pcrEveryPesPacket, a Program Clock Reference value is inserted for
// every Packetized Elementary Stream (PES) header. This parameter is effective
// only when the PCR PID is the same as the video or audio elementary stream.
PcrControl M3u8PcrControl
// Maximum time in milliseconds between Program Clock References (PCRs) inserted
// into the transport stream.
PcrPeriod *int32
// Packet Identifier (PID) of the Program Clock Reference (PCR) in the transport
// stream. When no value is given, the encoder will assign the same value as the
// Video PID. Can be entered as a decimal or hexadecimal value.
PcrPid *string
// The number of milliseconds between instances of this table in the output
// transport stream. A value of "0" writes out the PMT once per segment file.
PmtInterval *int32
// Packet Identifier (PID) for the Program Map Table (PMT) in the transport
// stream. Can be entered as a decimal or hexadecimal value.
PmtPid *string
// The value of the program number field in the Program Map Table.
ProgramNum *int32
// If set to passthrough, passes any SCTE-35 signals from the input source to this
// output.
Scte35Behavior M3u8Scte35Behavior
// Packet Identifier (PID) of the SCTE-35 stream in the transport stream. Can be
// entered as a decimal or hexadecimal value.
Scte35Pid *string
// When set to passthrough, timed metadata is passed through from input to output.
TimedMetadataBehavior M3u8TimedMetadataBehavior
// Packet Identifier (PID) of the timed metadata stream in the transport stream.
// Can be entered as a decimal or hexadecimal value. Valid values are 32 (or
// 0x20)..8182 (or 0x1ff6).
TimedMetadataPid *string
// The value of the transport stream ID field in the Program Map Table.
TransportStreamId *int32
// Packet Identifier (PID) of the elementary video stream in the transport stream.
// Can be entered as a decimal or hexadecimal value.
VideoPid *string
noSmithyDocumentSerde
}
// Placeholder documentation for MaintenanceCreateSettings
type MaintenanceCreateSettings struct {
// Choose one day of the week for maintenance. The chosen day is used for all
// future maintenance windows.
MaintenanceDay MaintenanceDay
// Choose the hour that maintenance will start. The chosen time is used for all
// future maintenance windows.
MaintenanceStartTime *string
noSmithyDocumentSerde
}
// Placeholder documentation for MaintenanceStatus
type MaintenanceStatus struct {
// The currently selected maintenance day.
MaintenanceDay MaintenanceDay
// Maintenance is required by the displayed date and time. Date and time is in ISO.
MaintenanceDeadline *string
// The currently scheduled maintenance date and time. Date and time is in ISO.
MaintenanceScheduledDate *string
// The currently selected maintenance start time. Time is in UTC.
MaintenanceStartTime *string
noSmithyDocumentSerde
}
// Placeholder documentation for MaintenanceUpdateSettings
type MaintenanceUpdateSettings struct {
// Choose one day of the week for maintenance. The chosen day is used for all
// future maintenance windows.
MaintenanceDay MaintenanceDay
// Choose a specific date for maintenance to occur. The chosen date is used for
// the next maintenance window only.
MaintenanceScheduledDate *string
// Choose the hour that maintenance will start. The chosen time is used for all
// future maintenance windows.
MaintenanceStartTime *string
noSmithyDocumentSerde
}
// The settings for a MediaConnect Flow.
type MediaConnectFlow struct {
// The unique ARN of the MediaConnect Flow being used as a source.
FlowArn *string
noSmithyDocumentSerde
}
// The settings for a MediaConnect Flow.
type MediaConnectFlowRequest struct {
// The ARN of the MediaConnect Flow that you want to use as a source.
FlowArn *string
noSmithyDocumentSerde
}
// Media Package Group Settings
type MediaPackageGroupSettings struct {
// MediaPackage channel destination.
//
// This member is required.
Destination *OutputLocationRef
noSmithyDocumentSerde
}
// MediaPackage Output Destination Settings
type MediaPackageOutputDestinationSettings struct {
// ID of the channel in MediaPackage that is the destination for this output
// group. You do not need to specify the individual inputs in MediaPackage;
// MediaLive will handle the connection of the two MediaLive pipelines to the two
// MediaPackage inputs. The MediaPackage channel and MediaLive channel must be in
// the same region.
ChannelId *string
noSmithyDocumentSerde
}
// Media Package Output Settings
type MediaPackageOutputSettings struct {
noSmithyDocumentSerde
}
// Settings to specify the rendering of motion graphics into the video stream.
type MotionGraphicsActivateScheduleActionSettings struct {
// Duration (in milliseconds) that motion graphics should render on to the video
// stream. Leaving out this property or setting to 0 will result in rendering
// continuing until a deactivate action is processed.
Duration *int64
// Key used to extract the password from EC2 Parameter store
PasswordParam *string
// URI of the HTML5 content to be rendered into the live stream.
Url *string
// Documentation update needed
Username *string
noSmithyDocumentSerde
}
// Motion Graphics Configuration
type MotionGraphicsConfiguration struct {
// Motion Graphics Settings
//
// This member is required.
MotionGraphicsSettings *MotionGraphicsSettings
// Motion Graphics Insertion
MotionGraphicsInsertion MotionGraphicsInsertion
noSmithyDocumentSerde
}
// Settings to specify the ending of rendering motion graphics into the video
// stream.
type MotionGraphicsDeactivateScheduleActionSettings struct {
noSmithyDocumentSerde
}
// Motion Graphics Settings
type MotionGraphicsSettings struct {
// Html Motion Graphics Settings
HtmlMotionGraphicsSettings *HtmlMotionGraphicsSettings
noSmithyDocumentSerde
}
// Mp2 Settings
type Mp2Settings struct {
// Average bitrate in bits/second.
Bitrate *float64
// The MPEG2 Audio coding mode. Valid values are codingMode10 (for mono) or
// codingMode20 (for stereo).
CodingMode Mp2CodingMode
// Sample rate in Hz.
SampleRate *float64
noSmithyDocumentSerde
}
// Mpeg2 Filter Settings
type Mpeg2FilterSettings struct {
// Temporal Filter Settings
TemporalFilterSettings *TemporalFilterSettings
noSmithyDocumentSerde
}
// Mpeg2 Settings
type Mpeg2Settings struct {
// description": "The framerate denominator. For example, 1001. The framerate is
// the numerator divided by the denominator. For example, 24000 / 1001 = 23.976
// FPS.
//
// This member is required.
FramerateDenominator *int32
// The framerate numerator. For example, 24000. The framerate is the numerator
// divided by the denominator. For example, 24000 / 1001 = 23.976 FPS.
//
// This member is required.
FramerateNumerator *int32
// Choose Off to disable adaptive quantization. Or choose another value to enable
// the quantizer and set its strength. The strengths are: Auto, Off, Low, Medium,
// High. When you enable this field, MediaLive allows intra-frame quantizers to
// vary, which might improve visual quality.
AdaptiveQuantization Mpeg2AdaptiveQuantization
// Indicates the AFD values that MediaLive will write into the video encode. If
// you do not know what AFD signaling is, or if your downstream system has not
// given you guidance, choose AUTO. AUTO: MediaLive will try to preserve the input
// AFD value (in cases where multiple AFD values are valid). FIXED: MediaLive will
// use the value you specify in fixedAFD.
AfdSignaling AfdSignaling
// Specifies whether to include the color space metadata. The metadata describes
// the color space that applies to the video (the colorSpace field). We recommend
// that you insert the metadata.
ColorMetadata Mpeg2ColorMetadata
// Choose the type of color space conversion to apply to the output. For detailed
// information on setting up both the input and the output to obtain the desired
// color space in the output, see the section on "MediaLive Features - Video -
// color space" in the MediaLive User Guide. PASSTHROUGH: Keep the color space of
// the input content - do not convert it. AUTO:Convert all content that is SD to
// rec 601, and convert all content that is HD to rec 709.
ColorSpace Mpeg2ColorSpace
// Sets the pixel aspect ratio for the encode.
DisplayAspectRatio Mpeg2DisplayRatio
// Optionally specify a noise reduction filter, which can improve quality of
// compressed content. If you do not choose a filter, no filter will be applied.
// TEMPORAL: This filter is useful for both source content that is noisy (when it
// has excessive digital artifacts) and source content that is clean. When the
// content is noisy, the filter cleans up the source content before the encoding
// phase, with these two effects: First, it improves the output video quality
// because the content has been cleaned up. Secondly, it decreases the bandwidth
// because MediaLive does not waste bits on encoding noise. When the content is
// reasonably clean, the filter tends to decrease the bitrate.
FilterSettings *Mpeg2FilterSettings
// Complete this field only when afdSignaling is set to FIXED. Enter the AFD value
// (4 bits) to write on all frames of the video encode.
FixedAfd FixedAfd
// MPEG2: default is open GOP.
GopClosedCadence *int32
// Relates to the GOP structure. The number of B-frames between reference frames.
// If you do not know what a B-frame is, use the default.
GopNumBFrames *int32
// Relates to the GOP structure. The GOP size (keyframe interval) in the units
// specified in gopSizeUnits. If you do not know what GOP is, use the default. If
// gopSizeUnits is frames, then the gopSize must be an integer and must be greater
// than or equal to 1. If gopSizeUnits is seconds, the gopSize must be greater than
// 0, but does not need to be an integer.
GopSize *float64
// Relates to the GOP structure. Specifies whether the gopSize is specified in
// frames or seconds. If you do not plan to change the default gopSize, leave the
// default. If you specify SECONDS, MediaLive will internally convert the gop size
// to a frame count.
GopSizeUnits Mpeg2GopSizeUnits
// Set the scan type of the output to PROGRESSIVE or INTERLACED (top field first).
ScanType Mpeg2ScanType
// Relates to the GOP structure. If you do not know what GOP is, use the default.
// FIXED: Set the number of B-frames in each sub-GOP to the value in gopNumBFrames.
// DYNAMIC: Let MediaLive optimize the number of B-frames in each sub-GOP, to
// improve visual quality.
SubgopLength Mpeg2SubGopLength
// Timecode burn-in settings
TimecodeBurninSettings *TimecodeBurninSettings
// Determines how MediaLive inserts timecodes in the output video. For detailed
// information about setting up the input and the output for a timecode, see the
// section on "MediaLive Features - Timecode configuration" in the MediaLive User
// Guide. DISABLED: do not include timecodes. GOP_TIMECODE: Include timecode
// metadata in the GOP header.
TimecodeInsertion Mpeg2TimecodeInsertionBehavior
noSmithyDocumentSerde
}
// Ms Smooth Group Settings
type MsSmoothGroupSettings struct {
// Smooth Streaming publish point on an IIS server. Elemental Live acts as a
// "Push" encoder to IIS.
//
// This member is required.
Destination *OutputLocationRef
// The ID to include in each message in the sparse track. Ignored if
// sparseTrackType is NONE.
AcquisitionPointId *string
// If set to passthrough for an audio-only MS Smooth output, the fragment absolute
// time will be set to the current timecode. This option does not write timecodes
// to the audio elementary stream.
AudioOnlyTimecodeControl SmoothGroupAudioOnlyTimecodeControl
// If set to verifyAuthenticity, verify the https certificate chain to a trusted
// Certificate Authority (CA). This will cause https outputs to self-signed
// certificates to fail.
CertificateMode SmoothGroupCertificateMode
// Number of seconds to wait before retrying connection to the IIS server if the
// connection is lost. Content will be cached during this time and the cache will
// be be delivered to the IIS server once the connection is re-established.
ConnectionRetryInterval *int32
// MS Smooth event ID to be sent to the IIS server. Should only be specified if
// eventIdMode is set to useConfigured.
EventId *string
// Specifies whether or not to send an event ID to the IIS server. If no event ID
// is sent and the same Live Event is used without changing the publishing point,
// clients might see cached video from the previous run. Options:
// - "useConfigured" - use the value provided in eventId
// - "useTimestamp" - generate and send an event ID based on the current
// timestamp
// - "noEventId" - do not send an event ID to the IIS server.
EventIdMode SmoothGroupEventIdMode
// When set to sendEos, send EOS signal to IIS server when stopping the event
EventStopBehavior SmoothGroupEventStopBehavior
// Size in seconds of file cache for streaming outputs.
FilecacheDuration *int32
// Length of mp4 fragments to generate (in seconds). Fragment length must be
// compatible with GOP size and framerate.
FragmentLength *int32
// Parameter that control output group behavior on input loss.
InputLossAction InputLossActionForMsSmoothOut
// Number of retry attempts.
NumRetries *int32
// Number of seconds before initiating a restart due to output failure, due to
// exhausting the numRetries on one segment, or exceeding filecacheDuration.
RestartDelay *int32
// useInputSegmentation has been deprecated. The configured segment size is always
// used.
SegmentationMode SmoothGroupSegmentationMode
// Number of milliseconds to delay the output from the second pipeline.
SendDelayMs *int32
// Identifies the type of data to place in the sparse track:
// - SCTE35: Insert SCTE-35 messages from the source content. With each message,
// insert an IDR frame to start a new segment.
// - SCTE35_WITHOUT_SEGMENTATION: Insert SCTE-35 messages from the source
// content. With each message, insert an IDR frame but don't start a new segment.
// - NONE: Don't generate a sparse track for any outputs in this output group.
SparseTrackType SmoothGroupSparseTrackType
// When set to send, send stream manifest so publishing point doesn't start until
// all streams start.
StreamManifestBehavior SmoothGroupStreamManifestBehavior
// Timestamp offset for the event. Only used if timestampOffsetMode is set to
// useConfiguredOffset.
TimestampOffset *string
// Type of timestamp date offset to use.
// - useEventStartDate: Use the date the event was started as the offset
// - useConfiguredOffset: Use an explicitly configured date as the offset
TimestampOffsetMode SmoothGroupTimestampOffsetMode
noSmithyDocumentSerde
}
// Ms Smooth Output Settings
type MsSmoothOutputSettings struct {
// Only applicable when this output is referencing an H.265 video description.
// Specifies whether MP4 segments should be packaged as HEV1 or HVC1.
H265PackagingType MsSmoothH265PackagingType
// String concatenated to the end of the destination filename. Required for
// multiple outputs of the same type.
NameModifier *string
noSmithyDocumentSerde
}
// The multiplex object.
type Multiplex struct {
// The unique arn of the multiplex.
Arn *string
// A list of availability zones for the multiplex.
AvailabilityZones []string
// A list of the multiplex output destinations.
Destinations []MultiplexOutputDestination
// The unique id of the multiplex.
Id *string
// Configuration for a multiplex event.
MultiplexSettings *MultiplexSettings
// The name of the multiplex.
Name *string
// The number of currently healthy pipelines.
PipelinesRunningCount *int32
// The number of programs in the multiplex.
ProgramCount *int32
// The current state of the multiplex.
State MultiplexState
// A collection of key-value pairs.
Tags map[string]string
noSmithyDocumentSerde
}
// Multiplex Group Settings
type MultiplexGroupSettings struct {
noSmithyDocumentSerde
}
// Multiplex MediaConnect output destination settings.
type MultiplexMediaConnectOutputDestinationSettings struct {
// The MediaConnect entitlement ARN available as a Flow source.
EntitlementArn *string
noSmithyDocumentSerde
}
// Multiplex output destination settings
type MultiplexOutputDestination struct {
// Multiplex MediaConnect output destination settings.
MediaConnectSettings *MultiplexMediaConnectOutputDestinationSettings
noSmithyDocumentSerde
}
// Multiplex Output Settings
type MultiplexOutputSettings struct {
// Destination is a Multiplex.
//
// This member is required.
Destination *OutputLocationRef
noSmithyDocumentSerde
}
// The multiplex program object.
type MultiplexProgram struct {
// The MediaLive channel associated with the program.
ChannelId *string
// The settings for this multiplex program.
MultiplexProgramSettings *MultiplexProgramSettings
// The packet identifier map for this multiplex program.
PacketIdentifiersMap *MultiplexProgramPacketIdentifiersMap
// Contains information about the current sources for the specified program in the
// specified multiplex. Keep in mind that each multiplex pipeline connects to both
// pipelines in a given source channel (the channel identified by the program). But
// only one of those channel pipelines is ever active at one time.
PipelineDetails []MultiplexProgramPipelineDetail
// The name of the multiplex program.
ProgramName *string
noSmithyDocumentSerde
}
// Multiplex Program Input Destination Settings for outputting a Channel to a
// Multiplex
type MultiplexProgramChannelDestinationSettings struct {
// The ID of the Multiplex that the encoder is providing output to. You do not
// need to specify the individual inputs to the Multiplex; MediaLive will handle
// the connection of the two MediaLive pipelines to the two Multiplex instances.
// The Multiplex must be in the same region as the Channel.
MultiplexId *string
// The program name of the Multiplex program that the encoder is providing output
// to.
ProgramName *string
noSmithyDocumentSerde
}
// Packet identifiers map for a given Multiplex program.
type MultiplexProgramPacketIdentifiersMap struct {
// Placeholder documentation for __listOf__integer
AudioPids []int32
// Placeholder documentation for __listOf__integer
DvbSubPids []int32
// Placeholder documentation for __integer
DvbTeletextPid *int32
// Placeholder documentation for __integer
EtvPlatformPid *int32
// Placeholder documentation for __integer
EtvSignalPid *int32
// Placeholder documentation for __listOf__integer
KlvDataPids []int32
// Placeholder documentation for __integer
PcrPid *int32
// Placeholder documentation for __integer
PmtPid *int32
// Placeholder documentation for __integer
PrivateMetadataPid *int32
// Placeholder documentation for __listOf__integer
Scte27Pids []int32
// Placeholder documentation for __integer
Scte35Pid *int32
// Placeholder documentation for __integer
TimedMetadataPid *int32
// Placeholder documentation for __integer
VideoPid *int32
noSmithyDocumentSerde
}
// The current source for one of the pipelines in the multiplex.
type MultiplexProgramPipelineDetail struct {
// Identifies the channel pipeline that is currently active for the pipeline
// (identified by PipelineId) in the multiplex.
ActiveChannelPipeline *string
// Identifies a specific pipeline in the multiplex.
PipelineId *string
noSmithyDocumentSerde
}
// Transport stream service descriptor configuration for the Multiplex program.
type MultiplexProgramServiceDescriptor struct {
// Name of the provider.
//
// This member is required.
ProviderName *string
// Name of the service.
//
// This member is required.
ServiceName *string
noSmithyDocumentSerde
}
// Multiplex Program settings configuration.
type MultiplexProgramSettings struct {
// Unique program number.
//
// This member is required.
ProgramNumber *int32
// Indicates which pipeline is preferred by the multiplex for program ingest.
PreferredChannelPipeline PreferredChannelPipeline
// Transport stream service descriptor configuration for the Multiplex program.
ServiceDescriptor *MultiplexProgramServiceDescriptor
// Program video settings configuration.
VideoSettings *MultiplexVideoSettings
noSmithyDocumentSerde
}
// Placeholder documentation for MultiplexProgramSummary
type MultiplexProgramSummary struct {
// The MediaLive Channel associated with the program.
ChannelId *string
// The name of the multiplex program.
ProgramName *string
noSmithyDocumentSerde
}
// Contains configuration for a Multiplex event
type MultiplexSettings struct {
// Transport stream bit rate.
//
// This member is required.
TransportStreamBitrate *int32
// Transport stream ID.
//
// This member is required.
TransportStreamId *int32
// Maximum video buffer delay in milliseconds.
MaximumVideoBufferDelayMilliseconds *int32
// Transport stream reserved bit rate.
TransportStreamReservedBitrate *int32
noSmithyDocumentSerde
}
// Contains summary configuration for a Multiplex event.
type MultiplexSettingsSummary struct {
// Transport stream bit rate.
TransportStreamBitrate *int32
noSmithyDocumentSerde
}
// Statmux rate control settings
type MultiplexStatmuxVideoSettings struct {
// Maximum statmux bitrate.
MaximumBitrate *int32
// Minimum statmux bitrate.
MinimumBitrate *int32
// The purpose of the priority is to use a combination of the\nmultiplex rate
// control algorithm and the QVBR capability of the\nencoder to prioritize the
// video quality of some channels in a\nmultiplex over others. Channels that have a
// higher priority will\nget higher video quality at the expense of the video
// quality of\nother channels in the multiplex with lower priority.
Priority *int32
noSmithyDocumentSerde
}
// Placeholder documentation for MultiplexSummary
type MultiplexSummary struct {
// The unique arn of the multiplex.
Arn *string
// A list of availability zones for the multiplex.
AvailabilityZones []string
// The unique id of the multiplex.
Id *string
// Configuration for a multiplex event.
MultiplexSettings *MultiplexSettingsSummary
// The name of the multiplex.
Name *string
// The number of currently healthy pipelines.
PipelinesRunningCount *int32
// The number of programs in the multiplex.
ProgramCount *int32
// The current state of the multiplex.
State MultiplexState
// A collection of key-value pairs.
Tags map[string]string
noSmithyDocumentSerde
}
// The video configuration for each program in a multiplex.
type MultiplexVideoSettings struct {
// The constant bitrate configuration for the video encode. When this field is
// defined, StatmuxSettings must be undefined.
ConstantBitrate *int32
// Statmux rate control settings. When this field is defined, ConstantBitrate must
// be undefined.
StatmuxSettings *MultiplexStatmuxVideoSettings
noSmithyDocumentSerde
}
// Network source to transcode. Must be accessible to the Elemental Live node that
// is running the live event through a network connection.
type NetworkInputSettings struct {
// Specifies HLS input settings when the uri is for a HLS manifest.
HlsInputSettings *HlsInputSettings
// Check HTTPS server certificates. When set to checkCryptographyOnly,
// cryptography in the certificate will be checked, but not the server's name.
// Certain subdomains (notably S3 buckets that use dots in the bucket name) do not
// strictly match the corresponding certificate's wildcard pattern and would
// otherwise cause the event to error. This setting is ignored for protocols that
// do not use https.
ServerValidation NetworkInputServerValidation
noSmithyDocumentSerde
}
// Nielsen CBET
type NielsenCBET struct {
// Enter the CBET check digits to use in the watermark.
//
// This member is required.
CbetCheckDigitString *string
// Determines the method of CBET insertion mode when prior encoding is detected on
// the same layer.
//
// This member is required.
CbetStepaside NielsenWatermarksCbetStepaside
// Enter the CBET Source ID (CSID) to use in the watermark
//
// This member is required.
Csid *string
noSmithyDocumentSerde
}
// Nielsen Configuration
type NielsenConfiguration struct {
// Enter the Distributor ID assigned to your organization by Nielsen.
DistributorId *string
// Enables Nielsen PCM to ID3 tagging
NielsenPcmToId3Tagging NielsenPcmToId3TaggingState
noSmithyDocumentSerde
}
// Nielsen Naes Ii Nw
type NielsenNaesIiNw struct {
// Enter the check digit string for the watermark
//
// This member is required.
CheckDigitString *string
// Enter the Nielsen Source ID (SID) to include in the watermark
//
// This member is required.
Sid *float64
// Choose the timezone for the time stamps in the watermark. If not provided, the
// timestamps will be in Coordinated Universal Time (UTC)
Timezone NielsenWatermarkTimezones
noSmithyDocumentSerde
}
// Nielsen Watermarks Settings
type NielsenWatermarksSettings struct {
// Complete these fields only if you want to insert watermarks of type Nielsen CBET
NielsenCbetSettings *NielsenCBET
// Choose the distribution types that you want to assign to the watermarks:
// - PROGRAM_CONTENT
// - FINAL_DISTRIBUTOR
NielsenDistributionType NielsenWatermarksDistributionTypes
// Complete these fields only if you want to insert watermarks of type Nielsen
// NAES II (N2) and Nielsen NAES VI (NW).
NielsenNaesIiNwSettings *NielsenNaesIiNw
noSmithyDocumentSerde
}
// Reserved resources available for purchase
type Offering struct {
// Unique offering ARN, e.g.
// 'arn:aws:medialive:us-west-2:123456789012:offering:87654321'
Arn *string
// Currency code for usagePrice and fixedPrice in ISO-4217 format, e.g. 'USD'
CurrencyCode *string
// Lease duration, e.g. '12'
Duration *int32
// Units for duration, e.g. 'MONTHS'
DurationUnits OfferingDurationUnits
// One-time charge for each reserved resource, e.g. '0.0' for a NO_UPFRONT offering
FixedPrice *float64
// Offering description, e.g. 'HD AVC output at 10-20 Mbps, 30 fps, and standard
// VQ in US West (Oregon)'
OfferingDescription *string
// Unique offering ID, e.g. '87654321'
OfferingId *string
// Offering type, e.g. 'NO_UPFRONT'
OfferingType OfferingType
// AWS region, e.g. 'us-west-2'
Region *string
// Resource configuration details
ResourceSpecification *ReservationResourceSpecification
// Recurring usage charge for each reserved resource, e.g. '157.0'
UsagePrice *float64
noSmithyDocumentSerde
}
// Output settings. There can be multiple outputs within a group.
type Output struct {
// Output type-specific settings.
//
// This member is required.
OutputSettings *OutputSettings
// The names of the AudioDescriptions used as audio sources for this output.
AudioDescriptionNames []string
// The names of the CaptionDescriptions used as caption sources for this output.
CaptionDescriptionNames []string
// The name used to identify an output.
OutputName *string
// The name of the VideoDescription used as the source for this output.
VideoDescriptionName *string
noSmithyDocumentSerde
}
// Placeholder documentation for OutputDestination
type OutputDestination struct {
// User-specified id. This is used in an output group or an output.
Id *string
// Destination settings for a MediaPackage output; one destination for both
// encoders.
MediaPackageSettings []MediaPackageOutputDestinationSettings
// Destination settings for a Multiplex output; one destination for both encoders.
MultiplexSettings *MultiplexProgramChannelDestinationSettings
// Destination settings for a standard output; one destination for each redundant
// encoder.
Settings []OutputDestinationSettings
noSmithyDocumentSerde
}
// Placeholder documentation for OutputDestinationSettings
type OutputDestinationSettings struct {
// key used to extract the password from EC2 Parameter store
PasswordParam *string
// Stream name for RTMP destinations (URLs of type rtmp://)
StreamName *string
// A URL specifying a destination
Url *string
// username for destination
Username *string
noSmithyDocumentSerde
}
// Output groups for this Live Event. Output groups contain information about
// where streams should be distributed.
type OutputGroup struct {
// Settings associated with the output group.
//
// This member is required.
OutputGroupSettings *OutputGroupSettings
// Placeholder documentation for __listOfOutput
//
// This member is required.
Outputs []Output
// Custom output group name optionally defined by the user.
Name *string
noSmithyDocumentSerde
}
// Output Group Settings
type OutputGroupSettings struct {
// Archive Group Settings
ArchiveGroupSettings *ArchiveGroupSettings
// Frame Capture Group Settings
FrameCaptureGroupSettings *FrameCaptureGroupSettings
// Hls Group Settings
HlsGroupSettings *HlsGroupSettings
// Media Package Group Settings
MediaPackageGroupSettings *MediaPackageGroupSettings
// Ms Smooth Group Settings
MsSmoothGroupSettings *MsSmoothGroupSettings
// Multiplex Group Settings
MultiplexGroupSettings *MultiplexGroupSettings
// Rtmp Group Settings
RtmpGroupSettings *RtmpGroupSettings
// Udp Group Settings
UdpGroupSettings *UdpGroupSettings
noSmithyDocumentSerde
}
// Reference to an OutputDestination ID defined in the channel
type OutputLocationRef struct {
// Placeholder documentation for __string
DestinationRefId *string
noSmithyDocumentSerde
}
// Output Locking Settings
type OutputLockingSettings struct {
// Epoch Locking Settings
EpochLockingSettings *EpochLockingSettings
// Pipeline Locking Settings
PipelineLockingSettings *PipelineLockingSettings
noSmithyDocumentSerde
}
// Output Settings
type OutputSettings struct {
// Archive Output Settings
ArchiveOutputSettings *ArchiveOutputSettings
// Frame Capture Output Settings
FrameCaptureOutputSettings *FrameCaptureOutputSettings
// Hls Output Settings
HlsOutputSettings *HlsOutputSettings
// Media Package Output Settings
MediaPackageOutputSettings *MediaPackageOutputSettings
// Ms Smooth Output Settings
MsSmoothOutputSettings *MsSmoothOutputSettings
// Multiplex Output Settings
MultiplexOutputSettings *MultiplexOutputSettings
// Rtmp Output Settings
RtmpOutputSettings *RtmpOutputSettings
// Udp Output Settings
UdpOutputSettings *UdpOutputSettings
noSmithyDocumentSerde
}
// Pass Through Settings
type PassThroughSettings struct {
noSmithyDocumentSerde
}
// Settings for the action to set pause state of a channel.
type PauseStateScheduleActionSettings struct {
// Placeholder documentation for __listOfPipelinePauseStateSettings
Pipelines []PipelinePauseStateSettings
noSmithyDocumentSerde
}
// Runtime details of a pipeline when a channel is running.
type PipelineDetail struct {
// The name of the active input attachment currently being ingested by this
// pipeline.
ActiveInputAttachmentName *string
// The name of the input switch schedule action that occurred most recently and
// that resulted in the switch to the current input attachment for this pipeline.
ActiveInputSwitchActionName *string
// The name of the motion graphics activate action that occurred most recently and
// that resulted in the current graphics URI for this pipeline.
ActiveMotionGraphicsActionName *string
// The current URI being used for HTML5 motion graphics for this pipeline.
ActiveMotionGraphicsUri *string
// Pipeline ID
PipelineId *string
noSmithyDocumentSerde
}
// Pipeline Locking Settings
type PipelineLockingSettings struct {
noSmithyDocumentSerde
}
// Settings for pausing a pipeline.
type PipelinePauseStateSettings struct {
// Pipeline ID to pause ("PIPELINE_0" or "PIPELINE_1").
//
// This member is required.
PipelineId PipelineId
noSmithyDocumentSerde
}
// Raw Settings
type RawSettings struct {
noSmithyDocumentSerde
}
// Rec601 Settings
type Rec601Settings struct {
noSmithyDocumentSerde
}
// Rec709 Settings
type Rec709Settings struct {
noSmithyDocumentSerde
}
// Remix Settings
type RemixSettings struct {
// Mapping of input channels to output channels, with appropriate gain adjustments.
//
// This member is required.
ChannelMappings []AudioChannelMapping
// Number of input channels to be used.
ChannelsIn *int32
// Number of output channels to be produced. Valid values: 1, 2, 4, 6, 8
ChannelsOut *int32
noSmithyDocumentSerde
}
// The Renewal settings for Reservations
type RenewalSettings struct {
// Automatic renewal status for the reservation
AutomaticRenewal ReservationAutomaticRenewal
// Count for the reservation renewal
RenewalCount *int32
noSmithyDocumentSerde
}
// Reserved resources available to use
type Reservation struct {
// Unique reservation ARN, e.g.
// 'arn:aws:medialive:us-west-2:123456789012:reservation:1234567'
Arn *string
// Number of reserved resources
Count *int32
// Currency code for usagePrice and fixedPrice in ISO-4217 format, e.g. 'USD'
CurrencyCode *string
// Lease duration, e.g. '12'
Duration *int32
// Units for duration, e.g. 'MONTHS'
DurationUnits OfferingDurationUnits
// Reservation UTC end date and time in ISO-8601 format, e.g. '2019-03-01T00:00:00'
End *string
// One-time charge for each reserved resource, e.g. '0.0' for a NO_UPFRONT offering
FixedPrice *float64
// User specified reservation name
Name *string
// Offering description, e.g. 'HD AVC output at 10-20 Mbps, 30 fps, and standard
// VQ in US West (Oregon)'
OfferingDescription *string
// Unique offering ID, e.g. '87654321'
OfferingId *string
// Offering type, e.g. 'NO_UPFRONT'
OfferingType OfferingType
// AWS region, e.g. 'us-west-2'
Region *string
// Renewal settings for the reservation
RenewalSettings *RenewalSettings
// Unique reservation ID, e.g. '1234567'
ReservationId *string
// Resource configuration details
ResourceSpecification *ReservationResourceSpecification
// Reservation UTC start date and time in ISO-8601 format, e.g.
// '2018-03-01T00:00:00'
Start *string
// Current state of reservation, e.g. 'ACTIVE'
State ReservationState
// A collection of key-value pairs
Tags map[string]string
// Recurring usage charge for each reserved resource, e.g. '157.0'
UsagePrice *float64
noSmithyDocumentSerde
}
// Resource configuration (codec, resolution, bitrate, ...)
type ReservationResourceSpecification struct {
// Channel class, e.g. 'STANDARD'
ChannelClass ChannelClass
// Codec, e.g. 'AVC'
Codec ReservationCodec
// Maximum bitrate, e.g. 'MAX_20_MBPS'
MaximumBitrate ReservationMaximumBitrate
// Maximum framerate, e.g. 'MAX_30_FPS' (Outputs only)
MaximumFramerate ReservationMaximumFramerate
// Resolution, e.g. 'HD'
Resolution ReservationResolution
// Resource type, 'INPUT', 'OUTPUT', 'MULTIPLEX', or 'CHANNEL'
ResourceType ReservationResourceType
// Special feature, e.g. 'AUDIO_NORMALIZATION' (Channels only)
SpecialFeature ReservationSpecialFeature
// Video quality, e.g. 'STANDARD' (Outputs only)
VideoQuality ReservationVideoQuality
noSmithyDocumentSerde
}
// Rtmp Caption Info Destination Settings
type RtmpCaptionInfoDestinationSettings struct {
noSmithyDocumentSerde
}
// Rtmp Group Settings
type RtmpGroupSettings struct {
// Choose the ad marker type for this output group. MediaLive will create a
// message based on the content of each SCTE-35 message, format it for that marker
// type, and insert it in the datastream.
AdMarkers []RtmpAdMarkers
// Authentication scheme to use when connecting with CDN
AuthenticationScheme AuthenticationScheme
// Controls behavior when content cache fills up. If remote origin server stalls
// the RTMP connection and does not accept content fast enough the 'Media Cache'
// will fill up. When the cache reaches the duration specified by cacheLength the
// cache will stop accepting new content. If set to disconnectImmediately, the RTMP
// output will force a disconnect. Clear the media cache, and reconnect after
// restartDelay seconds. If set to waitForServer, the RTMP output will wait up to 5
// minutes to allow the origin server to begin accepting data again.
CacheFullBehavior RtmpCacheFullBehavior
// Cache length, in seconds, is used to calculate buffer size.
CacheLength *int32
// Controls the types of data that passes to onCaptionInfo outputs. If set to
// 'all' then 608 and 708 carried DTVCC data will be passed. If set to
// 'field1AndField2608' then DTVCC data will be stripped out, but 608 data from
// both fields will be passed. If set to 'field1608' then only the data carried in
// 608 from field 1 video will be passed.
CaptionData RtmpCaptionData
// Applies only when the rate control mode (in the codec settings) is CBR
// (constant bit rate). Controls whether the RTMP output stream is padded (with
// FILL NAL units) in order to achieve a constant bit rate that is truly constant.
// When there is no padding, the bandwidth varies (up to the bitrate value in the
// codec settings). We recommend that you choose Auto.
IncludeFillerNalUnits IncludeFillerNalUnits
// Controls the behavior of this RTMP group if input becomes unavailable.
// - emitOutput: Emit a slate until input returns.
// - pauseOutput: Stop transmitting data until input returns. This does not
// close the underlying RTMP connection.
InputLossAction InputLossActionForRtmpOut
// If a streaming output fails, number of seconds to wait until a restart is
// initiated. A value of 0 means never restart.
RestartDelay *int32
noSmithyDocumentSerde
}
// Rtmp Output Settings
type RtmpOutputSettings struct {
// The RTMP endpoint excluding the stream name (eg. rtmp://host/appname). For
// connection to Akamai, a username and password must be supplied. URI fields
// accept format identifiers.
//
// This member is required.
Destination *OutputLocationRef
// If set to verifyAuthenticity, verify the tls certificate chain to a trusted
// Certificate Authority (CA). This will cause rtmps outputs with self-signed
// certificates to fail.
CertificateMode RtmpOutputCertificateMode
// Number of seconds to wait before retrying a connection to the Flash Media
// server if the connection is lost.
ConnectionRetryInterval *int32
// Number of retry attempts.
NumRetries *int32
noSmithyDocumentSerde
}
// Contains information on a single schedule action.
type ScheduleAction struct {
// The name of the action, must be unique within the schedule. This name provides
// the main reference to an action once it is added to the schedule. A name is
// unique if it is no longer in the schedule. The schedule is automatically cleaned
// up to remove actions with a start time of more than 1 hour ago (approximately)
// so at that point a name can be reused.
//
// This member is required.
ActionName *string
// Settings for this schedule action.
//
// This member is required.
ScheduleActionSettings *ScheduleActionSettings
// The time for the action to start in the channel.
//
// This member is required.
ScheduleActionStartSettings *ScheduleActionStartSettings
noSmithyDocumentSerde
}
// Holds the settings for a single schedule action.
type ScheduleActionSettings struct {
// Action to insert HLS ID3 segment tagging
HlsId3SegmentTaggingSettings *HlsId3SegmentTaggingScheduleActionSettings
// Action to insert HLS metadata
HlsTimedMetadataSettings *HlsTimedMetadataScheduleActionSettings
// Action to prepare an input for a future immediate input switch
InputPrepareSettings *InputPrepareScheduleActionSettings
// Action to switch the input
InputSwitchSettings *InputSwitchScheduleActionSettings
// Action to activate a motion graphics image overlay
MotionGraphicsImageActivateSettings *MotionGraphicsActivateScheduleActionSettings
// Action to deactivate a motion graphics image overlay
MotionGraphicsImageDeactivateSettings *MotionGraphicsDeactivateScheduleActionSettings
// Action to pause or unpause one or both channel pipelines
PauseStateSettings *PauseStateScheduleActionSettings
// Action to specify scte35 input
Scte35InputSettings *Scte35InputScheduleActionSettings
// Action to insert SCTE-35 return_to_network message
Scte35ReturnToNetworkSettings *Scte35ReturnToNetworkScheduleActionSettings
// Action to insert SCTE-35 splice_insert message
Scte35SpliceInsertSettings *Scte35SpliceInsertScheduleActionSettings
// Action to insert SCTE-35 time_signal message
Scte35TimeSignalSettings *Scte35TimeSignalScheduleActionSettings
// Action to activate a static image overlay
StaticImageActivateSettings *StaticImageActivateScheduleActionSettings
// Action to deactivate a static image overlay
StaticImageDeactivateSettings *StaticImageDeactivateScheduleActionSettings
// Action to activate a static image overlay in one or more specified outputs
StaticImageOutputActivateSettings *StaticImageOutputActivateScheduleActionSettings
// Action to deactivate a static image overlay in one or more specified outputs
StaticImageOutputDeactivateSettings *StaticImageOutputDeactivateScheduleActionSettings
noSmithyDocumentSerde
}
// Settings to specify when an action should occur. Only one of the options must
// be selected.
type ScheduleActionStartSettings struct {
// Option for specifying the start time for an action.
FixedModeScheduleActionStartSettings *FixedModeScheduleActionStartSettings
// Option for specifying an action as relative to another action.
FollowModeScheduleActionStartSettings *FollowModeScheduleActionStartSettings
// Option for specifying an action that should be applied immediately.
ImmediateModeScheduleActionStartSettings *ImmediateModeScheduleActionStartSettings
noSmithyDocumentSerde
}
// Scte20 Plus Embedded Destination Settings
type Scte20PlusEmbeddedDestinationSettings struct {
noSmithyDocumentSerde
}
// Scte20 Source Settings
type Scte20SourceSettings struct {
// If upconvert, 608 data is both passed through via the "608 compatibility bytes"
// fields of the 708 wrapper as well as translated into 708. 708 data present in
// the source content will be discarded.
Convert608To708 Scte20Convert608To708
// Specifies the 608/708 channel number within the video track from which to
// extract captions. Unused for passthrough.
Source608ChannelNumber *int32
noSmithyDocumentSerde
}
// Scte27 Destination Settings
type Scte27DestinationSettings struct {
noSmithyDocumentSerde
}
// Scte27 Source Settings
type Scte27SourceSettings struct {
// If you will configure a WebVTT caption description that references this caption
// selector, use this field to provide the language to consider when translating
// the image-based source to text.
OcrLanguage Scte27OcrLanguage
// The pid field is used in conjunction with the caption selector languageCode
// field as follows:
// - Specify PID and Language: Extracts captions from that PID; the language is
// "informational".
// - Specify PID and omit Language: Extracts the specified PID.
// - Omit PID and specify Language: Extracts the specified language, whichever
// PID that happens to be.
// - Omit PID and omit Language: Valid only if source is DVB-Sub that is being
// passed through; all languages will be passed through.
Pid *int32
noSmithyDocumentSerde
}
// Corresponds to SCTE-35 delivery_not_restricted_flag parameter. To declare
// delivery restrictions, include this element and its four "restriction" flags. To
// declare that there are no restrictions, omit this element.
type Scte35DeliveryRestrictions struct {
// Corresponds to SCTE-35 archive_allowed_flag.
//
// This member is required.
ArchiveAllowedFlag Scte35ArchiveAllowedFlag
// Corresponds to SCTE-35 device_restrictions parameter.
//
// This member is required.
DeviceRestrictions Scte35DeviceRestrictions
// Corresponds to SCTE-35 no_regional_blackout_flag parameter.
//
// This member is required.
NoRegionalBlackoutFlag Scte35NoRegionalBlackoutFlag
// Corresponds to SCTE-35 web_delivery_allowed_flag parameter.
//
// This member is required.
WebDeliveryAllowedFlag Scte35WebDeliveryAllowedFlag
noSmithyDocumentSerde
}
// Holds one set of SCTE-35 Descriptor Settings.
type Scte35Descriptor struct {
// SCTE-35 Descriptor Settings.
//
// This member is required.
Scte35DescriptorSettings *Scte35DescriptorSettings
noSmithyDocumentSerde
}
// SCTE-35 Descriptor settings.
type Scte35DescriptorSettings struct {
// SCTE-35 Segmentation Descriptor.
//
// This member is required.
SegmentationDescriptorScte35DescriptorSettings *Scte35SegmentationDescriptor
noSmithyDocumentSerde
}
// Scte35Input Schedule Action Settings
type Scte35InputScheduleActionSettings struct {
// Whether the SCTE-35 input should be the active input or a fixed input.
//
// This member is required.
Mode Scte35InputMode
// In fixed mode, enter the name of the input attachment that you want to use as a
// SCTE-35 input. (Don't enter the ID of the input.)"
InputAttachmentNameReference *string
noSmithyDocumentSerde
}
// Settings for a SCTE-35 return_to_network message.
type Scte35ReturnToNetworkScheduleActionSettings struct {
// The splice_event_id for the SCTE-35 splice_insert, as defined in SCTE-35.
//
// This member is required.
SpliceEventId *int64
noSmithyDocumentSerde
}
// Corresponds to SCTE-35 segmentation_descriptor.
type Scte35SegmentationDescriptor struct {
// Corresponds to SCTE-35 segmentation_event_cancel_indicator.
//
// This member is required.
SegmentationCancelIndicator Scte35SegmentationCancelIndicator
// Corresponds to SCTE-35 segmentation_event_id.
//
// This member is required.
SegmentationEventId *int64
// Holds the four SCTE-35 delivery restriction parameters.
DeliveryRestrictions *Scte35DeliveryRestrictions
// Corresponds to SCTE-35 segment_num. A value that is valid for the specified
// segmentation_type_id.
SegmentNum *int32
// Corresponds to SCTE-35 segmentation_duration. Optional. The duration for the
// time_signal, in 90 KHz ticks. To convert seconds to ticks, multiple the seconds
// by 90,000. Enter time in 90 KHz clock ticks. If you do not enter a duration, the
// time_signal will continue until you insert a cancellation message.
SegmentationDuration *int64
// Corresponds to SCTE-35 segmentation_type_id. One of the segmentation_type_id
// values listed in the SCTE-35 specification. On the console, enter the ID in
// decimal (for example, "52"). In the CLI, API, or an SDK, enter the ID in hex
// (for example, "0x34") or decimal (for example, "52").
SegmentationTypeId *int32
// Corresponds to SCTE-35 segmentation_upid. Enter a string containing the
// hexadecimal representation of the characters that make up the SCTE-35
// segmentation_upid value. Must contain an even number of hex characters. Do not
// include spaces between each hex pair. For example, the ASCII "ADS Information"
// becomes hex "41445320496e666f726d6174696f6e.
SegmentationUpid *string
// Corresponds to SCTE-35 segmentation_upid_type. On the console, enter one of the
// types listed in the SCTE-35 specification, converted to a decimal. For example,
// "0x0C" hex from the specification is "12" in decimal. In the CLI, API, or an
// SDK, enter one of the types listed in the SCTE-35 specification, in either hex
// (for example, "0x0C" ) or in decimal (for example, "12").
SegmentationUpidType *int32
// Corresponds to SCTE-35 segments_expected. A value that is valid for the
// specified segmentation_type_id.
SegmentsExpected *int32
// Corresponds to SCTE-35 sub_segment_num. A value that is valid for the specified
// segmentation_type_id.
SubSegmentNum *int32
// Corresponds to SCTE-35 sub_segments_expected. A value that is valid for the
// specified segmentation_type_id.
SubSegmentsExpected *int32
noSmithyDocumentSerde
}
// Typical configuration that applies breaks on splice inserts in addition to time
// signal placement opportunities, breaks, and advertisements.
type Scte35SpliceInsert struct {
// When specified, this offset (in milliseconds) is added to the input Ad Avail
// PTS time. This only applies to embedded SCTE 104/35 messages and does not apply
// to OOB messages.
AdAvailOffset *int32
// When set to ignore, Segment Descriptors with noRegionalBlackoutFlag set to 0
// will no longer trigger blackouts or Ad Avail slates
NoRegionalBlackoutFlag Scte35SpliceInsertNoRegionalBlackoutBehavior
// When set to ignore, Segment Descriptors with webDeliveryAllowedFlag set to 0
// will no longer trigger blackouts or Ad Avail slates
WebDeliveryAllowedFlag Scte35SpliceInsertWebDeliveryAllowedBehavior
noSmithyDocumentSerde
}
// Settings for a SCTE-35 splice_insert message.
type Scte35SpliceInsertScheduleActionSettings struct {
// The splice_event_id for the SCTE-35 splice_insert, as defined in SCTE-35.
//
// This member is required.
SpliceEventId *int64
// Optional, the duration for the splice_insert, in 90 KHz ticks. To convert
// seconds to ticks, multiple the seconds by 90,000. If you enter a duration, there
// is an expectation that the downstream system can read the duration and cue in at
// that time. If you do not enter a duration, the splice_insert will continue
// indefinitely and there is an expectation that you will enter a return_to_network
// to end the splice_insert at the appropriate time.
Duration *int64
noSmithyDocumentSerde
}
// Atypical configuration that applies segment breaks only on SCTE-35 time signal
// placement opportunities and breaks.
type Scte35TimeSignalApos struct {
// When specified, this offset (in milliseconds) is added to the input Ad Avail
// PTS time. This only applies to embedded SCTE 104/35 messages and does not apply
// to OOB messages.
AdAvailOffset *int32
// When set to ignore, Segment Descriptors with noRegionalBlackoutFlag set to 0
// will no longer trigger blackouts or Ad Avail slates
NoRegionalBlackoutFlag Scte35AposNoRegionalBlackoutBehavior
// When set to ignore, Segment Descriptors with webDeliveryAllowedFlag set to 0
// will no longer trigger blackouts or Ad Avail slates
WebDeliveryAllowedFlag Scte35AposWebDeliveryAllowedBehavior
noSmithyDocumentSerde
}
// Settings for a SCTE-35 time_signal.
type Scte35TimeSignalScheduleActionSettings struct {
// The list of SCTE-35 descriptors accompanying the SCTE-35 time_signal.
//
// This member is required.
Scte35Descriptors []Scte35Descriptor
noSmithyDocumentSerde
}
// Smpte Tt Destination Settings
type SmpteTtDestinationSettings struct {
noSmithyDocumentSerde
}
// Standard Hls Settings
type StandardHlsSettings struct {
// Settings information for the .m3u8 container
//
// This member is required.
M3u8Settings *M3u8Settings
// List all the audio groups that are used with the video output stream. Input all
// the audio GROUP-IDs that are associated to the video, separate by ','.
AudioRenditionSets *string
noSmithyDocumentSerde
}
// Settings to identify the start of the clip.
type StartTimecode struct {
// The timecode for the frame where you want to start the clip. Optional; if not
// specified, the clip starts at first frame in the file. Enter the timecode as
// HH:MM:SS:FF or HH:MM:SS;FF.
Timecode *string
noSmithyDocumentSerde
}
// Settings for the action to activate a static image.
type StaticImageActivateScheduleActionSettings struct {
// The location and filename of the image file to overlay on the video. The file
// must be a 32-bit BMP, PNG, or TGA file, and must not be larger (in pixels) than
// the input video.
//
// This member is required.
Image *InputLocation
// The duration in milliseconds for the image to remain on the video. If omitted
// or set to 0 the duration is unlimited and the image will remain until it is
// explicitly deactivated.
Duration *int32
// The time in milliseconds for the image to fade in. The fade-in starts at the
// start time of the overlay. Default is 0 (no fade-in).
FadeIn *int32
// Applies only if a duration is specified. The time in milliseconds for the image
// to fade out. The fade-out starts when the duration time is hit, so it
// effectively extends the duration. Default is 0 (no fade-out).
FadeOut *int32
// The height of the image when inserted into the video, in pixels. The overlay
// will be scaled up or down to the specified height. Leave blank to use the native
// height of the overlay.
Height *int32
// Placement of the left edge of the overlay relative to the left edge of the
// video frame, in pixels. 0 (the default) is the left edge of the frame. If the
// placement causes the overlay to extend beyond the right edge of the underlying
// video, then the overlay is cropped on the right.
ImageX *int32
// Placement of the top edge of the overlay relative to the top edge of the video
// frame, in pixels. 0 (the default) is the top edge of the frame. If the placement
// causes the overlay to extend beyond the bottom edge of the underlying video,
// then the overlay is cropped on the bottom.
ImageY *int32
// The number of the layer, 0 to 7. There are 8 layers that can be overlaid on the
// video, each layer with a different image. The layers are in Z order, which means
// that overlays with higher values of layer are inserted on top of overlays with
// lower values of layer. Default is 0.
Layer *int32
// Opacity of image where 0 is transparent and 100 is fully opaque. Default is 100.
Opacity *int32
// The width of the image when inserted into the video, in pixels. The overlay
// will be scaled up or down to the specified width. Leave blank to use the native
// width of the overlay.
Width *int32
noSmithyDocumentSerde
}
// Settings for the action to deactivate the image in a specific layer.
type StaticImageDeactivateScheduleActionSettings struct {
// The time in milliseconds for the image to fade out. Default is 0 (no fade-out).
FadeOut *int32
// The image overlay layer to deactivate, 0 to 7. Default is 0.
Layer *int32
noSmithyDocumentSerde
}
// Settings for the action to activate a static image.
type StaticImageOutputActivateScheduleActionSettings struct {
// The location and filename of the image file to overlay on the video. The file
// must be a 32-bit BMP, PNG, or TGA file, and must not be larger (in pixels) than
// the input video.
//
// This member is required.
Image *InputLocation
// The name(s) of the output(s) the activation should apply to.
//
// This member is required.
OutputNames []string
// The duration in milliseconds for the image to remain on the video. If omitted
// or set to 0 the duration is unlimited and the image will remain until it is
// explicitly deactivated.
Duration *int32
// The time in milliseconds for the image to fade in. The fade-in starts at the
// start time of the overlay. Default is 0 (no fade-in).
FadeIn *int32
// Applies only if a duration is specified. The time in milliseconds for the image
// to fade out. The fade-out starts when the duration time is hit, so it
// effectively extends the duration. Default is 0 (no fade-out).
FadeOut *int32
// The height of the image when inserted into the video, in pixels. The overlay
// will be scaled up or down to the specified height. Leave blank to use the native
// height of the overlay.
Height *int32
// Placement of the left edge of the overlay relative to the left edge of the
// video frame, in pixels. 0 (the default) is the left edge of the frame. If the
// placement causes the overlay to extend beyond the right edge of the underlying
// video, then the overlay is cropped on the right.
ImageX *int32
// Placement of the top edge of the overlay relative to the top edge of the video
// frame, in pixels. 0 (the default) is the top edge of the frame. If the placement
// causes the overlay to extend beyond the bottom edge of the underlying video,
// then the overlay is cropped on the bottom.
ImageY *int32
// The number of the layer, 0 to 7. There are 8 layers that can be overlaid on the
// video, each layer with a different image. The layers are in Z order, which means
// that overlays with higher values of layer are inserted on top of overlays with
// lower values of layer. Default is 0.
Layer *int32
// Opacity of image where 0 is transparent and 100 is fully opaque. Default is 100.
Opacity *int32
// The width of the image when inserted into the video, in pixels. The overlay
// will be scaled up or down to the specified width. Leave blank to use the native
// width of the overlay.
Width *int32
noSmithyDocumentSerde
}
// Settings for the action to deactivate the image in a specific layer.
type StaticImageOutputDeactivateScheduleActionSettings struct {
// The name(s) of the output(s) the deactivation should apply to.
//
// This member is required.
OutputNames []string
// The time in milliseconds for the image to fade out. Default is 0 (no fade-out).
FadeOut *int32
// The image overlay layer to deactivate, 0 to 7. Default is 0.
Layer *int32
noSmithyDocumentSerde
}
// Static Key Settings
type StaticKeySettings struct {
// Static key value as a 32 character hexadecimal string.
//
// This member is required.
StaticKeyValue *string
// The URL of the license server used for protecting content.
KeyProviderServer *InputLocation
noSmithyDocumentSerde
}
// Settings to identify the end of the clip.
type StopTimecode struct {
// If you specify a StopTimecode in an input (in order to clip the file), you can
// specify if you want the clip to exclude (the default) or include the frame
// specified by the timecode.
LastFrameClippingBehavior LastFrameClippingBehavior
// The timecode for the frame where you want to stop the clip. Optional; if not
// specified, the clip continues to the end of the file. Enter the timecode as
// HH:MM:SS:FF or HH:MM:SS;FF.
Timecode *string
noSmithyDocumentSerde
}
// Teletext Destination Settings
type TeletextDestinationSettings struct {
noSmithyDocumentSerde
}
// Teletext Source Settings
type TeletextSourceSettings struct {
// Optionally defines a region where TTML style captions will be displayed
OutputRectangle *CaptionRectangle
// Specifies the teletext page number within the data stream from which to extract
// captions. Range of 0x100 (256) to 0x8FF (2303). Unused for passthrough. Should
// be specified as a hexadecimal string with no "0x" prefix.
PageNumber *string
noSmithyDocumentSerde
}
// Temporal Filter Settings
type TemporalFilterSettings struct {
// If you enable this filter, the results are the following:
// - If the source content is noisy (it contains excessive digital artifacts),
// the filter cleans up the source.
// - If the source content is already clean, the filter tends to decrease the
// bitrate, especially when the rate control mode is QVBR.
PostFilterSharpening TemporalFilterPostFilterSharpening
// Choose a filter strength. We recommend a strength of 1 or 2. A higher strength
// might take out good information, resulting in an image that is overly soft.
Strength TemporalFilterStrength
noSmithyDocumentSerde
}
// Details of a single thumbnail
type Thumbnail struct {
// The binary data for the latest thumbnail.
Body *string
// The content type for the latest thumbnail.
ContentType *string
// Thumbnail Type
ThumbnailType ThumbnailType
// Time stamp for the latest thumbnail.
TimeStamp *time.Time
noSmithyDocumentSerde
}
// Thumbnail Configuration
type ThumbnailConfiguration struct {
// Enables the thumbnail feature. The feature generates thumbnails of the incoming
// video in each pipeline in the channel. AUTO turns the feature on, DISABLE turns
// the feature off.
//
// This member is required.
State ThumbnailState
noSmithyDocumentSerde
}
// Thumbnail details for one pipeline of a running channel.
type ThumbnailDetail struct {
// Pipeline ID
PipelineId *string
// thumbnails of a single pipeline
Thumbnails []Thumbnail
noSmithyDocumentSerde
}
// Timecode Burnin Settings
type TimecodeBurninSettings struct {
// Choose a timecode burn-in font size
//
// This member is required.
FontSize TimecodeBurninFontSize
// Choose a timecode burn-in output position
//
// This member is required.
Position TimecodeBurninPosition
// Create a timecode burn-in prefix (optional)
Prefix *string
noSmithyDocumentSerde
}
// Timecode Config
type TimecodeConfig struct {
// Identifies the source for the timecode that will be associated with the events
// outputs. -Embedded (embedded): Initialize the output timecode with timecode from
// the the source. If no embedded timecode is detected in the source, the system
// falls back to using "Start at 0" (zerobased). -System Clock (systemclock): Use
// the UTC time. -Start at 0 (zerobased): The time of the first frame of the event
// will be 00:00:00:00.
//
// This member is required.
Source TimecodeConfigSource
// Threshold in frames beyond which output timecode is resynchronized to the input
// timecode. Discrepancies below this threshold are permitted to avoid unnecessary
// discontinuities in the output timecode. No timecode sync when this is not
// specified.
SyncThreshold *int32
noSmithyDocumentSerde
}
// Details about the input device that is being transferred.
type TransferringInputDeviceSummary struct {
// The unique ID of the input device.
Id *string
// The optional message that the sender has attached to the transfer.
Message *string
// The AWS account ID for the recipient of the input device transfer.
TargetCustomerId *string
// The type (direction) of the input device transfer.
TransferType InputDeviceTransferType
noSmithyDocumentSerde
}
// Ttml Destination Settings
type TtmlDestinationSettings struct {
// This field is not currently supported and will not affect the output styling.
// Leave the default value.
StyleControl TtmlDestinationStyleControl
noSmithyDocumentSerde
}
// Udp Container Settings
type UdpContainerSettings struct {
// M2ts Settings
M2tsSettings *M2tsSettings
noSmithyDocumentSerde
}
// Udp Group Settings
type UdpGroupSettings struct {
// Specifies behavior of last resort when input video is lost, and no more backup
// inputs are available. When dropTs is selected the entire transport stream will
// stop being emitted. When dropProgram is selected the program can be dropped from
// the transport stream (and replaced with null packets to meet the TS bitrate
// requirement). Or, when emitProgram is chosen the transport stream will continue
// to be produced normally with repeat frames, black frames, or slate frames
// substituted for the absent input video.
InputLossAction InputLossActionForUdpOut
// Indicates ID3 frame that has the timecode.
TimedMetadataId3Frame UdpTimedMetadataId3Frame
// Timed Metadata interval in seconds.
TimedMetadataId3Period *int32
noSmithyDocumentSerde
}
// Udp Output Settings
type UdpOutputSettings struct {
// Udp Container Settings
//
// This member is required.
ContainerSettings *UdpContainerSettings
// Destination address and port number for RTP or UDP packets. Can be unicast or
// multicast RTP or UDP (eg. rtp://239.10.10.10:5001 or udp://10.100.100.100:5002).
//
// This member is required.
Destination *OutputLocationRef
// UDP output buffering in milliseconds. Larger values increase latency through
// the transcoder but simultaneously assist the transcoder in maintaining a
// constant, low-jitter UDP/RTP output while accommodating clock recovery, input
// switching, input disruptions, picture reordering, etc.
BufferMsec *int32
// Settings for enabling and adjusting Forward Error Correction on UDP outputs.
FecOutputSettings *FecOutputSettings
noSmithyDocumentSerde
}
// Placeholder documentation for ValidationError
type ValidationError struct {
// Path to the source of the error.
ElementPath *string
// The error message.
ErrorMessage *string
noSmithyDocumentSerde
}
// Placeholder documentation for VideoBlackFailoverSettings
type VideoBlackFailoverSettings struct {
// A value used in calculating the threshold below which MediaLive considers a
// pixel to be 'black'. For the input to be considered black, every pixel in a
// frame must be below this threshold. The threshold is calculated as a percentage
// (expressed as a decimal) of white. Therefore .1 means 10% white (or 90% black).
// Note how the formula works for any color depth. For example, if you set this
// field to 0.1 in 10-bit color depth: (10230.1=102.3), which means a pixel value
// of 102 or less is 'black'. If you set this field to .1 in an 8-bit color depth:
// (2550.1=25.5), which means a pixel value of 25 or less is 'black'. The range is
// 0.0 to 1.0, with any number of decimal places.
BlackDetectThreshold *float64
// The amount of time (in milliseconds) that the active input must be black before
// automatic input failover occurs.
VideoBlackThresholdMsec *int32
noSmithyDocumentSerde
}
// Video Codec Settings
type VideoCodecSettings struct {
// Frame Capture Settings
FrameCaptureSettings *FrameCaptureSettings
// H264 Settings
H264Settings *H264Settings
// H265 Settings
H265Settings *H265Settings
// Mpeg2 Settings
Mpeg2Settings *Mpeg2Settings
noSmithyDocumentSerde
}
// Video settings for this stream.
type VideoDescription struct {
// The name of this VideoDescription. Outputs will use this name to uniquely
// identify this Description. Description names should be unique within this Live
// Event.
//
// This member is required.
Name *string
// Video codec settings.
CodecSettings *VideoCodecSettings
// Output video height, in pixels. Must be an even number. For most codecs, you
// can leave this field and width blank in order to use the height and width
// (resolution) from the source. Note, however, that leaving blank is not
// recommended. For the Frame Capture codec, height and width are required.
Height *int32
// Indicates how MediaLive will respond to the AFD values that might be in the
// input video. If you do not know what AFD signaling is, or if your downstream
// system has not given you guidance, choose PASSTHROUGH. RESPOND: MediaLive clips
// the input video using a formula that uses the AFD values (configured in
// afdSignaling ), the input display aspect ratio, and the output display aspect
// ratio. MediaLive also includes the AFD values in the output, unless the codec
// for this encode is FRAME_CAPTURE. PASSTHROUGH: MediaLive ignores the AFD values
// and does not clip the video. But MediaLive does include the values in the
// output. NONE: MediaLive does not clip the input video and does not include the
// AFD values in the output
RespondToAfd VideoDescriptionRespondToAfd
// STRETCH_TO_OUTPUT configures the output position to stretch the video to the
// specified output resolution (height and width). This option will override any
// position value. DEFAULT may insert black boxes (pillar boxes or letter boxes)
// around the video to provide the specified output resolution.
ScalingBehavior VideoDescriptionScalingBehavior
// Changes the strength of the anti-alias filter used for scaling. 0 is the
// softest setting, 100 is the sharpest. A setting of 50 is recommended for most
// content.
Sharpness *int32
// Output video width, in pixels. Must be an even number. For most codecs, you can
// leave this field and height blank in order to use the height and width
// (resolution) from the source. Note, however, that leaving blank is not
// recommended. For the Frame Capture codec, height and width are required.
Width *int32
noSmithyDocumentSerde
}
// Specifies a particular video stream within an input source. An input may have
// only a single video selector.
type VideoSelector struct {
// Specifies the color space of an input. This setting works in tandem with
// colorSpaceUsage and a video description's colorSpaceSettingsChoice to determine
// if any conversion will be performed.
ColorSpace VideoSelectorColorSpace
// Color space settings
ColorSpaceSettings *VideoSelectorColorSpaceSettings
// Applies only if colorSpace is a value other than follow. This field controls
// how the value in the colorSpace field will be used. fallback means that when the
// input does include color space data, that data will be used, but when the input
// has no color space data, the value in colorSpace will be used. Choose fallback
// if your input is sometimes missing color space data, but when it does have color
// space data, that data is correct. force means to always use the value in
// colorSpace. Choose force if your input usually has no color space data or might
// have unreliable color space data.
ColorSpaceUsage VideoSelectorColorSpaceUsage
// The video selector settings.
SelectorSettings *VideoSelectorSettings
noSmithyDocumentSerde
}
// Video Selector Color Space Settings
type VideoSelectorColorSpaceSettings struct {
// Hdr10 Settings
Hdr10Settings *Hdr10Settings
noSmithyDocumentSerde
}
// Video Selector Pid
type VideoSelectorPid struct {
// Selects a specific PID from within a video source.
Pid *int32
noSmithyDocumentSerde
}
// Video Selector Program Id
type VideoSelectorProgramId struct {
// Selects a specific program from within a multi-program transport stream. If the
// program doesn't exist, the first program within the transport stream will be
// selected by default.
ProgramId *int32
noSmithyDocumentSerde
}
// Video Selector Settings
type VideoSelectorSettings struct {
// Video Selector Pid
VideoSelectorPid *VideoSelectorPid
// Video Selector Program Id
VideoSelectorProgramId *VideoSelectorProgramId
noSmithyDocumentSerde
}
// The properties for a private VPC Output When this property is specified, the
// output egress addresses will be created in a user specified VPC
type VpcOutputSettings struct {
// A list of VPC subnet IDs from the same VPC. If STANDARD channel, subnet IDs
// must be mapped to two unique availability zones (AZ).
//
// This member is required.
SubnetIds []string
// List of public address allocation ids to associate with ENIs that will be
// created in Output VPC. Must specify one for SINGLE_PIPELINE, two for STANDARD
// channels
PublicAddressAllocationIds []string
// A list of up to 5 EC2 VPC security group IDs to attach to the Output VPC
// network interfaces. If none are specified then the VPC default security group
// will be used
SecurityGroupIds []string
noSmithyDocumentSerde
}
// The properties for a private VPC Output
type VpcOutputSettingsDescription struct {
// The Availability Zones where the vpc subnets are located. The first
// Availability Zone applies to the first subnet in the list of subnets. The second
// Availability Zone applies to the second subnet.
AvailabilityZones []string
// A list of Elastic Network Interfaces created by MediaLive in the customer's VPC
NetworkInterfaceIds []string
// A list of up EC2 VPC security group IDs attached to the Output VPC network
// interfaces.
SecurityGroupIds []string
// A list of VPC subnet IDs from the same VPC. If STANDARD channel, subnet IDs
// must be mapped to two unique availability zones (AZ).
SubnetIds []string
noSmithyDocumentSerde
}
// Wav Settings
type WavSettings struct {
// Bits per sample.
BitDepth *float64
// The audio coding mode for the WAV audio. The mode determines the number of
// channels in the audio.
CodingMode WavCodingMode
// Sample rate in Hz.
SampleRate *float64
noSmithyDocumentSerde
}
// Webvtt Destination Settings
type WebvttDestinationSettings struct {
// Controls whether the color and position of the source captions is passed
// through to the WebVTT output captions. PASSTHROUGH - Valid only if the source
// captions are EMBEDDED or TELETEXT. NO_STYLE_DATA - Don't pass through the style.
// The output captions will not contain any font styling information.
StyleControl WebvttDestinationStyleControl
noSmithyDocumentSerde
}
type noSmithyDocumentSerde = smithydocument.NoSerde
|