0

We have a camera that records videos with high FPS rate - 163.

To capture from the camera in C#, we use AForge.Video library. The capture works fine.

For saving the video to a file, we use AForge.Video.FFMPEG.VideoFileWriter as follows:

FileWriter.Open("test.avi", eventArgs.Frame.Width, eventArgs.Frame.Height, 163, VideoCodec.MPEG4, 5000000);

What we're trying to figure out is how to use the VideoFileWriter to produce slow-motion video.

Assuming we have to do something with frame rate of the video file output? If so, what should we set the frame rate to? And if not, what's the correct approach to get the slow-motion output?

Thanks!

SharpAffair
  • 5,558
  • 13
  • 78
  • 158
  • Typical framerates are 24, 29.97, 30, 50, 60 or the like. It basically doesn't matter, just try out what looks best. You just have to be sure about which framerate to use to be able to calculate the slow down proportion. I'm not a video expert though. – Jens Jan 20 '16 at 16:53
  • @Jens can you advice where did you get these numbers? Why 24 and not 25, for example? – SharpAffair Jan 20 '16 at 17:09
  • These are just some common values from various standards in movies, film and digital scenarios. – Jens Jan 20 '16 at 17:23

1 Answers1

0

This is how you would use ffmpeg at the command line/shell to slow down the video

ffmpeg -i input -vf "settb=1/30,setpts=N/30/TB" -r 30 -c:v mpeg4 -b:v 5000000 test.avi

Here, I've used 30 as the output framerate. You can use any framerate you want but 24, 25, 30 are the standard rates used in TV.

Gyan
  • 85,394
  • 9
  • 169
  • 201