sprocket-systems.coda.sdk 2.0.6__py3-none-any.whl → 2.0.8__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
coda/__init__.py CHANGED
@@ -1,5 +1,5 @@
1
1
  # The versions below will be replaced automatically in CI.
2
2
  # You do not need to modify any of the versions below.
3
- __version__ = "2.0.6"
4
- CODA_APP_SUITE_VERSION = "+coda-2.0.12"
3
+ __version__ = "2.0.8"
4
+ CODA_APP_SUITE_VERSION = "+coda-2.0.13"
5
5
  FINAL_VERSION = __version__ + CODA_APP_SUITE_VERSION
coda/sdk/constants.py CHANGED
@@ -7,8 +7,6 @@ ENV_CODA_API_TOKEN = "CODA_API_TOKEN"
7
7
  ENV_CODA_API_INSECURE_SKIP_VERIFY = "CODA_API_INSECURE_SKIP_VERIFY"
8
8
  ENV_CODA_CLI_EXE = "CODA_CLI_EXE"
9
9
  ENV_NO_CODA_EXE = "NO_CODA_EXE"
10
- ENV_S3_SRC_ROLE = "S3_SRC_ROLE"
11
- ENV_S3_SRC_EXTERNAL_ID = "S3_SRC_EXTERNAL_ID"
12
10
 
13
11
  # Default Values
14
12
  DEFAULT_API_URL = "https://v2.coda.sprocket.systems"
coda/sdk/essence.py CHANGED
@@ -219,6 +219,7 @@ class Essence:
219
219
  res["resource"]["auth"] = auth
220
220
  if opts is not None:
221
221
  res["resource"]["opts"] = opts
222
+ print(res)
222
223
  self.payload["definition"]["resources"].append(res)
223
224
 
224
225
  def override_stem_type(self, stem_type: InputStemType) -> None:
@@ -316,16 +317,22 @@ class Essence:
316
317
  io_location_id (str, optional): The IO Location ID associated with the source files. Required for agent transfers.
317
318
  file_info (dict, optional): Manual override info for files. Required for S3.
318
319
  Should contain keys like 'format', 'type', 'frames', 's3_auth'. Defaults to None.
