Editing slate metadata in Swift

Ask software engineering and SDK questions for developers working on Mac OS X, Windows or Linux.
  • Author
  • Message
Offline

SW-Daren

  • Posts: 2
  • Joined: Tue Mar 05, 2024 4:15 pm
  • Real Name: Daren Stottrup

Editing slate metadata in Swift

PostTue Mar 05, 2024 5:02 pm

I'm building a set of tools written in the Swift programming language for our in-house editing team. We capture footage using the Media Express application where we fill in the Scene, Reel, and Description metadata, but I can't figure out how to access it later in code. The Swift API has tools for accessing standard metadata, but it appears this is custom metadata that Media Express is writing elsewhere. Anyone know how I can go about this?

EDIT: we are capturing ProRes LT .mov footage.
Last edited by SW-Daren on Thu Mar 07, 2024 4:40 pm, edited 1 time in total.
Offline
User avatar

UweUwe

  • Posts: 5
  • Joined: Mon Mar 04, 2024 2:30 pm
  • Real Name: Uwe Michman

Re: Editing slate metadata in Swift

PostThu Mar 07, 2024 9:38 am

It seems like you're facing a common challenge when dealing with custom metadata. If the standard Swift API does not provide access to the metadata you need, you might need to use lower-level APIs or libraries specific to the format of your media files. Some media formats store custom metadata in separate 'sidecar' files, so you might need to read from those as well. As a last resort, you could consider reaching out to the support team of the Media Express application.
Offline

SW-Daren

  • Posts: 2
  • Joined: Tue Mar 05, 2024 4:15 pm
  • Real Name: Daren Stottrup

Re: Editing slate metadata in Swift

PostThu Mar 07, 2024 4:32 pm

Reaching out to them directly is a good idea, I'll try that. I do know the metadata is not in a sidecar, and for anyone else trying to find this, I was able to find half of what I was looking for. Still can't find where "Scene" gets stored.

If anyone else is looking for the "Reel" information on a ProRes .MOV file, I found that it gets stored in a dictionary under the key: "TimeCode_SourceReferenceName_Value". This dictionary lives in the extensions array of a property that describes the format of the media, inside the second (timecode) track of the video asset. So, using my own variables names, it looks something like this:
Code: Select all
video.tracks[1].description[0].extension[0]

Return to Software Developers

Who is online

Users browsing this forum: No registered users and 16 guests