How do I ensure that I'm not using the same footage twice?

I have a few hundred clips in my playlist.

I’ve gone through these and assembled most of them into a long video that I’m happy with.

However, during this process I found myself almost accidentally using the same footage twice. And to complicate matters, in many cases, I would chop up a source clip and use different segments at multiple times.

This is almost certainly a workflow issue on my end, but I am new to video editing and I just need to finish my project quickly.

I want to be sure that nowhere on the timeline I’m accidentally using the same footage twice. Using the same source clip multiple times is fine of course, as long as it’s different actual footage. (for example, I might use two segments from src_clip_02.mp4, say 00:05 to 00:15 and 00:20 to 00:30, but certainly not 00:05 to 00:15 and 00:10 to 00:20!)

It’s very possible that no one would notice if I accidentally did this, but after watching the final video a few times, I have caught this in one or two spots. I would just hate to accidentally catch this subtle mistake months down the road.

I also really don’t want to “manually audit” the entire project for this sort of mistake, as this would be an extremely time consuming and potentially error prone process. I would have to manually write down a list of all source clips and in/out timestamps. This sort of audit task is ideally suited to a computer.

I’m guessing this probably isn’t a feature that exists though, as I can’t seem to find any reference to this. I might need to write a python script that parses the mlt file. If I take this approach, what exactly would I be looking for in terms of how the mlt file is structured? It’s just an xml file of course, and it looks like I’m looking for “chainX” representing a clip on the timeline, with “in” and “out” as the relevant timestamps, with “resource” being the filename of the source clip? Is that correct?

I will share my code here once I finish it so others can use this feature.

You might find File > Export > EDL to be more convenient than the XML because it does not include the playlist if you have a timeline. Then, you can easily filter it for lines containing “FROM CLIP” using grep or a smart text editor. Then, you could sort it to look for duplicates. Or even, run it through uniq --repeated:

ddenn@DESKTOP-NQ2MLQA MINGW64 /c/Qt
$ grep "FROM CLIP" "Z:\unsorted\videos\test\test.edl" | sort | uniq --repeated
* FROM CLIP NAME: #00000000
* FROM CLIP NAME: IMG_0054.jpeg
* FROM CLIP NAME: IMG_0055.jpeg
* FROM CLIP NAME: IMG_0057.MOV
* FROM CLIP NAME: moto bay classic bg.png
* FROM CLIP NAME: motobayclassic title.png
* FROM CLIP NAME: Pachyderm_-_13_-_Happy_Song_instrumental.mp3
1 Like

Thank you so much! grep et all works perfectly for me, I will try that! :slight_smile:

Here is what I’ve been doing for now:

grep DSC vid01.edl | grep -v FROM | sort -k 2

and then just manually checking the ins and outs for the clip, which are the first and second timecode columns.

Next up will be a script that checks these ranges for overlap.

I did have a few very small overlaps in my project! Happy that I caught those.