View Full Version : How Can I Detect Scene Changes with Mvtools?
rec
4th January 2011, 11:49
Can anyone help me with this...
I'm using mvtools to convert a 60P movie to 24P, and it has hundreds of scene changes in it. Ideally, I'd like to do this in one pass. How can mvtools detect the scene changes? I've used depanestimate on it's own to successfully detect the scene changes. Is there some way to integrate it into the mvtools script?
:thanks:
hanfrunz
4th January 2011, 12:41
Hello rec,
Mug Funky wrote a function named EDLmaker, that detects scene changes and writes an edl: http://forum.doom9.org/showthread.php?t=145143
hanrunz
rec
5th January 2011, 00:55
Hello rec,
Mug Funky wrote a function named EDLmaker, that detects scene changes and writes an edl: http://forum.doom9.org/showthread.php?t=145143
hanrunz
Thanks, but I don't think it's what I need. I don't want to chop up the movie. All I want is for mvtools to know there is a scene change, so it can start fresh, so to speak.
Didée
5th January 2011, 01:05
MVTools already does scenechange detection. Sensibility can be adjusted via "thSCD1" and "thSCD2", see documentation.
rec
9th January 2011, 18:26
MVTools already does scenechange detection. Sensibility can be adjusted via "thSCD1" and "thSCD2", see documentation.
Thanks for the info, Didée. Upon further investigation, I realize mvtools IS correctly detecting the scene changes. What's happening is, since I am converting from a higher frame rate to a lower one, mvtools is creating a 1 frame dissolve at the scene change. It does this perhaps 50% of the time. The other 50% are clean cuts.
I don't know if anything can be done for this. But, if anybody has any ideas, speak up!
Didée
9th January 2011, 19:55
Are you using "blend=false" in MFlowFPS? If not, you should. (Default is false, btw).
Also, the default values thSCD1=400, thSCD2=130 often do not reckognize some scenechanges, especially in dimmed/dark scenery. lowering to sth like 350,90 is more safe in reckognizing scenechanges ... however, the more you lower these values, the more there is danger that the detection erroneously triggers during bright/complex scenery with lots of motion.
It's the old story of "hard thresholds" and "the SAD concept". Just because MVTools is made to detect motion, you shouldn't assume it were "intelligent" in any way.
BTW, what kind of framerate downconversion are you doing exactly? For integral downconversions (like 60i -> bob -> 30p), the benefit often isn't worth the effort ...
rec
9th January 2011, 22:56
Are you using "blend=false" in MFlowFPS? If not, you should. (Default is false, btw).
Also, the default values thSCD1=400, thSCD2=130 often do not reckognize some scenechanges, especially in dimmed/dark scenery. lowering to sth like 350,90 is more safe in reckognizing scenechanges ... however, the more you lower these values, the more there is danger that the detection erroneously triggers during bright/complex scenery with lots of motion.
It's the old story of "hard thresholds" and "the SAD concept". Just because MVTools is made to detect motion, you shouldn't assume it were "intelligent" in any way.
BTW, what kind of framerate downconversion are you doing exactly? For integral downconversions (like 60i -> bob -> 30p), the benefit often isn't worth the effort ...
I'm going from 60P to 24P. (I wish it could be as easy as going from 60i to 30P!)
I tried 350,90 but I'm getting the same result. Like I said, mvtools is correctly detecting the scene change, ie. I'm not getting any garbled images. What I am getting is a superimposition of the last frame of the first scene with the first frame of the second scene. I think it's doing this to make the frame rate come out right. But, it would be nice if we could tell it to use one frame and not both.
Gavino
10th January 2011, 00:09
You can. Add blend=false in the call to MFlowFPS.
rec
10th January 2011, 23:27
Thanks for the help Didée and Gavino. I finally got it working after I realized I should be using mvtools2 and not mvtools. Duh.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.