google-api-client 0.46.1 → 0.50.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (496) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/autoapprove.yml +49 -0
  3. data/.github/workflows/release-please.yml +77 -0
  4. data/.gitignore +2 -0
  5. data/.kokoro/trampoline.sh +0 -0
  6. data/CHANGELOG.md +666 -191
  7. data/Gemfile +1 -0
  8. data/Rakefile +31 -3
  9. data/api_list_config.yaml +8 -0
  10. data/bin/generate-api +77 -15
  11. data/generated/google/apis/accessapproval_v1.rb +1 -1
  12. data/generated/google/apis/accessapproval_v1/classes.rb +13 -15
  13. data/generated/google/apis/accessapproval_v1/service.rb +12 -9
  14. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  15. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +30 -30
  16. data/generated/google/apis/admin_directory_v1.rb +1 -1
  17. data/generated/google/apis/admin_directory_v1/classes.rb +135 -0
  18. data/generated/google/apis/admin_directory_v1/representations.rb +62 -0
  19. data/generated/google/apis/admin_directory_v1/service.rb +72 -0
  20. data/generated/google/apis/admin_reports_v1.rb +1 -1
  21. data/generated/google/apis/admob_v1.rb +4 -1
  22. data/generated/google/apis/admob_v1/classes.rb +29 -29
  23. data/generated/google/apis/admob_v1/service.rb +4 -0
  24. data/generated/google/apis/admob_v1beta.rb +38 -0
  25. data/generated/google/apis/admob_v1beta/classes.rb +1035 -0
  26. data/generated/google/apis/admob_v1beta/representations.rb +472 -0
  27. data/generated/google/apis/admob_v1beta/service.rb +279 -0
  28. data/generated/google/apis/analyticsadmin_v1alpha.rb +1 -1
  29. data/generated/google/apis/analyticsadmin_v1alpha/classes.rb +19 -18
  30. data/generated/google/apis/analyticsadmin_v1alpha/service.rb +12 -13
  31. data/generated/google/apis/analyticsdata_v1alpha.rb +1 -1
  32. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +179 -50
  33. data/generated/google/apis/analyticsdata_v1alpha/representations.rb +50 -14
  34. data/generated/google/apis/analyticsdata_v1alpha/service.rb +49 -38
  35. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  36. data/generated/google/apis/androidenterprise_v1/classes.rb +6 -0
  37. data/generated/google/apis/androidenterprise_v1/representations.rb +1 -0
  38. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  39. data/generated/google/apis/androidmanagement_v1/classes.rb +29 -26
  40. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  41. data/generated/google/apis/androidpublisher_v3/classes.rb +2 -1
  42. data/generated/google/apis/androidpublisher_v3/service.rb +5 -2
  43. data/generated/google/apis/apigateway_v1beta.rb +1 -1
  44. data/generated/google/apis/apigateway_v1beta/classes.rb +8 -5
  45. data/generated/google/apis/apigateway_v1beta/representations.rb +1 -0
  46. data/generated/google/apis/apigee_v1.rb +1 -1
  47. data/generated/google/apis/apigee_v1/classes.rb +377 -137
  48. data/generated/google/apis/apigee_v1/representations.rb +109 -18
  49. data/generated/google/apis/apigee_v1/service.rb +673 -56
  50. data/generated/google/apis/area120tables_v1alpha1.rb +46 -0
  51. data/generated/google/apis/area120tables_v1alpha1/classes.rb +481 -0
  52. data/generated/google/apis/area120tables_v1alpha1/representations.rb +279 -0
  53. data/generated/google/apis/area120tables_v1alpha1/service.rb +448 -0
  54. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  55. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +7 -7
  56. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +1 -1
  57. data/generated/google/apis/assuredworkloads_v1beta1.rb +1 -1
  58. data/generated/google/apis/assuredworkloads_v1beta1/classes.rb +20 -0
  59. data/generated/google/apis/assuredworkloads_v1beta1/representations.rb +2 -0
  60. data/generated/google/apis/bigquery_v2.rb +1 -1
  61. data/generated/google/apis/bigquery_v2/classes.rb +158 -5
  62. data/generated/google/apis/bigquery_v2/representations.rb +67 -0
  63. data/generated/google/apis/bigquery_v2/service.rb +46 -0
  64. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  65. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +6 -0
  66. data/generated/google/apis/bigqueryconnection_v1beta1/representations.rb +1 -0
  67. data/generated/google/apis/billingbudgets_v1.rb +1 -1
  68. data/generated/google/apis/billingbudgets_v1/classes.rb +12 -1
  69. data/generated/google/apis/billingbudgets_v1/representations.rb +1 -0
  70. data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
  71. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +12 -1
  72. data/generated/google/apis/billingbudgets_v1beta1/representations.rb +1 -0
  73. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  74. data/generated/google/apis/binaryauthorization_v1/classes.rb +3 -4
  75. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  76. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +3 -4
  77. data/generated/google/apis/books_v1.rb +1 -1
  78. data/generated/google/apis/books_v1/service.rb +52 -52
  79. data/generated/google/apis/calendar_v3.rb +1 -1
  80. data/generated/google/apis/calendar_v3/classes.rb +2 -2
  81. data/generated/google/apis/chat_v1.rb +1 -1
  82. data/generated/google/apis/chat_v1/classes.rb +7 -0
  83. data/generated/google/apis/chat_v1/representations.rb +1 -0
  84. data/generated/google/apis/civicinfo_v2.rb +1 -1
  85. data/generated/google/apis/civicinfo_v2/classes.rb +0 -24
  86. data/generated/google/apis/civicinfo_v2/representations.rb +0 -3
  87. data/generated/google/apis/classroom_v1.rb +1 -1
  88. data/generated/google/apis/classroom_v1/classes.rb +21 -21
  89. data/generated/google/apis/cloudasset_v1.rb +1 -1
  90. data/generated/google/apis/cloudasset_v1/classes.rb +1122 -0
  91. data/generated/google/apis/cloudasset_v1/representations.rb +474 -0
  92. data/generated/google/apis/cloudasset_v1/service.rb +171 -0
  93. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  94. data/generated/google/apis/cloudasset_v1p1beta1.rb +1 -1
  95. data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
  96. data/generated/google/apis/cloudasset_v1p5beta1.rb +1 -1
  97. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  98. data/generated/google/apis/cloudbilling_v1/classes.rb +1 -1
  99. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  100. data/generated/google/apis/cloudbuild_v1/classes.rb +2 -1
  101. data/generated/google/apis/cloudbuild_v1/service.rb +10 -2
  102. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  103. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  104. data/generated/google/apis/cloudidentity_v1/service.rb +7 -3
  105. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  106. data/generated/google/apis/cloudidentity_v1beta1/service.rb +29 -17
  107. data/generated/google/apis/cloudiot_v1.rb +1 -1
  108. data/generated/google/apis/cloudiot_v1/classes.rb +1 -2
  109. data/generated/google/apis/cloudkms_v1.rb +1 -1
  110. data/generated/google/apis/cloudkms_v1/classes.rb +1 -2
  111. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  112. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +401 -7
  113. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +280 -1
  114. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  115. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +401 -7
  116. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +280 -1
  117. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  118. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +405 -11
  119. data/generated/google/apis/cloudresourcemanager_v2/representations.rb +280 -1
  120. data/generated/google/apis/cloudresourcemanager_v2/service.rb +13 -13
  121. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  122. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +405 -11
  123. data/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb +280 -1
  124. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +13 -13
  125. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  126. data/generated/google/apis/cloudtasks_v2/classes.rb +1 -2
  127. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  128. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +1 -2
  129. data/generated/google/apis/cloudtasks_v2beta2/service.rb +12 -2
  130. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  131. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +1 -2
  132. data/generated/google/apis/compute_v1.rb +1 -1
  133. data/generated/google/apis/compute_v1/classes.rb +282 -29
  134. data/generated/google/apis/compute_v1/representations.rb +43 -0
  135. data/generated/google/apis/compute_v1/service.rb +4 -1
  136. data/generated/google/apis/container_v1.rb +1 -1
  137. data/generated/google/apis/container_v1/classes.rb +22 -10
  138. data/generated/google/apis/container_v1beta1.rb +1 -1
  139. data/generated/google/apis/container_v1beta1/classes.rb +51 -10
  140. data/generated/google/apis/container_v1beta1/representations.rb +15 -0
  141. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  142. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +1 -2
  143. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  144. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +1 -2
  145. data/generated/google/apis/content_v2.rb +3 -4
  146. data/generated/google/apis/content_v2/classes.rb +511 -1219
  147. data/generated/google/apis/content_v2/service.rb +380 -651
  148. data/generated/google/apis/content_v2_1.rb +3 -4
  149. data/generated/google/apis/content_v2_1/classes.rb +1353 -1061
  150. data/generated/google/apis/content_v2_1/representations.rb +342 -0
  151. data/generated/google/apis/content_v2_1/service.rb +948 -809
  152. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  153. data/generated/google/apis/datacatalog_v1beta1/classes.rb +26 -12
  154. data/generated/google/apis/datacatalog_v1beta1/representations.rb +5 -0
  155. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  156. data/generated/google/apis/dataflow_v1b3/classes.rb +12 -0
  157. data/generated/google/apis/dataflow_v1b3/representations.rb +3 -0
  158. data/generated/google/apis/datalabeling_v1beta1.rb +34 -0
  159. data/generated/google/apis/datalabeling_v1beta1/classes.rb +6207 -0
  160. data/generated/google/apis/datalabeling_v1beta1/representations.rb +3156 -0
  161. data/generated/google/apis/datalabeling_v1beta1/service.rb +1762 -0
  162. data/generated/google/apis/datamigration_v1beta1.rb +34 -0
  163. data/generated/google/apis/datamigration_v1beta1/classes.rb +1670 -0
  164. data/generated/google/apis/datamigration_v1beta1/representations.rb +678 -0
  165. data/generated/google/apis/datamigration_v1beta1/service.rb +1172 -0
  166. data/generated/google/apis/dataproc_v1.rb +1 -1
  167. data/generated/google/apis/dataproc_v1/classes.rb +18 -7
  168. data/generated/google/apis/dataproc_v1/representations.rb +1 -0
  169. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  170. data/generated/google/apis/dataproc_v1beta2/classes.rb +18 -7
  171. data/generated/google/apis/dataproc_v1beta2/representations.rb +1 -0
  172. data/generated/google/apis/datastore_v1.rb +1 -1
  173. data/generated/google/apis/datastore_v1/classes.rb +4 -4
  174. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  175. data/generated/google/apis/datastore_v1beta3/classes.rb +4 -4
  176. data/generated/google/apis/deploymentmanager_v2.rb +6 -4
  177. data/generated/google/apis/deploymentmanager_v2/classes.rb +209 -558
  178. data/generated/google/apis/deploymentmanager_v2/representations.rb +1 -132
  179. data/generated/google/apis/deploymentmanager_v2/service.rb +169 -213
  180. data/generated/google/apis/deploymentmanager_v2beta.rb +6 -5
  181. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +253 -609
  182. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +1 -132
  183. data/generated/google/apis/deploymentmanager_v2beta/service.rb +278 -359
  184. data/generated/google/apis/dfareporting_v3_3.rb +2 -2
  185. data/generated/google/apis/dfareporting_v3_3/classes.rb +6 -6
  186. data/generated/google/apis/dfareporting_v3_3/service.rb +12 -12
  187. data/generated/google/apis/dfareporting_v3_4.rb +2 -2
  188. data/generated/google/apis/dfareporting_v3_4/classes.rb +6 -6
  189. data/generated/google/apis/dfareporting_v3_4/service.rb +12 -12
  190. data/generated/google/apis/dialogflow_v2.rb +1 -1
  191. data/generated/google/apis/dialogflow_v2/classes.rb +649 -385
  192. data/generated/google/apis/dialogflow_v2/representations.rb +279 -192
  193. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  194. data/generated/google/apis/dialogflow_v2beta1/classes.rb +649 -385
  195. data/generated/google/apis/dialogflow_v2beta1/representations.rb +283 -196
  196. data/generated/google/apis/dialogflow_v2beta1/service.rb +14 -8
  197. data/generated/google/apis/dialogflow_v3beta1.rb +1 -1
  198. data/generated/google/apis/dialogflow_v3beta1/classes.rb +712 -391
  199. data/generated/google/apis/dialogflow_v3beta1/representations.rb +301 -195
  200. data/generated/google/apis/dialogflow_v3beta1/service.rb +1 -1
  201. data/generated/google/apis/displayvideo_v1.rb +1 -1
  202. data/generated/google/apis/displayvideo_v1/classes.rb +241 -63
  203. data/generated/google/apis/displayvideo_v1/representations.rb +77 -0
  204. data/generated/google/apis/displayvideo_v1/service.rb +257 -17
  205. data/generated/google/apis/dlp_v2.rb +1 -1
  206. data/generated/google/apis/dlp_v2/classes.rb +39 -32
  207. data/generated/google/apis/dlp_v2/representations.rb +1 -0
  208. data/generated/google/apis/dns_v1.rb +2 -2
  209. data/generated/google/apis/dns_v1/classes.rb +181 -0
  210. data/generated/google/apis/dns_v1/representations.rb +83 -0
  211. data/generated/google/apis/dns_v1/service.rb +1 -1
  212. data/generated/google/apis/dns_v1beta2.rb +2 -2
  213. data/generated/google/apis/dns_v1beta2/classes.rb +195 -1
  214. data/generated/google/apis/dns_v1beta2/representations.rb +95 -0
  215. data/generated/google/apis/dns_v1beta2/service.rb +177 -1
  216. data/generated/google/apis/domains_v1alpha2.rb +34 -0
  217. data/generated/google/apis/domains_v1alpha2/classes.rb +1534 -0
  218. data/generated/google/apis/domains_v1alpha2/representations.rb +605 -0
  219. data/generated/google/apis/domains_v1alpha2/service.rb +805 -0
  220. data/generated/google/apis/domains_v1beta1.rb +34 -0
  221. data/generated/google/apis/domains_v1beta1/classes.rb +1534 -0
  222. data/generated/google/apis/domains_v1beta1/representations.rb +605 -0
  223. data/generated/google/apis/domains_v1beta1/service.rb +805 -0
  224. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  225. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +2 -1
  226. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  227. data/generated/google/apis/doubleclickbidmanager_v1_1/classes.rb +2 -1
  228. data/generated/google/apis/drive_v2.rb +1 -1
  229. data/generated/google/apis/drive_v2/classes.rb +22 -20
  230. data/generated/google/apis/drive_v2/service.rb +2 -2
  231. data/generated/google/apis/drive_v3.rb +1 -1
  232. data/generated/google/apis/drive_v3/classes.rb +12 -9
  233. data/generated/google/apis/eventarc_v1beta1.rb +34 -0
  234. data/generated/google/apis/eventarc_v1beta1/classes.rb +937 -0
  235. data/generated/google/apis/eventarc_v1beta1/representations.rb +380 -0
  236. data/generated/google/apis/eventarc_v1beta1/service.rb +579 -0
  237. data/generated/google/apis/file_v1.rb +1 -1
  238. data/generated/google/apis/file_v1/classes.rb +505 -4
  239. data/generated/google/apis/file_v1/representations.rb +203 -0
  240. data/generated/google/apis/file_v1/service.rb +229 -1
  241. data/generated/google/apis/file_v1beta1.rb +1 -1
  242. data/generated/google/apis/file_v1beta1/classes.rb +346 -6
  243. data/generated/google/apis/file_v1beta1/representations.rb +149 -0
  244. data/generated/google/apis/file_v1beta1/service.rb +6 -2
  245. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  246. data/generated/google/apis/firebase_v1beta1/service.rb +17 -4
  247. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  248. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +2 -0
  249. data/generated/google/apis/firestore_v1.rb +1 -1
  250. data/generated/google/apis/firestore_v1/classes.rb +4 -4
  251. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  252. data/generated/google/apis/firestore_v1beta1/classes.rb +4 -4
  253. data/generated/google/apis/fitness_v1.rb +1 -1
  254. data/generated/google/apis/fitness_v1/service.rb +3 -1
  255. data/generated/google/apis/games_v1.rb +1 -1
  256. data/generated/google/apis/games_v1/classes.rb +300 -0
  257. data/generated/google/apis/games_v1/representations.rb +116 -0
  258. data/generated/google/apis/games_v1/service.rb +34 -0
  259. data/generated/google/apis/gameservices_v1.rb +1 -1
  260. data/generated/google/apis/gameservices_v1/classes.rb +16 -16
  261. data/generated/google/apis/gameservices_v1/service.rb +54 -51
  262. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  263. data/generated/google/apis/gameservices_v1beta/classes.rb +16 -16
  264. data/generated/google/apis/gameservices_v1beta/service.rb +54 -51
  265. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  266. data/generated/google/apis/genomics_v2alpha1/classes.rb +25 -0
  267. data/generated/google/apis/genomics_v2alpha1/representations.rb +15 -0
  268. data/generated/google/apis/gmailpostmastertools_v1beta1.rb +1 -1
  269. data/generated/google/apis/gmailpostmastertools_v1beta1/service.rb +10 -10
  270. data/generated/google/apis/healthcare_v1.rb +1 -1
  271. data/generated/google/apis/healthcare_v1/classes.rb +10 -4
  272. data/generated/google/apis/healthcare_v1/representations.rb +1 -0
  273. data/generated/google/apis/healthcare_v1/service.rb +2 -1
  274. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  275. data/generated/google/apis/healthcare_v1beta1/classes.rb +350 -46
  276. data/generated/google/apis/healthcare_v1beta1/representations.rb +150 -18
  277. data/generated/google/apis/healthcare_v1beta1/service.rb +91 -13
  278. data/generated/google/apis/iam_v1.rb +2 -5
  279. data/generated/google/apis/iam_v1/classes.rb +8 -11
  280. data/generated/google/apis/iam_v1/representations.rb +0 -1
  281. data/generated/google/apis/iam_v1/service.rb +1 -4
  282. data/generated/google/apis/iamcredentials_v1.rb +3 -4
  283. data/generated/google/apis/iamcredentials_v1/service.rb +2 -3
  284. data/generated/google/apis/iap_v1.rb +1 -1
  285. data/generated/google/apis/iap_v1/classes.rb +1 -13
  286. data/generated/google/apis/iap_v1/representations.rb +0 -1
  287. data/generated/google/apis/iap_v1beta1.rb +1 -1
  288. data/generated/google/apis/iap_v1beta1/classes.rb +1 -2
  289. data/generated/google/apis/licensing_v1.rb +1 -1
  290. data/generated/google/apis/localservices_v1.rb +1 -1
  291. data/generated/google/apis/localservices_v1/classes.rb +7 -0
  292. data/generated/google/apis/localservices_v1/representations.rb +2 -0
  293. data/generated/google/apis/localservices_v1/service.rb +20 -20
  294. data/generated/google/apis/logging_v2.rb +1 -1
  295. data/generated/google/apis/logging_v2/classes.rb +186 -10
  296. data/generated/google/apis/logging_v2/representations.rb +77 -0
  297. data/generated/google/apis/logging_v2/service.rb +446 -25
  298. data/generated/google/apis/managedidentities_v1.rb +1 -1
  299. data/generated/google/apis/managedidentities_v1/classes.rb +347 -7
  300. data/generated/google/apis/managedidentities_v1/representations.rb +149 -0
  301. data/generated/google/apis/managedidentities_v1/service.rb +1 -4
  302. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  303. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +426 -15
  304. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +182 -1
  305. data/generated/google/apis/managedidentities_v1alpha1/service.rb +83 -5
  306. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  307. data/generated/google/apis/managedidentities_v1beta1/classes.rb +427 -15
  308. data/generated/google/apis/managedidentities_v1beta1/representations.rb +182 -1
  309. data/generated/google/apis/managedidentities_v1beta1/service.rb +83 -5
  310. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  311. data/generated/google/apis/memcache_v1beta2/classes.rb +345 -4
  312. data/generated/google/apis/memcache_v1beta2/representations.rb +149 -0
  313. data/generated/google/apis/ml_v1.rb +1 -1
  314. data/generated/google/apis/ml_v1/classes.rb +273 -79
  315. data/generated/google/apis/ml_v1/representations.rb +43 -0
  316. data/generated/google/apis/ml_v1/service.rb +35 -0
  317. data/generated/google/apis/monitoring_v3.rb +1 -1
  318. data/generated/google/apis/monitoring_v3/classes.rb +19 -13
  319. data/generated/google/apis/monitoring_v3/service.rb +50 -1
  320. data/generated/google/apis/networkmanagement_v1.rb +1 -1
  321. data/generated/google/apis/networkmanagement_v1/classes.rb +6 -0
  322. data/generated/google/apis/networkmanagement_v1/representations.rb +1 -0
  323. data/generated/google/apis/networkmanagement_v1beta1.rb +1 -1
  324. data/generated/google/apis/networkmanagement_v1beta1/classes.rb +57 -0
  325. data/generated/google/apis/networkmanagement_v1beta1/representations.rb +31 -0
  326. data/generated/google/apis/notebooks_v1.rb +34 -0
  327. data/generated/google/apis/notebooks_v1/classes.rb +1461 -0
  328. data/generated/google/apis/notebooks_v1/representations.rb +581 -0
  329. data/generated/google/apis/notebooks_v1/service.rb +1042 -0
  330. data/generated/google/apis/people_v1.rb +1 -1
  331. data/generated/google/apis/people_v1/classes.rb +49 -49
  332. data/generated/google/apis/people_v1/service.rb +21 -18
  333. data/generated/google/apis/playablelocations_v3.rb +1 -1
  334. data/generated/google/apis/playablelocations_v3/classes.rb +6 -6
  335. data/generated/google/apis/playcustomapp_v1.rb +1 -1
  336. data/generated/google/apis/policytroubleshooter_v1.rb +1 -1
  337. data/generated/google/apis/policytroubleshooter_v1beta.rb +1 -1
  338. data/generated/google/apis/poly_v1.rb +3 -4
  339. data/generated/google/apis/poly_v1/classes.rb +65 -79
  340. data/generated/google/apis/poly_v1/service.rb +50 -63
  341. data/generated/google/apis/privateca_v1beta1.rb +36 -0
  342. data/generated/google/apis/privateca_v1beta1/classes.rb +2466 -0
  343. data/generated/google/apis/privateca_v1beta1/representations.rb +996 -0
  344. data/generated/google/apis/privateca_v1beta1/service.rb +1437 -0
  345. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  346. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +109 -0
  347. data/generated/google/apis/pubsub_v1.rb +1 -1
  348. data/generated/google/apis/pubsub_v1/classes.rb +1 -2
  349. data/generated/google/apis/pubsub_v1/service.rb +2 -2
  350. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  351. data/generated/google/apis/pubsub_v1beta2/classes.rb +1 -2
  352. data/generated/google/apis/realtimebidding_v1.rb +1 -1
  353. data/generated/google/apis/realtimebidding_v1/classes.rb +578 -33
  354. data/generated/google/apis/realtimebidding_v1/representations.rb +232 -0
  355. data/generated/google/apis/realtimebidding_v1/service.rb +454 -4
  356. data/generated/google/apis/recommendationengine_v1beta1.rb +1 -1
  357. data/generated/google/apis/recommendationengine_v1beta1/classes.rb +32 -0
  358. data/generated/google/apis/recommendationengine_v1beta1/representations.rb +25 -0
  359. data/generated/google/apis/recommender_v1.rb +1 -1
  360. data/generated/google/apis/recommender_v1/classes.rb +1 -1
  361. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  362. data/generated/google/apis/recommender_v1beta1/classes.rb +1 -1
  363. data/generated/google/apis/redis_v1.rb +1 -1
  364. data/generated/google/apis/redis_v1/classes.rb +86 -0
  365. data/generated/google/apis/redis_v1/representations.rb +34 -0
  366. data/generated/google/apis/redis_v1/service.rb +34 -0
  367. data/generated/google/apis/redis_v1beta1.rb +1 -1
  368. data/generated/google/apis/redis_v1beta1/classes.rb +58 -0
  369. data/generated/google/apis/redis_v1beta1/representations.rb +20 -0
  370. data/generated/google/apis/run_v1.rb +1 -1
  371. data/generated/google/apis/run_v1/classes.rb +7 -6
  372. data/generated/google/apis/run_v1alpha1.rb +1 -1
  373. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  374. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +0 -7
  375. data/generated/google/apis/runtimeconfig_v1beta1/representations.rb +0 -1
  376. data/generated/google/apis/safebrowsing_v4.rb +1 -1
  377. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  378. data/generated/google/apis/sasportal_v1alpha1/service.rb +109 -0
  379. data/generated/google/apis/secretmanager_v1.rb +1 -1
  380. data/generated/google/apis/secretmanager_v1/classes.rb +0 -7
  381. data/generated/google/apis/secretmanager_v1/representations.rb +0 -1
  382. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  383. data/generated/google/apis/secretmanager_v1beta1/classes.rb +0 -7
  384. data/generated/google/apis/secretmanager_v1beta1/representations.rb +0 -1
  385. data/generated/google/apis/securitycenter_v1.rb +1 -1
  386. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  387. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  388. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +6 -64
  389. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +0 -18
  390. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  391. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +6 -64
  392. data/generated/google/apis/serviceconsumermanagement_v1beta1/representations.rb +0 -18
  393. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  394. data/generated/google/apis/servicecontrol_v1/classes.rb +77 -2
  395. data/generated/google/apis/servicecontrol_v1/representations.rb +10 -0
  396. data/generated/google/apis/servicecontrol_v2.rb +1 -1
  397. data/generated/google/apis/servicecontrol_v2/classes.rb +62 -0
  398. data/generated/google/apis/servicecontrol_v2/representations.rb +8 -0
  399. data/generated/google/apis/servicedirectory_v1beta1.rb +1 -1
  400. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +27 -8
  401. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  402. data/generated/google/apis/servicemanagement_v1/classes.rb +6 -64
  403. data/generated/google/apis/servicemanagement_v1/representations.rb +0 -18
  404. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  405. data/generated/google/apis/servicenetworking_v1/classes.rb +207 -65
  406. data/generated/google/apis/servicenetworking_v1/representations.rb +77 -14
  407. data/generated/google/apis/servicenetworking_v1/service.rb +82 -2
  408. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  409. data/generated/google/apis/servicenetworking_v1beta/classes.rb +140 -65
  410. data/generated/google/apis/servicenetworking_v1beta/representations.rb +46 -14
  411. data/generated/google/apis/serviceusage_v1.rb +1 -1
  412. data/generated/google/apis/serviceusage_v1/classes.rb +6 -64
  413. data/generated/google/apis/serviceusage_v1/representations.rb +0 -18
  414. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  415. data/generated/google/apis/serviceusage_v1beta1/classes.rb +36 -64
  416. data/generated/google/apis/serviceusage_v1beta1/representations.rb +15 -18
  417. data/generated/google/apis/serviceusage_v1beta1/service.rb +36 -0
  418. data/generated/google/apis/sheets_v4.rb +1 -1
  419. data/generated/google/apis/sheets_v4/classes.rb +23 -7
  420. data/generated/google/apis/sheets_v4/representations.rb +3 -0
  421. data/generated/google/apis/smartdevicemanagement_v1.rb +1 -1
  422. data/generated/google/apis/smartdevicemanagement_v1/classes.rb +0 -34
  423. data/generated/google/apis/smartdevicemanagement_v1/representations.rb +0 -16
  424. data/generated/google/apis/smartdevicemanagement_v1/service.rb +3 -8
  425. data/generated/google/apis/spanner_v1.rb +1 -1
  426. data/generated/google/apis/spanner_v1/classes.rb +2 -3
  427. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  428. data/generated/google/apis/sqladmin_v1beta4/classes.rb +28 -4
  429. data/generated/google/apis/sqladmin_v1beta4/representations.rb +3 -0
  430. data/generated/google/apis/storage_v1.rb +1 -1
  431. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  432. data/generated/google/apis/storagetransfer_v1/classes.rb +82 -50
  433. data/generated/google/apis/storagetransfer_v1/representations.rb +4 -0
  434. data/generated/google/apis/storagetransfer_v1/service.rb +20 -21
  435. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  436. data/generated/google/apis/streetviewpublish_v1/classes.rb +4 -4
  437. data/generated/google/apis/sts_v1beta.rb +1 -1
  438. data/generated/google/apis/sts_v1beta/classes.rb +12 -11
  439. data/generated/google/apis/tagmanager_v2.rb +1 -1
  440. data/generated/google/apis/tagmanager_v2/classes.rb +12 -0
  441. data/generated/google/apis/tagmanager_v2/representations.rb +3 -0
  442. data/generated/google/apis/testing_v1.rb +1 -1
  443. data/generated/google/apis/testing_v1/classes.rb +45 -33
  444. data/generated/google/apis/testing_v1/representations.rb +1 -0
  445. data/generated/google/apis/testing_v1/service.rb +4 -4
  446. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  447. data/generated/google/apis/toolresults_v1beta3/classes.rb +13 -0
  448. data/generated/google/apis/toolresults_v1beta3/representations.rb +12 -0
  449. data/generated/google/apis/tpu_v1.rb +1 -1
  450. data/generated/google/apis/tpu_v1/classes.rb +3 -3
  451. data/generated/google/apis/tpu_v1/service.rb +8 -8
  452. data/generated/google/apis/tpu_v1alpha1.rb +1 -1
  453. data/generated/google/apis/tpu_v1alpha1/classes.rb +3 -3
  454. data/generated/google/apis/tpu_v1alpha1/service.rb +8 -8
  455. data/generated/google/apis/transcoder_v1beta1.rb +34 -0
  456. data/generated/google/apis/transcoder_v1beta1/classes.rb +1684 -0
  457. data/generated/google/apis/transcoder_v1beta1/representations.rb +756 -0
  458. data/generated/google/apis/transcoder_v1beta1/service.rb +329 -0
  459. data/generated/google/apis/translate_v3.rb +1 -1
  460. data/generated/google/apis/translate_v3/classes.rb +2 -1
  461. data/generated/google/apis/translate_v3beta1.rb +1 -1
  462. data/generated/google/apis/translate_v3beta1/classes.rb +2 -1
  463. data/generated/google/apis/vault_v1.rb +1 -1
  464. data/generated/google/apis/vault_v1/classes.rb +333 -0
  465. data/generated/google/apis/vault_v1/representations.rb +162 -0
  466. data/generated/google/apis/vault_v1/service.rb +151 -0
  467. data/generated/google/apis/videointelligence_v1.rb +1 -1
  468. data/generated/google/apis/videointelligence_v1/service.rb +0 -62
  469. data/generated/google/apis/vision_v1.rb +1 -1
  470. data/generated/google/apis/vision_v1/classes.rb +16 -16
  471. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  472. data/generated/google/apis/vision_v1p1beta1/classes.rb +16 -16
  473. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  474. data/generated/google/apis/vision_v1p2beta1/classes.rb +16 -16
  475. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  476. data/generated/google/apis/youtube_v3.rb +1 -1
  477. data/generated/google/apis/youtube_v3/service.rb +8 -8
  478. data/google-api-client.gemspec +25 -25
  479. data/lib/google/apis/core/api_command.rb +1 -0
  480. data/lib/google/apis/core/http_command.rb +2 -1
  481. data/lib/google/apis/options.rb +8 -5
  482. data/lib/google/apis/version.rb +1 -1
  483. data/synth.py +40 -0
  484. metadata +47 -16
  485. data/generated/google/apis/displayvideo_v1beta.rb +0 -38
  486. data/generated/google/apis/displayvideo_v1beta/classes.rb +0 -146
  487. data/generated/google/apis/displayvideo_v1beta/representations.rb +0 -72
  488. data/generated/google/apis/displayvideo_v1beta/service.rb +0 -161
  489. data/generated/google/apis/displayvideo_v1beta2.rb +0 -38
  490. data/generated/google/apis/displayvideo_v1beta2/classes.rb +0 -146
  491. data/generated/google/apis/displayvideo_v1beta2/representations.rb +0 -72
  492. data/generated/google/apis/displayvideo_v1beta2/service.rb +0 -130
  493. data/generated/google/apis/displayvideo_v1dev.rb +0 -38
  494. data/generated/google/apis/displayvideo_v1dev/classes.rb +0 -146
  495. data/generated/google/apis/displayvideo_v1dev/representations.rb +0 -72
  496. data/generated/google/apis/displayvideo_v1dev/service.rb +0 -130
