I have no idea but it works, at least I can play it.
If the overlay is enabled the video is pixelated, out of synch and most of the times it freezes between scenes. This only happens with large mkv files.
And I don't think it has something to do with my hardware because I can play those files in other players just fine.
Maybe VLC doesn't properly handle the overlay features of your hardware. It depends of what your .mkv files contain. What's the codec used for the video tracks ? What about the audio ?
To answer your questions:
It only happens with mkv files, every one of them.
I tried with smaller avi files and I can take caps when the overlay is disabled.
I use the Image video output, the ratio is set to 12. Really easy and fast.
So from the
Documentation:Modules/image Wiki article it seems 1 out of 12 images should be recorded. When you meant "screencaps" I thought you meant something like… record 1 image every minute ! Depending of your hardware and video dimensions, VLC might not be able to both decode the video and encode snapshots as PNG or JPEG files. It's the same problem with video games and framerate, it lags if your hardware is not powerful enough. I think the only solution is to set a higher ratio.
Why do you need to record so many images per second ?
Screencapping in png and then batch converting to jpeg is what I always do. I would do it this time too but the problem with mkv is that the player skips most of them. Where is supposed to take say 20 screencaps, I'm lucky if I get 5. That's why I was saying they're slow to generate. Some don't even generate at all
As explained it's logical, you're asking too much. The higher the video dimensions, the less images are recorded. When I meant compressing an image to PNG wasn't processor greedy, I meant if you have 5 seconds to wait
. In some way you're just asking your hardware & VLC to encode your videos in real-time at 2 FPS, in PNG or JPEG. I think "screencapping" is not the solution, you should try an other solution…
For example why do you need to real-time output the video as images ? Can't you just use VLC as a batch processing tool ? A simple script to execute it with a different seek position, and output the current frame as an image. It would work for all videos and would take far much longer than the video duration but at least you would get all the images you need. You could even use a smaller ratio. Try 1 ? Please don't… just kidding