Question:
Why are there a bunch of metadata.xml files in my Amazon S3 SnapStream Video folder?
Answer:
Each instance of video content on S3 will have a metadata.xml file paired with it. This small xml file contains all of the metadata that describes the details of that content within our software.
Some background on how this metadata works
Typically, our software will automatically tag clips and recordings with metadata describing a multitude of attributes about that content. This metadata is normally written into the video content itself when the recording or the clip creation process has been completed.
You can even view and edit this metadata by clicking the three dots next to the media item in your SnapStream Library, and clicking the Edit Details icon. An example of the type of metadata we are talking about is below.
If you edit the details of the media item by changing any of these attributes, then save it, SnapStream will automatically re-write the tags with the metadata in the content itself. This is no big deal when the content resides on a traditional file system. However, this can become an issue when that content resides at an S3 location.
Technical Details on metadata for SnapStream content at S3 locations.
You can't edit a file that resides on S3, but you can delete a file and make a new copy. In order to implement tagging changes, our software has to:
- Download the file from S3.
- Edit the file.
- Upload the edited file to S3.
- Delete the original file on S3.
- Rename the edited file on S3.
In the case of metatadata changes, it makes more sense to re-write a handful of bytes in a small xml file than it does to go through this process on the video content on S3.
Additional Notes:
- If the metadata.xml file is deleted for a video file on S3, editing the media item for that content using our software will generate a new metadata.xml file for that video.
- Using our software to move a media item from a SnapStream video folder that uses a traditional file system to a SnapStream folder that uses an S3 location will result in a metadata.xml file being generated at that S3 location when the move completes.
- If content was moved to S3, and the metadata for that media item was then changed in our software, that information would be updated in the metadata.xml file at the S3 location instead of changing the original metadata tags written to the video itself. To take this a bit further, if that video file gets copied off of the S3 location outside of our software without the metadata.xml file, that copied video file will be missing any updated changes to the metadata since it was put on S3. If this copied video file were to ever get refreshed or imported back into the SnapStream library without that metadata.xml file, the SnapStream Library will only see the original metadata that was written to the video file instead of any of the updated metadata changes done to it while SnapStream was managing it on S3.
Applies to Version:
SnapStream 9.0 and above