@@ -0,0 +1,34 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'google/apis/transcoder_v1beta1/service.rb'
16
+ require 'google/apis/transcoder_v1beta1/classes.rb'
17
+ require 'google/apis/transcoder_v1beta1/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Transcoder API
22
+ #
23
+ # This API converts video files into formats suitable for consumer distribution.
24
+ #
25
+ # @see https://cloud.google.com/transcoder/docs/
26
+ module TranscoderV1beta1
27
+ VERSION = 'V1beta1'
28
+ REVISION = '20201111'
29
+
30
+ # View and manage your data across Google Cloud Platform services
31
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,1684 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module TranscoderV1beta1
24
+
25
+ # Ad break.
26
+ class AdBreak
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # Start time in seconds for the ad break, relative to the output file timeline.
30
+ # The default is `0s`.
31
+ # Corresponds to the JSON property `startTimeOffset`
32
+ # @return [String]
33
+ attr_accessor :start_time_offset
34
+
35
+ def initialize(**args)
36
+ update!(**args)
37
+ end
38
+
39
+ # Update properties of this object
40
+ def update!(**args)
41
+ @start_time_offset = args[:start_time_offset] if args.key?(:start_time_offset)
42
+ end
43
+ end
44
+
45
+ # Configuration for AES-128 encryption.
46
+ class Aes128Encryption
47
+ include Google::Apis::Core::Hashable
48
+
49
+ # Required. URI of the key delivery service. This URI is inserted into the M3U8
50
+ # header.
51
+ # Corresponds to the JSON property `keyUri`
52
+ # @return [String]
53
+ attr_accessor :key_uri
54
+
55
+ def initialize(**args)
56
+ update!(**args)
57
+ end
58
+
59
+ # Update properties of this object
60
+ def update!(**args)
61
+ @key_uri = args[:key_uri] if args.key?(:key_uri)
62
+ end
63
+ end
64
+
65
+ # Animation types.
66
+ class Animation
67
+ include Google::Apis::Core::Hashable
68
+
69
+ # End previous overlay animation from the video. Without AnimationEnd, the
70
+ # overlay object will keep the state of previous animation until the end of the
71
+ # video.
72
+ # Corresponds to the JSON property `animationEnd`
73
+ # @return [Google::Apis::TranscoderV1beta1::AnimationEnd]
74
+ attr_accessor :animation_end
75
+
76
+ # Display overlay object with fade animation.
77
+ # Corresponds to the JSON property `animationFade`
78
+ # @return [Google::Apis::TranscoderV1beta1::AnimationFade]
79
+ attr_accessor :animation_fade
80
+
81
+ # Display static overlay object.
82
+ # Corresponds to the JSON property `animationStatic`
83
+ # @return [Google::Apis::TranscoderV1beta1::AnimationStatic]
84
+ attr_accessor :animation_static
85
+
86
+ def initialize(**args)
87
+ update!(**args)
88
+ end
89
+
90
+ # Update properties of this object
91
+ def update!(**args)
92
+ @animation_end = args[:animation_end] if args.key?(:animation_end)
93
+ @animation_fade = args[:animation_fade] if args.key?(:animation_fade)
94
+ @animation_static = args[:animation_static] if args.key?(:animation_static)
95
+ end
96
+ end
97
+
98
+ # End previous overlay animation from the video. Without AnimationEnd, the
99
+ # overlay object will keep the state of previous animation until the end of the
100
+ # video.
101
+ class AnimationEnd
102
+ include Google::Apis::Core::Hashable
103
+
104
+ # The time to end overlay object, in seconds. Default: 0
105
+ # Corresponds to the JSON property `startTimeOffset`
106
+ # @return [String]
107
+ attr_accessor :start_time_offset
108
+
109
+ def initialize(**args)
110
+ update!(**args)
111
+ end
112
+
113
+ # Update properties of this object
114
+ def update!(**args)
115
+ @start_time_offset = args[:start_time_offset] if args.key?(:start_time_offset)
116
+ end
117
+ end
118
+
119
+ # Display overlay object with fade animation.
120
+ class AnimationFade
121
+ include Google::Apis::Core::Hashable
122
+
123
+ # The time to end the fade animation, in seconds. Default: `start_time_offset` +
124
+ # 1s
125
+ # Corresponds to the JSON property `endTimeOffset`
126
+ # @return [String]
127
+ attr_accessor :end_time_offset
128
+
129
+ # Required. Type of fade animation: `FADE_IN` or `FADE_OUT`.
130
+ # Corresponds to the JSON property `fadeType`
131
+ # @return [String]
132
+ attr_accessor :fade_type
133
+
134
+ # The time to start the fade animation, in seconds. Default: 0
135
+ # Corresponds to the JSON property `startTimeOffset`
136
+ # @return [String]
137
+ attr_accessor :start_time_offset
138
+
139
+ # 2D normalized coordinates. Default: ``0.0, 0.0``
140
+ # Corresponds to the JSON property `xy`
141
+ # @return [Google::Apis::TranscoderV1beta1::NormalizedCoordinate]
142
+ attr_accessor :xy
143
+
144
+ def initialize(**args)
145
+ update!(**args)
146
+ end
147
+
148
+ # Update properties of this object
149
+ def update!(**args)
150
+ @end_time_offset = args[:end_time_offset] if args.key?(:end_time_offset)
151
+ @fade_type = args[:fade_type] if args.key?(:fade_type)
152
+ @start_time_offset = args[:start_time_offset] if args.key?(:start_time_offset)
153
+ @xy = args[:xy] if args.key?(:xy)
154
+ end
155
+ end
156
+
157
+ # Display static overlay object.
158
+ class AnimationStatic
159
+ include Google::Apis::Core::Hashable
160
+
161
+ # The time to start displaying the overlay object, in seconds. Default: 0
162
+ # Corresponds to the JSON property `startTimeOffset`
163
+ # @return [String]
164
+ attr_accessor :start_time_offset
165
+
166
+ # 2D normalized coordinates. Default: ``0.0, 0.0``
167
+ # Corresponds to the JSON property `xy`
168
+ # @return [Google::Apis::TranscoderV1beta1::NormalizedCoordinate]
169
+ attr_accessor :xy
170
+
171
+ def initialize(**args)
172
+ update!(**args)
173
+ end
174
+
175
+ # Update properties of this object
176
+ def update!(**args)
177
+ @start_time_offset = args[:start_time_offset] if args.key?(:start_time_offset)
178
+ @xy = args[:xy] if args.key?(:xy)
179
+ end
180
+ end
181
+
182
+ # Audio preprocessing configuration.
183
+ class Audio
184
+ include Google::Apis::Core::Hashable
185
+
186
+ # Enable boosting high frequency components. The default is `false`.
187
+ # Corresponds to the JSON property `highBoost`
188
+ # @return [Boolean]
189
+ attr_accessor :high_boost
190
+ alias_method :high_boost?, :high_boost
191
+
192
+ # Enable boosting low frequency components. The default is `false`.
193
+ # Corresponds to the JSON property `lowBoost`
194
+ # @return [Boolean]
195
+ attr_accessor :low_boost
196
+ alias_method :low_boost?, :low_boost
197
+
198
+ # Specify audio loudness normalization in loudness units relative to full scale (
199
+ # LUFS). Enter a value between -24 and 0, where -24 is the Advanced Television
200
+ # Systems Committee (ATSC A/85), -23 is the EU R128 broadcast standard, -19 is
201
+ # the prior standard for online mono audio, -18 is the ReplayGain standard, -16
202
+ # is the prior standard for stereo audio, -14 is the new online audio standard
203
+ # recommended by Spotify, as well as Amazon Echo, and 0 disables normalization.
204
+ # The default is 0.
205
+ # Corresponds to the JSON property `lufs`
206
+ # @return [Float]
207
+ attr_accessor :lufs
208
+
209
+ def initialize(**args)
210
+ update!(**args)
211
+ end
212
+
213
+ # Update properties of this object
214
+ def update!(**args)
215
+ @high_boost = args[:high_boost] if args.key?(:high_boost)
216
+ @low_boost = args[:low_boost] if args.key?(:low_boost)
217
+ @lufs = args[:lufs] if args.key?(:lufs)
218
+ end
219
+ end
220
+
221
+ # The mapping for the `Job.edit_list` atoms with audio `EditAtom.inputs`.
222
+ class AudioAtom
223
+ include Google::Apis::Core::Hashable
224
+
225
+ # List of `Channel`s for this audio stream. for in-depth explanation.
226
+ # Corresponds to the JSON property `channels`
227
+ # @return [Array<Google::Apis::TranscoderV1beta1::AudioChannel>]
228
+ attr_accessor :channels
229
+
230
+ # Required. The `EditAtom.key` that references the atom with audio inputs in the
231
+ # `Job.edit_list`.
232
+ # Corresponds to the JSON property `key`
233
+ # @return [String]
234
+ attr_accessor :key
235
+
236
+ def initialize(**args)
237
+ update!(**args)
238
+ end
239
+
240
+ # Update properties of this object
241
+ def update!(**args)
242
+ @channels = args[:channels] if args.key?(:channels)
243
+ @key = args[:key] if args.key?(:key)
244
+ end
245
+ end
246
+
247
+ # The audio channel.
248
+ class AudioChannel
249
+ include Google::Apis::Core::Hashable
250
+
251
+ # List of `Job.inputs` for this audio channel.
252
+ # Corresponds to the JSON property `inputs`
253
+ # @return [Array<Google::Apis::TranscoderV1beta1::AudioChannelInput>]
254
+ attr_accessor :inputs
255
+
256
+ def initialize(**args)
257
+ update!(**args)
258
+ end
259
+
260
+ # Update properties of this object
261
+ def update!(**args)
262
+ @inputs = args[:inputs] if args.key?(:inputs)
263
+ end
264
+ end
265
+
266
+ # Identifies which input file, track, and channel should be used.
267
+ class AudioChannelInput
268
+ include Google::Apis::Core::Hashable
269
+
270
+ # Required. The zero-based index of the channel in the input file.
271
+ # Corresponds to the JSON property `channel`
272
+ # @return [Fixnum]
273
+ attr_accessor :channel
274
+
275
+ # Audio volume control in dB. Negative values decrease volume, positive values
276
+ # increase. The default is 0.
277
+ # Corresponds to the JSON property `gainDb`
278
+ # @return [Float]
279
+ attr_accessor :gain_db
280
+
281
+ # Required. The `Input.key` that identifies the input file.
282
+ # Corresponds to the JSON property `key`
283
+ # @return [String]
284
+ attr_accessor :key
285
+
286
+ # Required. The zero-based index of the track in the input file.
287
+ # Corresponds to the JSON property `track`
288
+ # @return [Fixnum]
289
+ attr_accessor :track
290
+
291
+ def initialize(**args)
292
+ update!(**args)
293
+ end
294
+
295
+ # Update properties of this object
296
+ def update!(**args)
297
+ @channel = args[:channel] if args.key?(:channel)
298
+ @gain_db = args[:gain_db] if args.key?(:gain_db)
299
+ @key = args[:key] if args.key?(:key)
300
+ @track = args[:track] if args.key?(:track)
301
+ end
302
+ end
303
+
304
+ # Audio stream resource.
305
+ class AudioStream
306
+ include Google::Apis::Core::Hashable
307
+
308
+ # Required. Audio bitrate in bits per second. Must be between 1 and 10,000,000.
309
+ # Corresponds to the JSON property `bitrateBps`
310
+ # @return [Fixnum]
311
+ attr_accessor :bitrate_bps
312
+
313
+ # Number of audio channels. Must be between 1 and 6. The default is 2.
314
+ # Corresponds to the JSON property `channelCount`
315
+ # @return [Fixnum]
316
+ attr_accessor :channel_count
317
+
318
+ # A list of channel names specifying layout of the audio channels. This only
319
+ # affects the metadata embedded in the container headers, if supported by the
320
+ # specified format. The default is `["fl", "fr"]`. Supported channel names: - '
321
+ # fl' - Front left channel - 'fr' - Front right channel - 'sl' - Side left
322
+ # channel - 'sr' - Side right channel - 'fc' - Front center channel - 'lfe' -
323
+ # Low frequency
324
+ # Corresponds to the JSON property `channelLayout`
325
+ # @return [Array<String>]
326
+ attr_accessor :channel_layout
327
+
328
+ # The codec for this audio stream. The default is `"aac"`. Supported audio
329
+ # codecs: - 'aac' - 'aac-he' - 'aac-he-v2' - 'mp3' - 'ac3' - 'eac3'
330
+ # Corresponds to the JSON property `codec`
331
+ # @return [String]
332
+ attr_accessor :codec
333
+
334
+ # The mapping for the `Job.edit_list` atoms with audio `EditAtom.inputs`.
335
+ # Corresponds to the JSON property `mapping`
336
+ # @return [Array<Google::Apis::TranscoderV1beta1::AudioAtom>]
337
+ attr_accessor :mapping
338
+
339
+ # The audio sample rate in Hertz. The default is 48000 Hertz.
340
+ # Corresponds to the JSON property `sampleRateHertz`
341
+ # @return [Fixnum]
342
+ attr_accessor :sample_rate_hertz
343
+
344
+ def initialize(**args)
345
+ update!(**args)
346
+ end
347
+
348
+ # Update properties of this object
349
+ def update!(**args)
350
+ @bitrate_bps = args[:bitrate_bps] if args.key?(:bitrate_bps)
351
+ @channel_count = args[:channel_count] if args.key?(:channel_count)
352
+ @channel_layout = args[:channel_layout] if args.key?(:channel_layout)
353
+ @codec = args[:codec] if args.key?(:codec)
354
+ @mapping = args[:mapping] if args.key?(:mapping)
355
+ @sample_rate_hertz = args[:sample_rate_hertz] if args.key?(:sample_rate_hertz)
356
+ end
357
+ end
358
+
359
+ # Color preprocessing configuration.
360
+ class Color
361
+ include Google::Apis::Core::Hashable
362
+
363
+ # Control brightness of the video. Enter a value between -1 and 1, where -1 is
364
+ # minimum brightness and 1 is maximum brightness. 0 is no change. The default is
365
+ # 0.
366
+ # Corresponds to the JSON property `brightness`
367
+ # @return [Float]
368
+ attr_accessor :brightness
369
+
370
+ # Control black and white contrast of the video. Enter a value between -1 and 1,
371
+ # where -1 is minimum contrast and 1 is maximum contrast. 0 is no change. The
372
+ # default is 0.
373
+ # Corresponds to the JSON property `contrast`
374
+ # @return [Float]
375
+ attr_accessor :contrast
376
+
377
+ # Control color saturation of the video. Enter a value between -1 and 1, where -
378
+ # 1 is fully desaturated and 1 is maximum saturation. 0 is no change. The
379
+ # default is 0.
380
+ # Corresponds to the JSON property `saturation`
381
+ # @return [Float]
382
+ attr_accessor :saturation
383
+
384
+ def initialize(**args)
385
+ update!(**args)
386
+ end
387
+
388
+ # Update properties of this object
389
+ def update!(**args)
390
+ @brightness = args[:brightness] if args.key?(:brightness)
391
+ @contrast = args[:contrast] if args.key?(:contrast)
392
+ @saturation = args[:saturation] if args.key?(:saturation)
393
+ end
394
+ end
395
+
396
+ # Video cropping configuration.
397
+ class Crop
398
+ include Google::Apis::Core::Hashable
399
+
400
+ # The number of pixels to crop from the bottom. The default is 0.
401
+ # Corresponds to the JSON property `bottomPixels`
402
+ # @return [Fixnum]
403
+ attr_accessor :bottom_pixels
404
+
405
+ # The number of pixels to crop from the left. The default is 0.
406
+ # Corresponds to the JSON property `leftPixels`
407
+ # @return [Fixnum]
408
+ attr_accessor :left_pixels
409
+
410
+ # The number of pixels to crop from the right. The default is 0.
411
+ # Corresponds to the JSON property `rightPixels`
412
+ # @return [Fixnum]
413
+ attr_accessor :right_pixels
414
+
415
+ # The number of pixels to crop from the top. The default is 0.
416
+ # Corresponds to the JSON property `topPixels`
417
+ # @return [Fixnum]
418
+ attr_accessor :top_pixels
419
+
420
+ def initialize(**args)
421
+ update!(**args)
422
+ end
423
+
424
+ # Update properties of this object
425
+ def update!(**args)
426
+ @bottom_pixels = args[:bottom_pixels] if args.key?(:bottom_pixels)
427
+ @left_pixels = args[:left_pixels] if args.key?(:left_pixels)
428
+ @right_pixels = args[:right_pixels] if args.key?(:right_pixels)
429
+ @top_pixels = args[:top_pixels] if args.key?(:top_pixels)
430
+ end
431
+ end
432
+
433
+ # Deblock preprocessing configuration.
434
+ class Deblock
435
+ include Google::Apis::Core::Hashable
436
+
437
+ # Enable deblocker. The default is `false`.
438
+ # Corresponds to the JSON property `enabled`
439
+ # @return [Boolean]
440
+ attr_accessor :enabled
441
+ alias_method :enabled?, :enabled
442
+
443
+ # Set strength of the deblocker. Enter a value between 0 and 1. The higher the
444
+ # value, the stronger the block removal. 0 is no deblocking. The default is 0.
445
+ # Corresponds to the JSON property `strength`
446
+ # @return [Float]
447
+ attr_accessor :strength
448
+
449
+ def initialize(**args)
450
+ update!(**args)
451
+ end
452
+
453
+ # Update properties of this object
454
+ def update!(**args)
455
+ @enabled = args[:enabled] if args.key?(:enabled)
456
+ @strength = args[:strength] if args.key?(:strength)
457
+ end
458
+ end
459
+
460
+ # Denoise preprocessing configuration.
461
+ class Denoise
462
+ include Google::Apis::Core::Hashable
463
+
464
+ # Set strength of the denoise. Enter a value between 0 and 1. The higher the
465
+ # value, the smoother the image. 0 is no denoising. The default is 0.
466
+ # Corresponds to the JSON property `strength`
467
+ # @return [Float]
468
+ attr_accessor :strength
469
+
470
+ # Set the denoiser mode. The default is `"standard"`. Supported denoiser modes: -
471
+ # 'standard' - 'grain'
472
+ # Corresponds to the JSON property `tune`
473
+ # @return [String]
474
+ attr_accessor :tune
475
+
476
+ def initialize(**args)
477
+ update!(**args)
478
+ end
479
+
480
+ # Update properties of this object
481
+ def update!(**args)
482
+ @strength = args[:strength] if args.key?(:strength)
483
+ @tune = args[:tune] if args.key?(:tune)
484
+ end
485
+ end
486
+
487
+ # Edit atom.
488
+ class EditAtom
489
+ include Google::Apis::Core::Hashable
490
+
491
+ # End time in seconds for the atom, relative to the input file timeline. When `
492
+ # end_time_offset` is not specified, the `inputs` are used until the end of the
493
+ # atom.
494
+ # Corresponds to the JSON property `endTimeOffset`
495
+ # @return [String]
496
+ attr_accessor :end_time_offset
497
+
498
+ # List of `Input.key`s identifying files that should be used in this atom. The
499
+ # listed `inputs` must have the same timeline.
500
+ # Corresponds to the JSON property `inputs`
501
+ # @return [Array<String>]
502
+ attr_accessor :inputs
503
+
504
+ # A unique key for this atom. Must be specified when using advanced mapping.
505
+ # Corresponds to the JSON property `key`
506
+ # @return [String]
507
+ attr_accessor :key
508
+
509
+ # Start time in seconds for the atom, relative to the input file timeline. The
510
+ # default is `0s`.
511
+ # Corresponds to the JSON property `startTimeOffset`
512
+ # @return [String]
513
+ attr_accessor :start_time_offset
514
+
515
+ def initialize(**args)
516
+ update!(**args)
517
+ end
518
+
519
+ # Update properties of this object
520
+ def update!(**args)
521
+ @end_time_offset = args[:end_time_offset] if args.key?(:end_time_offset)
522
+ @inputs = args[:inputs] if args.key?(:inputs)
523
+ @key = args[:key] if args.key?(:key)
524
+ @start_time_offset = args[:start_time_offset] if args.key?(:start_time_offset)
525
+ end
526
+ end
527
+
528
+ # Encoding of an input file such as an audio, video, or text track. Elementary
529
+ # streams must be packaged before mapping and sharing between different output
530
+ # formats.
531
+ class ElementaryStream
532
+ include Google::Apis::Core::Hashable
533
+
534
+ # Audio stream resource.
535
+ # Corresponds to the JSON property `audioStream`
536
+ # @return [Google::Apis::TranscoderV1beta1::AudioStream]
537
+ attr_accessor :audio_stream
538
+
539
+ # A unique key for this elementary stream.
540
+ # Corresponds to the JSON property `key`
541
+ # @return [String]
542
+ attr_accessor :key
543
+
544
+ # Encoding of a text stream. For example, closed captions or subtitles.
545
+ # Corresponds to the JSON property `textStream`
546
+ # @return [Google::Apis::TranscoderV1beta1::TextStream]
547
+ attr_accessor :text_stream
548
+
549
+ # Video stream resource.
550
+ # Corresponds to the JSON property `videoStream`
551
+ # @return [Google::Apis::TranscoderV1beta1::VideoStream]
552
+ attr_accessor :video_stream
553
+
554
+ def initialize(**args)
555
+ update!(**args)
556
+ end
557
+
558
+ # Update properties of this object
559
+ def update!(**args)
560
+ @audio_stream = args[:audio_stream] if args.key?(:audio_stream)
561
+ @key = args[:key] if args.key?(:key)
562
+ @text_stream = args[:text_stream] if args.key?(:text_stream)
563
+ @video_stream = args[:video_stream] if args.key?(:video_stream)
564
+ end
565
+ end
566
+
567
+ # A generic empty message that you can re-use to avoid defining duplicated empty
568
+ # messages in your APIs. A typical example is to use it as the request or the
569
+ # response type of an API method. For instance: service Foo ` rpc Bar(google.
570
+ # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
571
+ # `Empty` is empty JSON object ````.
572
+ class Empty
573
+ include Google::Apis::Core::Hashable
574
+
575
+ def initialize(**args)
576
+ update!(**args)
577
+ end
578
+
579
+ # Update properties of this object
580
+ def update!(**args)
581
+ end
582
+ end
583
+
584
+ # Encryption settings.
585
+ class Encryption
586
+ include Google::Apis::Core::Hashable
587
+
588
+ # Configuration for AES-128 encryption.
589
+ # Corresponds to the JSON property `aes128`
590
+ # @return [Google::Apis::TranscoderV1beta1::Aes128Encryption]
591
+ attr_accessor :aes128
592
+
593
+ # Required. 128 bit Initialization Vector (IV) represented as lowercase
594
+ # hexadecimal digits.
595
+ # Corresponds to the JSON property `iv`
596
+ # @return [String]
597
+ attr_accessor :iv
598
+
599
+ # Required. 128 bit encryption key represented as lowercase hexadecimal digits.
600
+ # Corresponds to the JSON property `key`
601
+ # @return [String]
602
+ attr_accessor :key
603
+
604
+ # Configuration for MPEG Common Encryption (MPEG-CENC).
605
+ # Corresponds to the JSON property `mpegCenc`
606
+ # @return [Google::Apis::TranscoderV1beta1::MpegCommonEncryption]
607
+ attr_accessor :mpeg_cenc
608
+
609
+ # Configuration for SAMPLE-AES encryption.
610
+ # Corresponds to the JSON property `sampleAes`
611
+ # @return [Google::Apis::TranscoderV1beta1::SampleAesEncryption]
612
+ attr_accessor :sample_aes
613
+
614
+ def initialize(**args)
615
+ update!(**args)
616
+ end
617
+
618
+ # Update properties of this object
619
+ def update!(**args)
620
+ @aes128 = args[:aes128] if args.key?(:aes128)
621
+ @iv = args[:iv] if args.key?(:iv)
622
+ @key = args[:key] if args.key?(:key)
623
+ @mpeg_cenc = args[:mpeg_cenc] if args.key?(:mpeg_cenc)
624
+ @sample_aes = args[:sample_aes] if args.key?(:sample_aes)
625
+ end
626
+ end
627
+
628
+ # Additional information about the reasons for the failure.
629
+ class FailureDetail
630
+ include Google::Apis::Core::Hashable
631
+
632
+ # A description of the failure.
633
+ # Corresponds to the JSON property `description`
634
+ # @return [String]
635
+ attr_accessor :description
636
+
637
+ def initialize(**args)
638
+ update!(**args)
639
+ end
640
+
641
+ # Update properties of this object
642
+ def update!(**args)
643
+ @description = args[:description] if args.key?(:description)
644
+ end
645
+ end
646
+
647
+ # Overlaid jpeg image.
648
+ class Image
649
+ include Google::Apis::Core::Hashable
650
+
651
+ # Target image opacity. Valid values: `1` (solid, default), `0` (transparent).
652
+ # Corresponds to the JSON property `alpha`
653
+ # @return [Float]
654
+ attr_accessor :alpha
655
+
656
+ # 2D normalized coordinates. Default: ``0.0, 0.0``
657
+ # Corresponds to the JSON property `resolution`
658
+ # @return [Google::Apis::TranscoderV1beta1::NormalizedCoordinate]
659
+ attr_accessor :resolution
660
+
661
+ # Required. URI of the image in Cloud Storage. For example, `gs://bucket/inputs/
662
+ # image.jpeg`.
663
+ # Corresponds to the JSON property `uri`
664
+ # @return [String]
665
+ attr_accessor :uri
666
+
667
+ def initialize(**args)
668
+ update!(**args)
669
+ end
670
+
671
+ # Update properties of this object
672
+ def update!(**args)
673
+ @alpha = args[:alpha] if args.key?(:alpha)
674
+ @resolution = args[:resolution] if args.key?(:resolution)
675
+ @uri = args[:uri] if args.key?(:uri)
676
+ end
677
+ end
678
+
679
+ # Input asset.
680
+ class Input
681
+ include Google::Apis::Core::Hashable
682
+
683
+ # A unique key for this input. Must be specified when using advanced mapping and
684
+ # edit lists.
685
+ # Corresponds to the JSON property `key`
686
+ # @return [String]
687
+ attr_accessor :key
688
+
689
+ # Preprocessing configurations.
690
+ # Corresponds to the JSON property `preprocessingConfig`
691
+ # @return [Google::Apis::TranscoderV1beta1::PreprocessingConfig]
692
+ attr_accessor :preprocessing_config
693
+
694
+ # URI of the media. It must be stored in Cloud Storage. Example `gs://bucket/
695
+ # inputs/file.mp4`. If empty the value will be populated from `Job.input_uri`.
696
+ # Corresponds to the JSON property `uri`
697
+ # @return [String]
698
+ attr_accessor :uri
699
+
700
+ def initialize(**args)
701
+ update!(**args)
702
+ end
703
+
704
+ # Update properties of this object
705
+ def update!(**args)
706
+ @key = args[:key] if args.key?(:key)
707
+ @preprocessing_config = args[:preprocessing_config] if args.key?(:preprocessing_config)
708
+ @uri = args[:uri] if args.key?(:uri)
709
+ end
710
+ end
711
+
712
+ # Transcoding job resource.
713
+ class Job
714
+ include Google::Apis::Core::Hashable
715
+
716
+ # Job configuration
717
+ # Corresponds to the JSON property `config`
718
+ # @return [Google::Apis::TranscoderV1beta1::JobConfig]
719
+ attr_accessor :config
720
+
721
+ # Output only. The time the job was created.
722
+ # Corresponds to the JSON property `createTime`
723
+ # @return [String]
724
+ attr_accessor :create_time
725
+
726
+ # Output only. The time the transcoding finished.
727
+ # Corresponds to the JSON property `endTime`
728
+ # @return [String]
729
+ attr_accessor :end_time
730
+
731
+ # Output only. List of failure details. This property may contain additional
732
+ # information about the failure when `failure_reason` is present. *Note*: This
733
+ # feature is not yet available.
734
+ # Corresponds to the JSON property `failureDetails`
735
+ # @return [Array<Google::Apis::TranscoderV1beta1::FailureDetail>]
736
+ attr_accessor :failure_details
737
+
738
+ # Output only. A description of the reason for the failure. This property is
739
+ # always present when `state` is `FAILED`.
740
+ # Corresponds to the JSON property `failureReason`
741
+ # @return [String]
742
+ attr_accessor :failure_reason
743
+
744
+ # Input only. Specify the `input_uri` to populate empty `uri` fields in each
745
+ # element of `Job.config.inputs` or `JobTemplate.config.inputs` when using
746
+ # template. URI of the media. It must be stored in Cloud Storage. For example, `
747
+ # gs://bucket/inputs/file.mp4`.
748
+ # Corresponds to the JSON property `inputUri`
749
+ # @return [String]
750
+ attr_accessor :input_uri
751
+
752
+ # The resource name of the job. Format: `projects/`project`/locations/`location`/
753
+ # jobs/`job``
754
+ # Corresponds to the JSON property `name`
755
+ # @return [String]
756
+ attr_accessor :name
757
+
758
+ # The origin URI.
759
+ # Corresponds to the JSON property `originUri`
760
+ # @return [Google::Apis::TranscoderV1beta1::OriginUri]
761
+ attr_accessor :origin_uri
762
+
763
+ # Input only. Specify the `output_uri` to populate an empty `Job.config.output.
764
+ # uri` or `JobTemplate.config.output.uri` when using template. URI for the
765
+ # output file(s). For example, `gs://my-bucket/outputs/`.
766
+ # Corresponds to the JSON property `outputUri`
767
+ # @return [String]
768
+ attr_accessor :output_uri
769
+
770
+ # Specify the priority of the job. Enter a value between 0 and 100, where 0 is
771
+ # the lowest priority and 100 is the highest priority. The default is 0.
772
+ # Corresponds to the JSON property `priority`
773
+ # @return [Fixnum]
774
+ attr_accessor :priority
775
+
776
+ # Estimated fractional progress for each step, from `0` to `1`.
777
+ # Corresponds to the JSON property `progress`
778
+ # @return [Google::Apis::TranscoderV1beta1::Progress]
779
+ attr_accessor :progress
780
+
781
+ # Output only. The time the transcoding started.
782
+ # Corresponds to the JSON property `startTime`
783
+ # @return [String]
784
+ attr_accessor :start_time
785
+
786
+ # Output only. The current state of the job.
787
+ # Corresponds to the JSON property `state`
788
+ # @return [String]
789
+ attr_accessor :state
790
+
791
+ # Input only. Specify the `template_id` to use for populating `Job.config`. The
792
+ # default is `preset/web-hd`. Preset Transcoder templates: - `preset/`preset_id``
793
+ # - User defined JobTemplate: ``job_template_id``
794
+ # Corresponds to the JSON property `templateId`
795
+ # @return [String]
796
+ attr_accessor :template_id
797
+
798
+ def initialize(**args)
799
+ update!(**args)
800
+ end
801
+
802
+ # Update properties of this object
803
+ def update!(**args)
804
+ @config = args[:config] if args.key?(:config)
805
+ @create_time = args[:create_time] if args.key?(:create_time)
806
+ @end_time = args[:end_time] if args.key?(:end_time)
807
+ @failure_details = args[:failure_details] if args.key?(:failure_details)
808
+ @failure_reason = args[:failure_reason] if args.key?(:failure_reason)
809
+ @input_uri = args[:input_uri] if args.key?(:input_uri)
810
+ @name = args[:name] if args.key?(:name)
811
+ @origin_uri = args[:origin_uri] if args.key?(:origin_uri)
812
+ @output_uri = args[:output_uri] if args.key?(:output_uri)
813
+ @priority = args[:priority] if args.key?(:priority)
814
+ @progress = args[:progress] if args.key?(:progress)
815
+ @start_time = args[:start_time] if args.key?(:start_time)
816
+ @state = args[:state] if args.key?(:state)
817
+ @template_id = args[:template_id] if args.key?(:template_id)
818
+ end
819
+ end
820
+
821
+ # Job configuration
822
+ class JobConfig
823
+ include Google::Apis::Core::Hashable
824
+
825
+ # List of ad breaks. Specifies where to insert ad break tags in the output
826
+ # manifests.
827
+ # Corresponds to the JSON property `adBreaks`
828
+ # @return [Array<Google::Apis::TranscoderV1beta1::AdBreak>]
829
+ attr_accessor :ad_breaks
830
+
831
+ # List of `Edit atom`s. Defines the ultimate timeline of the resulting file or
832
+ # manifest.
833
+ # Corresponds to the JSON property `editList`
834
+ # @return [Array<Google::Apis::TranscoderV1beta1::EditAtom>]
835
+ attr_accessor :edit_list
836
+
837
+ # List of elementary streams.
838
+ # Corresponds to the JSON property `elementaryStreams`
839
+ # @return [Array<Google::Apis::TranscoderV1beta1::ElementaryStream>]
840
+ attr_accessor :elementary_streams
841
+
842
+ # List of input assets stored in Cloud Storage.
843
+ # Corresponds to the JSON property `inputs`
844
+ # @return [Array<Google::Apis::TranscoderV1beta1::Input>]
845
+ attr_accessor :inputs
846
+
847
+ # List of output manifests.
848
+ # Corresponds to the JSON property `manifests`
849
+ # @return [Array<Google::Apis::TranscoderV1beta1::Manifest>]
850
+ attr_accessor :manifests
851
+
852
+ # List of multiplexing settings for output streams.
853
+ # Corresponds to the JSON property `muxStreams`
854
+ # @return [Array<Google::Apis::TranscoderV1beta1::MuxStream>]
855
+ attr_accessor :mux_streams
856
+
857
+ # Location of output file(s) in a Cloud Storage bucket.
858
+ # Corresponds to the JSON property `output`
859
+ # @return [Google::Apis::TranscoderV1beta1::Output]
860
+ attr_accessor :output
861
+
862
+ # List of overlays on the output video, in descending Z-order.
863
+ # Corresponds to the JSON property `overlays`
864
+ # @return [Array<Google::Apis::TranscoderV1beta1::Overlay>]
865
+ attr_accessor :overlays
866
+
867
+ # A Pub/Sub destination.
868
+ # Corresponds to the JSON property `pubsubDestination`
869
+ # @return [Google::Apis::TranscoderV1beta1::PubsubDestination]
870
+ attr_accessor :pubsub_destination
871
+
872
+ # List of output sprite sheets.
873
+ # Corresponds to the JSON property `spriteSheets`
874
+ # @return [Array<Google::Apis::TranscoderV1beta1::SpriteSheet>]
875
+ attr_accessor :sprite_sheets
876
+
877
+ def initialize(**args)
878
+ update!(**args)
879
+ end
880
+
881
+ # Update properties of this object
882
+ def update!(**args)
883
+ @ad_breaks = args[:ad_breaks] if args.key?(:ad_breaks)
884
+ @edit_list = args[:edit_list] if args.key?(:edit_list)
885
+ @elementary_streams = args[:elementary_streams] if args.key?(:elementary_streams)
886
+ @inputs = args[:inputs] if args.key?(:inputs)
887
+ @manifests = args[:manifests] if args.key?(:manifests)
888
+ @mux_streams = args[:mux_streams] if args.key?(:mux_streams)
889
+ @output = args[:output] if args.key?(:output)
890
+ @overlays = args[:overlays] if args.key?(:overlays)
891
+ @pubsub_destination = args[:pubsub_destination] if args.key?(:pubsub_destination)
892
+ @sprite_sheets = args[:sprite_sheets] if args.key?(:sprite_sheets)
893
+ end
894
+ end
895
+
896
+ # Transcoding job template resource.
897
+ class JobTemplate
898
+ include Google::Apis::Core::Hashable
899
+
900
+ # Job configuration
901
+ # Corresponds to the JSON property `config`
902
+ # @return [Google::Apis::TranscoderV1beta1::JobConfig]
903
+ attr_accessor :config
904
+
905
+ # The resource name of the job template. Format: `projects/`project`/locations/`
906
+ # location`/jobTemplates/`job_template``
907
+ # Corresponds to the JSON property `name`
908
+ # @return [String]
909
+ attr_accessor :name
910
+
911
+ def initialize(**args)
912
+ update!(**args)
913
+ end
914
+
915
+ # Update properties of this object
916
+ def update!(**args)
917
+ @config = args[:config] if args.key?(:config)
918
+ @name = args[:name] if args.key?(:name)
919
+ end
920
+ end
921
+
922
+ # Response message for `TranscoderService.ListJobTemplates`.
923
+ class ListJobTemplatesResponse
924
+ include Google::Apis::Core::Hashable
925
+
926
+ # List of job templates in the specified region.
927
+ # Corresponds to the JSON property `jobTemplates`
928
+ # @return [Array<Google::Apis::TranscoderV1beta1::JobTemplate>]
929
+ attr_accessor :job_templates
930
+
931
+ # The pagination token.
932
+ # Corresponds to the JSON property `nextPageToken`
933
+ # @return [String]
934
+ attr_accessor :next_page_token
935
+
936
+ def initialize(**args)
937
+ update!(**args)
938
+ end
939
+
940
+ # Update properties of this object
941
+ def update!(**args)
942
+ @job_templates = args[:job_templates] if args.key?(:job_templates)
943
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
944
+ end
945
+ end
946
+
947
+ # Response message for `TranscoderService.ListJobs`.
948
+ class ListJobsResponse
949
+ include Google::Apis::Core::Hashable
950
+
951
+ # List of jobs in the specified region.
952
+ # Corresponds to the JSON property `jobs`
953
+ # @return [Array<Google::Apis::TranscoderV1beta1::Job>]
954
+ attr_accessor :jobs
955
+
956
+ # The pagination token.
957
+ # Corresponds to the JSON property `nextPageToken`
958
+ # @return [String]
959
+ attr_accessor :next_page_token
960
+
961
+ def initialize(**args)
962
+ update!(**args)
963
+ end
964
+
965
+ # Update properties of this object
966
+ def update!(**args)
967
+ @jobs = args[:jobs] if args.key?(:jobs)
968
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
969
+ end
970
+ end
971
+
972
+ # Manifest configuration.
973
+ class Manifest
974
+ include Google::Apis::Core::Hashable
975
+
976
+ # The name of the generated file. The default is `"manifest"` with the extension
977
+ # suffix corresponding to the `Manifest.type`.
978
+ # Corresponds to the JSON property `fileName`
979
+ # @return [String]
980
+ attr_accessor :file_name
981
+
982
+ # Required. List of user given `MuxStream.key`s that should appear in this
983
+ # manifest. When `Manifest.type` is `HLS`, a media manifest with name `MuxStream.
984
+ # key` and `.m3u8` extension is generated for each element of the `Manifest.
985
+ # mux_streams`.
986
+ # Corresponds to the JSON property `muxStreams`
987
+ # @return [Array<String>]
988
+ attr_accessor :mux_streams
989
+
990
+ # Required. Type of the manifest, can be "HLS" or "DASH".
991
+ # Corresponds to the JSON property `type`
992
+ # @return [String]
993
+ attr_accessor :type
994
+
995
+ def initialize(**args)
996
+ update!(**args)
997
+ end
998
+
999
+ # Update properties of this object
1000
+ def update!(**args)
1001
+ @file_name = args[:file_name] if args.key?(:file_name)
1002
+ @mux_streams = args[:mux_streams] if args.key?(:mux_streams)
1003
+ @type = args[:type] if args.key?(:type)
1004
+ end
1005
+ end
1006
+
1007
+ # Configuration for MPEG Common Encryption (MPEG-CENC).
1008
+ class MpegCommonEncryption
1009
+ include Google::Apis::Core::Hashable
1010
+
1011
+ # Required. 128 bit Key ID represented as lowercase hexadecimal digits for use
1012
+ # with common encryption.
1013
+ # Corresponds to the JSON property `keyId`
1014
+ # @return [String]
1015
+ attr_accessor :key_id
1016
+
1017
+ # Required. Specify the encryption scheme. Supported encryption schemes: - 'cenc'
1018
+ # - 'cbcs'
1019
+ # Corresponds to the JSON property `scheme`
1020
+ # @return [String]
1021
+ attr_accessor :scheme
1022
+
1023
+ def initialize(**args)
1024
+ update!(**args)
1025
+ end
1026
+
1027
+ # Update properties of this object
1028
+ def update!(**args)
1029
+ @key_id = args[:key_id] if args.key?(:key_id)
1030
+ @scheme = args[:scheme] if args.key?(:scheme)
1031
+ end
1032
+ end
1033
+
1034
+ # Multiplexing settings for output stream.
1035
+ class MuxStream
1036
+ include Google::Apis::Core::Hashable
1037
+
1038
+ # The container format. The default is `"mp4"` Supported container formats: - '
1039
+ # ts' - 'fmp4'- the corresponding file extension is `".m4s"` - 'mp4' - 'vtt'
1040
+ # Corresponds to the JSON property `container`
1041
+ # @return [String]
1042
+ attr_accessor :container
1043
+
1044
+ # List of `ElementaryStream.key`s multiplexed in this stream.
1045
+ # Corresponds to the JSON property `elementaryStreams`
1046
+ # @return [Array<String>]
1047
+ attr_accessor :elementary_streams
1048
+
1049
+ # Encryption settings.
1050
+ # Corresponds to the JSON property `encryption`
1051
+ # @return [Google::Apis::TranscoderV1beta1::Encryption]
1052
+ attr_accessor :encryption
1053
+
1054
+ # The name of the generated file. The default is `MuxStream.key` with the
1055
+ # extension suffix corresponding to the `MuxStream.container`. Individual
1056
+ # segments also have an incremental 10-digit zero-padded suffix starting from 0
1057
+ # before the extension, such as `"mux_stream0000000123.ts"`.
1058
+ # Corresponds to the JSON property `fileName`
1059
+ # @return [String]
1060
+ attr_accessor :file_name
1061
+
1062
+ # A unique key for this multiplexed stream. HLS media manifests will be named `
1063
+ # MuxStream.key` with the `".m3u8"` extension suffix.
1064
+ # Corresponds to the JSON property `key`
1065
+ # @return [String]
1066
+ attr_accessor :key
1067
+
1068
+ # Segment settings for `"ts"`, `"fmp4"` and `"vtt"`.
1069
+ # Corresponds to the JSON property `segmentSettings`
1070
+ # @return [Google::Apis::TranscoderV1beta1::SegmentSettings]
1071
+ attr_accessor :segment_settings
1072
+
1073
+ def initialize(**args)
1074
+ update!(**args)
1075
+ end
1076
+
1077
+ # Update properties of this object
1078
+ def update!(**args)
1079
+ @container = args[:container] if args.key?(:container)
1080
+ @elementary_streams = args[:elementary_streams] if args.key?(:elementary_streams)
1081
+ @encryption = args[:encryption] if args.key?(:encryption)
1082
+ @file_name = args[:file_name] if args.key?(:file_name)
1083
+ @key = args[:key] if args.key?(:key)
1084
+ @segment_settings = args[:segment_settings] if args.key?(:segment_settings)
1085
+ end
1086
+ end
1087
+
1088
+ # 2D normalized coordinates. Default: ``0.0, 0.0``
1089
+ class NormalizedCoordinate
1090
+ include Google::Apis::Core::Hashable
1091
+
1092
+ # Normalized x coordinate.
1093
+ # Corresponds to the JSON property `x`
1094
+ # @return [Float]
1095
+ attr_accessor :x
1096
+
1097
+ # Normalized y coordinate.
1098
+ # Corresponds to the JSON property `y`
1099
+ # @return [Float]
1100
+ attr_accessor :y
1101
+
1102
+ def initialize(**args)
1103
+ update!(**args)
1104
+ end
1105
+
1106
+ # Update properties of this object
1107
+ def update!(**args)
1108
+ @x = args[:x] if args.key?(:x)
1109
+ @y = args[:y] if args.key?(:y)
1110
+ end
1111
+ end
1112
+
1113
+ # The origin URI.
1114
+ class OriginUri
1115
+ include Google::Apis::Core::Hashable
1116
+
1117
+ # Dash manifest URI. If multiple Dash manifests are created, only the first one
1118
+ # is listed.
1119
+ # Corresponds to the JSON property `dash`
1120
+ # @return [String]
1121
+ attr_accessor :dash
1122
+
1123
+ # HLS manifest URI per https://tools.ietf.org/html/rfc8216#section-4.3.4. If
1124
+ # multiple HLS manifests are created, only the first one is listed.
1125
+ # Corresponds to the JSON property `hls`
1126
+ # @return [String]
1127
+ attr_accessor :hls
1128
+
1129
+ def initialize(**args)
1130
+ update!(**args)
1131
+ end
1132
+
1133
+ # Update properties of this object
1134
+ def update!(**args)
1135
+ @dash = args[:dash] if args.key?(:dash)
1136
+ @hls = args[:hls] if args.key?(:hls)
1137
+ end
1138
+ end
1139
+
1140
+ # Location of output file(s) in a Cloud Storage bucket.
1141
+ class Output
1142
+ include Google::Apis::Core::Hashable
1143
+
1144
+ # URI for the output file(s). For example, `gs://my-bucket/outputs/`. If empty
1145
+ # the value is populated from `Job.output_uri`.
1146
+ # Corresponds to the JSON property `uri`
1147
+ # @return [String]
1148
+ attr_accessor :uri
1149
+
1150
+ def initialize(**args)
1151
+ update!(**args)
1152
+ end
1153
+
1154
+ # Update properties of this object
1155
+ def update!(**args)
1156
+ @uri = args[:uri] if args.key?(:uri)
1157
+ end
1158
+ end
1159
+
1160
+ # Overlay configuration.
1161
+ class Overlay
1162
+ include Google::Apis::Core::Hashable
1163
+
1164
+ # List of Animations. The list should be chronological, without any time overlap.
1165
+ # Corresponds to the JSON property `animations`
1166
+ # @return [Array<Google::Apis::TranscoderV1beta1::Animation>]
1167
+ attr_accessor :animations
1168
+
1169
+ # Overlaid jpeg image.
1170
+ # Corresponds to the JSON property `image`
1171
+ # @return [Google::Apis::TranscoderV1beta1::Image]
1172
+ attr_accessor :image
1173
+
1174
+ def initialize(**args)
1175
+ update!(**args)
1176
+ end
1177
+
1178
+ # Update properties of this object
1179
+ def update!(**args)
1180
+ @animations = args[:animations] if args.key?(:animations)
1181
+ @image = args[:image] if args.key?(:image)
1182
+ end
1183
+ end
1184
+
1185
+ # Preprocessing configurations.
1186
+ class PreprocessingConfig
1187
+ include Google::Apis::Core::Hashable
1188
+
1189
+ # Audio preprocessing configuration.
1190
+ # Corresponds to the JSON property `audio`
1191
+ # @return [Google::Apis::TranscoderV1beta1::Audio]
1192
+ attr_accessor :audio
1193
+
1194
+ # Color preprocessing configuration.
1195
+ # Corresponds to the JSON property `color`
1196
+ # @return [Google::Apis::TranscoderV1beta1::Color]
1197
+ attr_accessor :color
1198
+
1199
+ # Video cropping configuration.
1200
+ # Corresponds to the JSON property `crop`
1201
+ # @return [Google::Apis::TranscoderV1beta1::Crop]
1202
+ attr_accessor :crop
1203
+
1204
+ # Deblock preprocessing configuration.
1205
+ # Corresponds to the JSON property `deblock`
1206
+ # @return [Google::Apis::TranscoderV1beta1::Deblock]
1207
+ attr_accessor :deblock
1208
+
1209
+ # Denoise preprocessing configuration.
1210
+ # Corresponds to the JSON property `denoise`
1211
+ # @return [Google::Apis::TranscoderV1beta1::Denoise]
1212
+ attr_accessor :denoise
1213
+
1214
+ def initialize(**args)
1215
+ update!(**args)
1216
+ end
1217
+
1218
+ # Update properties of this object
1219
+ def update!(**args)
1220
+ @audio = args[:audio] if args.key?(:audio)
1221
+ @color = args[:color] if args.key?(:color)
1222
+ @crop = args[:crop] if args.key?(:crop)
1223
+ @deblock = args[:deblock] if args.key?(:deblock)
1224
+ @denoise = args[:denoise] if args.key?(:denoise)
1225
+ end
1226
+ end
1227
+
1228
+ # Estimated fractional progress for each step, from `0` to `1`.
1229
+ class Progress
1230
+ include Google::Apis::Core::Hashable
1231
+
1232
+ # Estimated fractional progress for `analyzing` step.
1233
+ # Corresponds to the JSON property `analyzed`
1234
+ # @return [Float]
1235
+ attr_accessor :analyzed
1236
+
1237
+ # Estimated fractional progress for `encoding` step.
1238
+ # Corresponds to the JSON property `encoded`
1239
+ # @return [Float]
1240
+ attr_accessor :encoded
1241
+
1242
+ # Estimated fractional progress for `notifying` step.
1243
+ # Corresponds to the JSON property `notified`
1244
+ # @return [Float]
1245
+ attr_accessor :notified
1246
+
1247
+ # Estimated fractional progress for `uploading` step.
1248
+ # Corresponds to the JSON property `uploaded`
1249
+ # @return [Float]
1250
+ attr_accessor :uploaded
1251
+
1252
+ def initialize(**args)
1253
+ update!(**args)
1254
+ end
1255
+
1256
+ # Update properties of this object
1257
+ def update!(**args)
1258
+ @analyzed = args[:analyzed] if args.key?(:analyzed)
1259
+ @encoded = args[:encoded] if args.key?(:encoded)
1260
+ @notified = args[:notified] if args.key?(:notified)
1261
+ @uploaded = args[:uploaded] if args.key?(:uploaded)
1262
+ end
1263
+ end
1264
+
1265
+ # A Pub/Sub destination.
1266
+ class PubsubDestination
1267
+ include Google::Apis::Core::Hashable
1268
+
1269
+ # The name of the Pub/Sub topic to publish job completion notification to. For
1270
+ # example: `projects/`project`/topics/`topic``.
1271
+ # Corresponds to the JSON property `topic`
1272
+ # @return [String]
1273
+ attr_accessor :topic
1274
+
1275
+ def initialize(**args)
1276
+ update!(**args)
1277
+ end
1278
+
1279
+ # Update properties of this object
1280
+ def update!(**args)
1281
+ @topic = args[:topic] if args.key?(:topic)
1282
+ end
1283
+ end
1284
+
1285
+ # Configuration for SAMPLE-AES encryption.
1286
+ class SampleAesEncryption
1287
+ include Google::Apis::Core::Hashable
1288
+
1289
+ # Required. URI of the key delivery service. This URI is inserted into the M3U8
1290
+ # header.
1291
+ # Corresponds to the JSON property `keyUri`
1292
+ # @return [String]
1293
+ attr_accessor :key_uri
1294
+
1295
+ def initialize(**args)
1296
+ update!(**args)
1297
+ end
1298
+
1299
+ # Update properties of this object
1300
+ def update!(**args)
1301
+ @key_uri = args[:key_uri] if args.key?(:key_uri)
1302
+ end
1303
+ end
1304
+
1305
+ # Segment settings for `"ts"`, `"fmp4"` and `"vtt"`.
1306
+ class SegmentSettings
1307
+ include Google::Apis::Core::Hashable
1308
+
1309
+ # Required. Create an individual segment file. The default is `false`.
1310
+ # Corresponds to the JSON property `individualSegments`
1311
+ # @return [Boolean]
1312
+ attr_accessor :individual_segments
1313
+ alias_method :individual_segments?, :individual_segments
1314
+
1315
+ # Duration of the segments in seconds. The default is `"6.0s"`.
1316
+ # Corresponds to the JSON property `segmentDuration`
1317
+ # @return [String]
1318
+ attr_accessor :segment_duration
1319
+
1320
+ def initialize(**args)
1321
+ update!(**args)
1322
+ end
1323
+
1324
+ # Update properties of this object
1325
+ def update!(**args)
1326
+ @individual_segments = args[:individual_segments] if args.key?(:individual_segments)
1327
+ @segment_duration = args[:segment_duration] if args.key?(:segment_duration)
1328
+ end
1329
+ end
1330
+
1331
+ # Sprite sheet configuration.
1332
+ class SpriteSheet
1333
+ include Google::Apis::Core::Hashable
1334
+
1335
+ # The maximum number of sprites per row in a sprite sheet. The default is 0,
1336
+ # which indicates no maximum limit.
1337
+ # Corresponds to the JSON property `columnCount`
1338
+ # @return [Fixnum]
1339
+ attr_accessor :column_count
1340
+
1341
+ # End time in seconds, relative to the output file timeline. When `
1342
+ # end_time_offset` is not specified, the sprites are generated until the end of
1343
+ # the output file.
1344
+ # Corresponds to the JSON property `endTimeOffset`
1345
+ # @return [String]
1346
+ attr_accessor :end_time_offset
1347
+
1348
+ # Required. File name prefix for the generated sprite sheets. Each sprite sheet
1349
+ # has an incremental 10-digit zero-padded suffix starting from 0 before the
1350
+ # extension, such as `"sprite_sheet0000000123.jpeg"`.
1351
+ # Corresponds to the JSON property `filePrefix`
1352
+ # @return [String]
1353
+ attr_accessor :file_prefix
1354
+
1355
+ # Format type. The default is `"jpeg"`. Supported formats: - 'jpeg'
1356
+ # Corresponds to the JSON property `format`
1357
+ # @return [String]
1358
+ attr_accessor :format
1359
+
1360
+ # Starting from `0s`, create sprites at regular intervals. Specify the interval
1361
+ # value in seconds.
1362
+ # Corresponds to the JSON property `interval`
1363
+ # @return [String]
1364
+ attr_accessor :interval
1365
+
1366
+ # The maximum number of rows per sprite sheet. When the sprite sheet is full, a
1367
+ # new sprite sheet is created. The default is 0, which indicates no maximum
1368
+ # limit.
1369
+ # Corresponds to the JSON property `rowCount`
1370
+ # @return [Fixnum]
1371
+ attr_accessor :row_count
1372
+
1373
+ # Required. The height of sprite in pixels. Must be an even integer.
1374
+ # Corresponds to the JSON property `spriteHeightPixels`
1375
+ # @return [Fixnum]
1376
+ attr_accessor :sprite_height_pixels
1377
+
1378
+ # Required. The width of sprite in pixels. Must be an even integer.
1379
+ # Corresponds to the JSON property `spriteWidthPixels`
1380
+ # @return [Fixnum]
1381
+ attr_accessor :sprite_width_pixels
1382
+
1383
+ # Start time in seconds, relative to the output file timeline. Determines the
1384
+ # first sprite to pick. The default is `0s`.
1385
+ # Corresponds to the JSON property `startTimeOffset`
1386
+ # @return [String]
1387
+ attr_accessor :start_time_offset
1388
+
1389
+ # Total number of sprites. Create the specified number of sprites distributed
1390
+ # evenly across the timeline of the output media. The default is 100.
1391
+ # Corresponds to the JSON property `totalCount`
1392
+ # @return [Fixnum]
1393
+ attr_accessor :total_count
1394
+
1395
+ def initialize(**args)
1396
+ update!(**args)
1397
+ end
1398
+
1399
+ # Update properties of this object
1400
+ def update!(**args)
1401
+ @column_count = args[:column_count] if args.key?(:column_count)
1402
+ @end_time_offset = args[:end_time_offset] if args.key?(:end_time_offset)
1403
+ @file_prefix = args[:file_prefix] if args.key?(:file_prefix)
1404
+ @format = args[:format] if args.key?(:format)
1405
+ @interval = args[:interval] if args.key?(:interval)
1406
+ @row_count = args[:row_count] if args.key?(:row_count)
1407
+ @sprite_height_pixels = args[:sprite_height_pixels] if args.key?(:sprite_height_pixels)
1408
+ @sprite_width_pixels = args[:sprite_width_pixels] if args.key?(:sprite_width_pixels)
1409
+ @start_time_offset = args[:start_time_offset] if args.key?(:start_time_offset)
1410
+ @total_count = args[:total_count] if args.key?(:total_count)
1411
+ end
1412
+ end
1413
+
1414
+ # The mapping for the `Job.edit_list` atoms with text `EditAtom.inputs`.
1415
+ class TextAtom
1416
+ include Google::Apis::Core::Hashable
1417
+
1418
+ # List of `Job.inputs` that should be embedded in this atom. Only one input is
1419
+ # supported.
1420
+ # Corresponds to the JSON property `inputs`
1421
+ # @return [Array<Google::Apis::TranscoderV1beta1::TextInput>]
1422
+ attr_accessor :inputs
1423
+
1424
+ # Required. The `EditAtom.key` that references atom with text inputs in the `Job.
1425
+ # edit_list`.
1426
+ # Corresponds to the JSON property `key`
1427
+ # @return [String]
1428
+ attr_accessor :key
1429
+
1430
+ def initialize(**args)
1431
+ update!(**args)
1432
+ end
1433
+
1434
+ # Update properties of this object
1435
+ def update!(**args)
1436
+ @inputs = args[:inputs] if args.key?(:inputs)
1437
+ @key = args[:key] if args.key?(:key)
1438
+ end
1439
+ end
1440
+
1441
+ # Identifies which input file and track should be used.
1442
+ class TextInput
1443
+ include Google::Apis::Core::Hashable
1444
+
1445
+ # Required. The `Input.key` that identifies the input file.
1446
+ # Corresponds to the JSON property `key`
1447
+ # @return [String]
1448
+ attr_accessor :key
1449
+
1450
+ # Required. The zero-based index of the track in the input file.
1451
+ # Corresponds to the JSON property `track`
1452
+ # @return [Fixnum]
1453
+ attr_accessor :track
1454
+
1455
+ def initialize(**args)
1456
+ update!(**args)
1457
+ end
1458
+
1459
+ # Update properties of this object
1460
+ def update!(**args)
1461
+ @key = args[:key] if args.key?(:key)
1462
+ @track = args[:track] if args.key?(:track)
1463
+ end
1464
+ end
1465
+
1466
+ # Encoding of a text stream. For example, closed captions or subtitles.
1467
+ class TextStream
1468
+ include Google::Apis::Core::Hashable
1469
+
1470
+ # The codec for this text stream. The default is `"webvtt"`. Supported text
1471
+ # codecs: - 'srt' - 'ttml' - 'cea608' - 'cea708' - 'webvtt'
1472
+ # Corresponds to the JSON property `codec`
1473
+ # @return [String]
1474
+ attr_accessor :codec
1475
+
1476
+ # Required. The BCP-47 language code, such as `"en-US"` or `"sr-Latn"`. For more
1477
+ # information, see https://www.unicode.org/reports/tr35/#
1478
+ # Unicode_locale_identifier.
1479
+ # Corresponds to the JSON property `languageCode`
1480
+ # @return [String]
1481
+ attr_accessor :language_code
1482
+
1483
+ # The mapping for the `Job.edit_list` atoms with text `EditAtom.inputs`.
1484
+ # Corresponds to the JSON property `mapping`
1485
+ # @return [Array<Google::Apis::TranscoderV1beta1::TextAtom>]
1486
+ attr_accessor :mapping
1487
+
1488
+ def initialize(**args)
1489
+ update!(**args)
1490
+ end
1491
+
1492
+ # Update properties of this object
1493
+ def update!(**args)
1494
+ @codec = args[:codec] if args.key?(:codec)
1495
+ @language_code = args[:language_code] if args.key?(:language_code)
1496
+ @mapping = args[:mapping] if args.key?(:mapping)
1497
+ end
1498
+ end
1499
+
1500
+ # Video stream resource.
1501
+ class VideoStream
1502
+ include Google::Apis::Core::Hashable
1503
+
1504
+ # Specifies whether an open Group of Pictures (GOP) structure should be allowed
1505
+ # or not. The default is `false`.
1506
+ # Corresponds to the JSON property `allowOpenGop`
1507
+ # @return [Boolean]
1508
+ attr_accessor :allow_open_gop
1509
+ alias_method :allow_open_gop?, :allow_open_gop
1510
+
1511
+ # Specify the intensity of the adaptive quantizer (AQ). Must be between 0 and 1,
1512
+ # where 0 disables the quantizer and 1 maximizes the quantizer. A higher value
1513
+ # equals a lower bitrate but smoother image. The default is 0.
1514
+ # Corresponds to the JSON property `aqStrength`
1515
+ # @return [Float]
1516
+ attr_accessor :aq_strength
1517
+
1518
+ # The number of consecutive B-frames. Must be greater than or equal to zero.
1519
+ # Must be less than `VideoStream.gop_frame_count` if set. The default is 0.
1520
+ # Corresponds to the JSON property `bFrameCount`
1521
+ # @return [Fixnum]
1522
+ attr_accessor :b_frame_count
1523
+
1524
+ # Allow B-pyramid for reference frame selection. This may not be supported on
1525
+ # all decoders. The default is `false`.
1526
+ # Corresponds to the JSON property `bPyramid`
1527
+ # @return [Boolean]
1528
+ attr_accessor :b_pyramid
1529
+ alias_method :b_pyramid?, :b_pyramid
1530
+
1531
+ # Required. The video bitrate in bits per second. Must be between 1 and 1,000,
1532
+ # 000,000.
1533
+ # Corresponds to the JSON property `bitrateBps`
1534
+ # @return [Fixnum]
1535
+ attr_accessor :bitrate_bps
1536
+
1537
+ # Codec type. The following codecs are supported: * `h264` (default) * `h265` * `
1538
+ # vp9`
1539
+ # Corresponds to the JSON property `codec`
1540
+ # @return [String]
1541
+ attr_accessor :codec
1542
+
1543
+ # Target CRF level. Must be between 10 and 36, where 10 is the highest quality
1544
+ # and 36 is the most efficient compression. The default is 21.
1545
+ # Corresponds to the JSON property `crfLevel`
1546
+ # @return [Fixnum]
1547
+ attr_accessor :crf_level
1548
+
1549
+ # Use two-pass encoding strategy to achieve better video quality. `VideoStream.
1550
+ # rate_control_mode` must be `"vbr"`. The default is `false`.
1551
+ # Corresponds to the JSON property `enableTwoPass`
1552
+ # @return [Boolean]
1553
+ attr_accessor :enable_two_pass
1554
+ alias_method :enable_two_pass?, :enable_two_pass
1555
+
1556
+ # The entropy coder to use. The default is `"cabac"`. Supported entropy coders: -
1557
+ # 'cavlc' - 'cabac'
1558
+ # Corresponds to the JSON property `entropyCoder`
1559
+ # @return [String]
1560
+ attr_accessor :entropy_coder
1561
+
1562
+ # Required. The target video frame rate in frames per second (FPS). Must be less
1563
+ # than or equal to 120. Will default to the input frame rate if larger than the
1564
+ # input frame rate. The API will generate an output FPS that is divisible by the
1565
+ # input FPS, and smaller or equal to the target FPS. The following table shows
1566
+ # the computed video FPS given the target FPS (in parenthesis) and input FPS (in
1567
+ # the first column): | | (30) | (60) | (25) | (50) | |--------|--------|--------|
1568
+ # ------|------| | 240 | Fail | Fail | Fail | Fail | | 120 | 30 | 60 | 20 | 30 |
1569
+ # | 100 | 25 | 50 | 20 | 30 | | 50 | 25 | 50 | 20 | 30 | | 60 | 30 | 60 | 20 |
1570
+ # 30 | | 59.94 | 29.97 | 59.94 | 20 | 30 | | 48 | 24 | 48 | 20 | 30 | | 30 | 30 |
1571
+ # 30 | 20 | 30 | | 25 | 25 | 25 | 20 | 30 | | 24 | 24 | 24 | 20 | 30 | | 23.976
1572
+ # | 23.976 | 23.976 | 20 | 30 | | 15 | 15 | 15 | 20 | 30 | | 12 | 12 | 12 | 20 |
1573
+ # 30 | | 10 | 10 | 10 | 20 | 30 |
1574
+ # Corresponds to the JSON property `frameRate`
1575
+ # @return [Float]
1576
+ attr_accessor :frame_rate
1577
+
1578
+ # Select the GOP size based on the specified duration. The default is `"3s"`.
1579
+ # Corresponds to the JSON property `gopDuration`
1580
+ # @return [String]
1581
+ attr_accessor :gop_duration
1582
+
1583
+ # Select the GOP size based on the specified frame count. Must be greater than
1584
+ # zero.
1585
+ # Corresponds to the JSON property `gopFrameCount`
1586
+ # @return [Fixnum]
1587
+ attr_accessor :gop_frame_count
1588
+
1589
+ # The height of the video in pixels. Must be an even integer. When not specified,
1590
+ # the height is adjusted to match the specified width and input aspect ratio.
1591
+ # If both are omitted, the input height is used.
1592
+ # Corresponds to the JSON property `heightPixels`
1593
+ # @return [Fixnum]
1594
+ attr_accessor :height_pixels
1595
+
1596
+ # Pixel format to use. The default is `"yuv420p"`. Supported pixel formats: - '
1597
+ # yuv420p' pixel format. - 'yuv422p' pixel format. - 'yuv444p' pixel format. - '
1598
+ # yuv420p10' 10-bit HDR pixel format. - 'yuv422p10' 10-bit HDR pixel format. - '
1599
+ # yuv444p10' 10-bit HDR pixel format. - 'yuv420p12' 12-bit HDR pixel format. - '
1600
+ # yuv422p12' 12-bit HDR pixel format. - 'yuv444p12' 12-bit HDR pixel format.
1601
+ # Corresponds to the JSON property `pixelFormat`
1602
+ # @return [String]
1603
+ attr_accessor :pixel_format
1604
+
1605
+ # Enforces the specified codec preset. The default is `veryfast`. The available
1606
+ # options are FFmpeg-compatible. Note that certain values for this field may
1607
+ # cause the transcoder to override other fields you set in the `VideoStream`
1608
+ # message.
1609
+ # Corresponds to the JSON property `preset`
1610
+ # @return [String]
1611
+ attr_accessor :preset
1612
+
1613
+ # Enforces the specified codec profile. The following profiles are supported: * `
1614
+ # baseline` * `main` * `high` (default) The available options are FFmpeg-
1615
+ # compatible. Note that certain values for this field may cause the transcoder
1616
+ # to override other fields you set in the `VideoStream` message.
1617
+ # Corresponds to the JSON property `profile`
1618
+ # @return [String]
1619
+ attr_accessor :profile
1620
+
1621
+ # Specify the `rate_control_mode`. The default is `"vbr"`. Supported rate
1622
+ # control modes: - 'vbr' - variable bitrate - 'crf' - constant rate factor
1623
+ # Corresponds to the JSON property `rateControlMode`
1624
+ # @return [String]
1625
+ attr_accessor :rate_control_mode
1626
+
1627
+ # Enforces the specified codec tune. The available options are FFmpeg-compatible.
1628
+ # Note that certain values for this field may cause the transcoder to override
1629
+ # other fields you set in the `VideoStream` message.
1630
+ # Corresponds to the JSON property `tune`
1631
+ # @return [String]
1632
+ attr_accessor :tune
1633
+
1634
+ # Initial fullness of the Video Buffering Verifier (VBV) buffer in bits. Must be
1635
+ # greater than zero. The default is equal to 90% of `VideoStream.vbv_size_bits`.
1636
+ # Corresponds to the JSON property `vbvFullnessBits`
1637
+ # @return [Fixnum]
1638
+ attr_accessor :vbv_fullness_bits
1639
+
1640
+ # Size of the Video Buffering Verifier (VBV) buffer in bits. Must be greater
1641
+ # than zero. The default is equal to `VideoStream.bitrate_bps`.
1642
+ # Corresponds to the JSON property `vbvSizeBits`
1643
+ # @return [Fixnum]
1644
+ attr_accessor :vbv_size_bits
1645
+
1646
+ # The width of the video in pixels. Must be an even integer. When not specified,
1647
+ # the width is adjusted to match the specified height and input aspect ratio. If
1648
+ # both are omitted, the input width is used.
1649
+ # Corresponds to the JSON property `widthPixels`
1650
+ # @return [Fixnum]
1651
+ attr_accessor :width_pixels
1652
+
1653
+ def initialize(**args)
1654
+ update!(**args)
1655
+ end
1656
+
1657
+ # Update properties of this object
1658
+ def update!(**args)
1659
+ @allow_open_gop = args[:allow_open_gop] if args.key?(:allow_open_gop)
1660
+ @aq_strength = args[:aq_strength] if args.key?(:aq_strength)
1661
+ @b_frame_count = args[:b_frame_count] if args.key?(:b_frame_count)
1662
+ @b_pyramid = args[:b_pyramid] if args.key?(:b_pyramid)
1663
+ @bitrate_bps = args[:bitrate_bps] if args.key?(:bitrate_bps)
1664
+ @codec = args[:codec] if args.key?(:codec)
1665
+ @crf_level = args[:crf_level] if args.key?(:crf_level)
1666
+ @enable_two_pass = args[:enable_two_pass] if args.key?(:enable_two_pass)
1667
+ @entropy_coder = args[:entropy_coder] if args.key?(:entropy_coder)
1668
+ @frame_rate = args[:frame_rate] if args.key?(:frame_rate)
1669
+ @gop_duration = args[:gop_duration] if args.key?(:gop_duration)
1670
+ @gop_frame_count = args[:gop_frame_count] if args.key?(:gop_frame_count)
1671
+ @height_pixels = args[:height_pixels] if args.key?(:height_pixels)
1672
+ @pixel_format = args[:pixel_format] if args.key?(:pixel_format)
1673
+ @preset = args[:preset] if args.key?(:preset)
1674
+ @profile = args[:profile] if args.key?(:profile)
1675
+ @rate_control_mode = args[:rate_control_mode] if args.key?(:rate_control_mode)
1676
+ @tune = args[:tune] if args.key?(:tune)
1677
+ @vbv_fullness_bits = args[:vbv_fullness_bits] if args.key?(:vbv_fullness_bits)
1678
+ @vbv_size_bits = args[:vbv_size_bits] if args.key?(:vbv_size_bits)
1679
+ @width_pixels = args[:width_pixels] if args.key?(:width_pixels)
1680
+ end
1681
+ end
1682
+ end
1683
+ end
1684
+ end