Click here to Skip to main content
15,799,398 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
Our project deals with searching for a video file and playing it from the given date and given time in minutes and seconds.The amount of audiovisual information available in digital format has grown exponentially in recent years.

Gigabytes of new images, audio and video clips are generated and stored everyday. Their ultimate goal is to enable users to retrieve the desired image or video clip among massive amounts of visual data in a fast, efficient, semantically meaningful, friendly, and location-independent manner Most audiovisual content can be accessed through the Internet, which is a very large, unstructured, distributed information database.

The data from which we will search that will be in terabyte. Ie,The cctv cameras captures the data ie, one tera byte of data is collected in three months, so in a year four tera bytes of data is available.Its difficult to search a small duration video file from such a huge(4 TB) amount of data which will be in tera bytes. Also in this the processing speed will decrease tremendously.

For example:- when viewing a video in you tube its never continuous, it takes time first for processing and only then the video is played. This problem is encountered in viewing a video file of duration in given minutes.

please provide me algorithm for above.
Updated 2-Aug-11 4:34am

1 solution

You don't have a lot of options here.

Much like YouTube pre-processes the video to allow for fast time-seeking, you're going to have to 'index' the frames of the video first.

I can guarantee that the system compresses video, so each of your frame sizes is going to be different. That means no random access. You can index the video first by walking through each clip and pulling the frames. This would allow for an index of the byte location and frame number.

Beyond that, you're going to likely have to rely on the file naming. Most of these systems will name the file based on date and time. Again, you'll have to index these by parsing the name and extracting this information. You can then build a couple of tables in SQL - and then some views - that will allow you to get per-second search ability across the time.

No free ride here. Check out ffmpeg[^] to get a head start.

Share this answer

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900