319
- Example: file_info = {
320
+ Examples: file_info = {
320
321
  "frames": 720000,
321
322
  "format": Format.SEVEN_ONE,
322
323
  "type": InputStemType.PRINTMASTER,
323
324
  "s3_auth": {
324
- "role": os.getenv(ENV_S3_SRC_ROLE, "XXXX"),
325
- "external_id": os.getenv(ENV_S3_SRC_EXTERNAL_ID, "XXXX"),
325
+ "iam_role": os.getenv(ENV_S3_ROLE, "XXXX"),
326
+ "iam_external_id": os.getenv(ENV_S3_EXTERNAL_ID, "XXXX"),
326
327
  },
327
328
  "s3_options": {"region": "us-west-2"},
328
329
  }
330
+
331
+ Note: `s3_auth` may also use S3 access key secret and ID
332
+ "s3_auth": {
333
+ "access_key_id": os.getenv(ENV_S3_ACCESS_KEY_ID, "XXXX"),
334
+ "secret_access_key": os.getenv(ENV_S3_SECRET_ACCESS_KEY, "XXXX"),
335
+ }
329
336
  program (str, optional): The program identifier to assign to the essences.
330
337
  Defaults to "".
331
338
  forced_frame_rate (str, optional): Specify the frame rate to calculate the FFOA and LFOA
@@ -442,6 +449,7 @@ class Essence:
442
449
  essence = Essence(
443
450
  file_info["format"], stem_type=file_info["type"], program=program
444
451
  )
452
+
445
453
  res = [
446
454
  {
447
455
  "url": r,
coda/sdk/job.py CHANGED
@@ -361,13 +361,6 @@ class JobPayloadBuilder:
361
361
  lfoa = None
362
362
  fr = None
363
363
 
364
- for e in self._essences:
365
- essence_timing = e.payload["timing_info"]
366
- if essence_timing:
367
- ffoa = essence_timing["ffoa_timecode"]
368
- lfoa = essence_timing["lfoa_timecode"]
369
- fr = essence_timing["source_frame_rate"]
370
-
371
364
  if self._time_options.get("frame_rate"):
372
365
  fr = self._time_options.get("frame_rate")
373
366
  if self._time_options.get("ffoa"):
@@ -375,6 +368,17 @@ class JobPayloadBuilder:
375
368
  if self._time_options.get("lfoa"):
376
369
  lfoa = self._time_options.get("lfoa")
377
370
 
371
+ for e in self._essences:
372
+ current_timing = e.payload.get("timing_info") or {}
373
+ new_timing = dict(current_timing)
374
+ if not new_timing.get("ffoa_timecode"):
375
+ new_timing["ffoa_timecode"] = ffoa
376
+ if not new_timing.get("lfoa_timecode"):
377
+ new_timing["lfoa_timecode"] = lfoa
378
+ if not new_timing.get("source_frame_rate"):
379
+ new_timing["source_frame_rate"] = fr
380
+ e.payload["timing_info"] = new_timing
381
+
378
382
  sources = [e.dict() for e in self._essences]
379
383
 
380
384
  start_time = self._time_options.get("start_time")
coda/sdk/workflow.py CHANGED
@@ -995,7 +995,10 @@ class WorkflowDefinitionBuilder:
995
995
  venues = []
996
996
  for block_id in blist:
997
997
  block = self._process_blocks[block_id]
998
- venues.append(block["output_settings"]["venue"])
998
+ venue_type = block.get("output_settings").get("venue")
999
+ venue = self._ALL_FROM_ESSENCE if venue_type == self._SAME_AS_INPUT else venue_type
1000
+ venues.append(venue)
1001
+
999
1002
  for fr_original in output_frame_rates:
1000
1003
  for f_original in output_formats:
1001
1004
  for t_original in output_stem_types:
@@ -1078,7 +1081,10 @@ class WorkflowDefinitionBuilder:
1078
1081
 
1079
1082
  for block_id in blist:
1080
1083
  block = self._process_blocks[block_id]
1081
- venues.append(block["output_settings"]["venue"])
1084
+ venue_type = block.get("output_settings").get("venue")
1085
+ venue = self._ALL_FROM_ESSENCE if venue_type == self._SAME_AS_INPUT else venue_type
1086
+ venues.append(venue)
1087
+
1082
1088
  fmt = Format.ATMOS
1083
1089
  fr = self._SAME_AS_INPUT if output_frame_rate == self._ALL_FROM_ESSENCE else output_frame_rate
1084
1090
  st = self._SAME_AS_INPUT if output_stem_type == self._ALL_FROM_ESSENCE else output_stem_type
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sprocket-systems.coda.sdk
3
- Version: 2.0.6
3
+ Version: 2.0.8
4
4
  Summary: The Coda SDK provides a Python interface to define Coda workflows, create jobs and run them.
5
5
  Keywords: python,coda,sdk
6
6
  Author-Email: Sprocket Systems <support@sprocket.systems>
@@ -0,0 +1,15 @@
1
+ coda/__init__.py,sha256=vE1LP8NOlIPcHtFGopI2SkUBTkwyY8XPWQmGfz4PEzo,229
2
+ coda/sdk/__init__.py,sha256=wOCrh1piLbgLVOMhKuLFYA62n60IN89eXGHpFKwFAE4,691
3
+ coda/sdk/constants.py,sha256=DW-goGI4vTlt8KeR4z0sf89Duov4TgZdsjv1VJDuAQI,596
4
+ coda/sdk/enums.py,sha256=1l4pK8pNofV56WVAiQXitlY6m9iTfEv9I159GWkTZKE,6582
5
+ coda/sdk/essence.py,sha256=vSx2lp1I0yJvFNMcAWqF-I3BV9q_bRnZbtSEf_QArHg,20764
6
+ coda/sdk/job.py,sha256=WArS06ufJUZLDdx6wJHgwk2olYjtX3w_sJqPF_XEu6A,21538
7
+ coda/sdk/preset.py,sha256=OtaRVJU6luBBD_6Ehd8ZkcjXL_YVoXfziI14E-GS4Xw,8934
8
+ coda/sdk/utils.py,sha256=uC9hHJtMkGu3pLvJOwq9kIdf6r7KxMRAbzaRyf95EdQ,10565
9
+ coda/sdk/workflow.py,sha256=QpGvjkNuFKh5XyawC7HXyx-nmC4EKbdRc-6eIjaQ79Q,63171
10
+ coda/tc_tools.py,sha256=hEtVE6xtPqg93WfJ-lQdRQroPdQTkH5HkMLWCIkwIlo,22010
11
+ sprocket_systems_coda_sdk-2.0.8.dist-info/METADATA,sha256=AoA1LH1gdh3NEvIAWqWRYcWObwRLwVCXjwaHpR_LRvw,1106
12
+ sprocket_systems_coda_sdk-2.0.8.dist-info/WHEEL,sha256=tsUv_t7BDeJeRHaSrczbGeuK-TtDpGsWi_JfpzD255I,90
13
+ sprocket_systems_coda_sdk-2.0.8.dist-info/entry_points.txt,sha256=6OYgBcLyFCUgeqLgnvMyOJxPCWzgy7se4rLPKtNonMs,34
14
+ sprocket_systems_coda_sdk-2.0.8.dist-info/licenses/LICENSE,sha256=wrFjizFlraIAPW8JIteGftNH2laAZBBRhdEnPVUsKTM,10198
15
+ sprocket_systems_coda_sdk-2.0.8.dist-info/RECORD,,
@@ -1,15 +0,0 @@
1
- coda/__init__.py,sha256=e52umPb_buoXPUDoFPRK2lJpeuFNwbVGNfsRFwy5y3w,229
2
- coda/sdk/__init__.py,sha256=wOCrh1piLbgLVOMhKuLFYA62n60IN89eXGHpFKwFAE4,691
3
- coda/sdk/constants.py,sha256=HRWf8zE8IFVRy-2apsae4BSecXod3BsQiozaMkJkY88,674
4
- coda/sdk/enums.py,sha256=1l4pK8pNofV56WVAiQXitlY6m9iTfEv9I159GWkTZKE,6582
5
- coda/sdk/essence.py,sha256=x70SwSJWc95mHL8y9vHNc-hg5TDgy_TxPVykU7CVAqc,20414
6
- coda/sdk/job.py,sha256=DfQGI9bKoji_dPLqVoAiufNKeupSDg_kdkNSfaLDhs0,21315
7
- coda/sdk/preset.py,sha256=OtaRVJU6luBBD_6Ehd8ZkcjXL_YVoXfziI14E-GS4Xw,8934
8
- coda/sdk/utils.py,sha256=uC9hHJtMkGu3pLvJOwq9kIdf6r7KxMRAbzaRyf95EdQ,10565
9
- coda/sdk/workflow.py,sha256=4-r3hWUEabyzS1vA0Ql-1VY5FoQA3KNnWlhwqQ0umbw,62899
10
- coda/tc_tools.py,sha256=hEtVE6xtPqg93WfJ-lQdRQroPdQTkH5HkMLWCIkwIlo,22010
11
- sprocket_systems_coda_sdk-2.0.6.dist-info/METADATA,sha256=PRa_kJe7JPsmiRLHWuKhpHnnIjqcx8a9TLIGbu6QOVw,1106
12
- sprocket_systems_coda_sdk-2.0.6.dist-info/WHEEL,sha256=tsUv_t7BDeJeRHaSrczbGeuK-TtDpGsWi_JfpzD255I,90
13
- sprocket_systems_coda_sdk-2.0.6.dist-info/entry_points.txt,sha256=6OYgBcLyFCUgeqLgnvMyOJxPCWzgy7se4rLPKtNonMs,34
14
- sprocket_systems_coda_sdk-2.0.6.dist-info/licenses/LICENSE,sha256=wrFjizFlraIAPW8JIteGftNH2laAZBBRhdEnPVUsKTM,10198
15
- sprocket_systems_coda_sdk-2.0.6.dist-info/RECORD,,