How to read videoDuration.flv file from * .Net without using flash-activeX?

I have a winform program that allows users to upload Shockwave Flash movies to a server. To get videoDuration, I instantiate "ShockwaveFlashObjects" -activeX, load the movie, and then read the video document until it changes from "0.0" to something else. I get this by reading GetVariable ("videoDuration").

It often works, but sometimes it blocks or shows information from a previously loaded Flash movie.

I am also having trouble distributing ShockWaveFlashObject-activeX. I would really like to skip this and just read the flash file and find out the length of the movie playing.

All uploaded movies are videos, so they have a specific playback length.

This question didn't help with the answers.

I checked the swf-format in wotsit and from what I can see it should be possible to read the frame rate and framecount and thus calculate the duration, but I couldn't find anything about flv files. Maybe someone has already done this and can point me to some good code that saves me a lot of time trying to understand the spec?

0


a source to share


1 answer


One possibility is to use ffmpeg to read video / audio bitrates. After you get this data, you can divide the total file size by the sum of the video / audio bitrates. This gives you an approximate number of seconds (+/- a few hundred).



0


a source







All Articles