Repository navigation
Conversation
…to copy existing vids
|
Updated this branch from master to resolve conflicts. Biggest was bringing the work from the View Media Metadata processor to add the join to original data functionality. Tested again, we can create new metadata and can use that as well as join legacy media. Even tested some very old media metadata and it recovers everything it can (ran into some older datasets that did not know posts were ads so could not be joined now since I do not understand the ruff CI that is failing; it is not on modified files in this PR. Maybe that CI is PR only? Regardless out of scope. |
…or YTDLP if repeat video with different URL
…(also check metadata from fail downloads w/ no items) and revert change that stopped counting copied videos. Also check `other_urls` for previously downloaded videos.
…; store original and resolved url, skip video_archive
…ok image downloader: only define metadata mapping once.
…it in image downloader
|
@stijn-uva alright. merged master here and made some updates based on changes in master to work with the metadata class and media archive. |
This pull request introduces a new, unified interface for reading and writing media archive metadata across processors, and refactors several processors to use this interface. The changes improve code maintainability, consistency, and reliability when working with media metadata. Additionally, a new
MediaArchiveLibraryclass is added to facilitate efficient reuse of previously downloaded media files. Several processors are updated to use the new metadata methods, and error handling is improved throughout.Unified media metadata handling and library:
read_media_metadataandnew_media_metadatamethods to theDataSetclass incommon/lib/dataset.py, providing a standard way to read and write media archive metadata using theMediaArchiveMetadataclass. This ensures all processors interact with metadata in a consistent manner.MediaArchiveLibraryclass incommon/lib/media_archive_library.py, which aggregates metadata from previous downloader runs, allowing processors to efficiently check for and reuse previously downloaded media files.MetadataExceptionclass tocommon/lib/exceptions.pyfor more precise error handling when working with metadata files.Notes and findings
MediaArchiveLibraryreplaced theDataSetVideoLibraryand is still only used by the video downloader, BUT could presumably be used by any downloader.stem.jsonand return only that with no proper mapping to verify. It was already an existing potential issue, I am just flagging it here.