I use Zotero and create Collections and sub-collections for each level in an archive, I do the same for the folder structure, if you are on Windows you would need to activate 32-bit file path (long file name) to be able to have the depth needed in your file and folder hierarchy…
I always download the media to the folder and give it a descriptive name, but keep the original file name in metadata.
I add the image/media to Gramps or any other software I use, then I use the Citation function in Zotero and copy the citation to Gramps in APA format.
I also use Obsidian, Foam and Zettlr for research logs/notes in addition to Aeon Timeline for timelines in my research…
I also use a few other software where I can add links to files with some limited description and/or metadata…
This way I can add the same media and have the same Citation format and/or Bibliography format in all the software I use. while I administrate all my sources and citations in one single software…
Multiple of the software I use, support some kind of interchangeable format or interoperability with Zotero…