Video Fingerprinting SDK .Net / C++

v12.1
Our state-of-the-art video fingerprinting technology incorporates the latest advances in scene analysis, object tracking, and motion estimation to analyze the content of any video to identify its unique characteristics, such as colors, scene structure, and the motion of objects. This allows a copy of the video to be identified despite changes in resolution, bitrate, method of encoding, or file format. The video can even be detected when it is included inside another video or when just a fragment of the video is reproduced.

Our SDK lets you integrate this video identification functionality into your applications and services. Our licensing agreement permits you to incorporate the technology in an unlimited number of products for one payment. There are no other fees, regardless of the number of copies of these products you sell.

What is a video fingerprint?

A video fingerprint is a compact digital descriptor that can be extracted from any video source, whether a fragment of a TV broadcast, a video file, an online video, or a DVD or Blu-ray Disk. These video fingerprints can then be stored, copied, and compared. Video fingerprints can be used to identify copyrighted video material and duplicate videos, search for videos, organize videos, recognize when a specific video is played, monitor media, or track ads.

Use the Video Duplicates Finder as a sample application to find similar video files.

Use the Media Monitoring Tool as a sample application to find one video fragment (TV commercial, for example) in another (full broadcast recording).

.Net SDK version has a helper for MongoDB usage as fingerprint storage.

Some of the ways you can put our Video Fingerprinting SDK to use:

  • An online video hosting service like YouTube could use video fingerprints to avoid copyright infringement. A database of video fingerprints of the copyrighted material would be developed and compared to the video fingerprint materials submitted by users to prevent the illegal submission of pirated videos.
  • A video archive service could use video fingerprints to save space and block duplicate uploads. A video fingerprint would be extracted from each video in the archive. The video fingerprint of each new submission would be compared to the database of the fingerprints of existing videos, checking to make sure they are different and blocking duplicate submissions.
  • Video Organizer software could use video fingerprints to identify copies of the same movie or video clip and group them despite differences in format, resolution, or bitrate.
  • Set-top box software could use video fingerprints to develop interactive advertisements by identifying when specific TV ads are shown and displaying a clickable URL to allow the user to access the product website. It could also be used to track how often the ad is viewed.
  • A search engine for videos could be developed using our Video Fingerprinting SDK – a unique, revolutionary service implementing a video-by-video search functionality that would be the first of its kind.
  • A TV Clipping Service could use video fingerprinting technology to automate TV broadcast monitoring and TV ad verification to detect when a client’s ad is aired so they can ensure the terms of their TV advertising agreements are being respected.
  • We have developed our media monitoring tool as a fully functional application that enables the detection of ad samples in a broadcast dump to implement this service. This application, including sources, can be licensed separately and used as a basis for building your product or integrated into an existing system. See our media monitoring tool page for more information.
  • Detecting pirated video content

What operating systems are supported?

  • C++ SDK supports Windows and Linux, or any other POSIX-compatible operating system (available by request)
  • .Net SDK supports Windows 7 and later

What is the size of a video fingerprint file?

Each second of a video stream analyzed requires about 1kb for its video fingerprint. Duplicate detection generally only requires 3-5 seconds of each video to be indexed. Indexing of full videos is required in order to identify a video that has been included inside another.

How much time is required for computations?

Indexing one second of video takes about 300 milliseconds – the actual processing of the file accounts for nearly half of that time (150 milliseconds), while video decompression accounts for the rest. Matching a pair of 10-second-long fingerprints takes 1-2 milliseconds. These times were established by testing with an Intel i3 processor and LAV filters for video compression.

Is video reading or decoding software included?

  • C++: No. You will need some other library (FFMPEG, for example, demo available) to implement video reading in your application
  • .Net: Yes, FFMPEG and libVLC are included. Also, system codecs can be used for decoding

What code samples are available?

The following code samples are included with your purchase:

C++:

  • FFMPEG-based console application that indexes videos and builds fingerprints (Windows, Linux)
  • A console application that compares two fingerprints to detect duplicates (Windows, Linux)
  • A console application that searches for entries of one fingerprint inside another (Windows, Linux)
  • Source code of a full Media Monitoring Tool application (Windows, Linux)

.Net:

  • Media Monitoring Tool and Media Monitoring Tool Live source code
  • Video Duplicates Finder source code.

What is other documentation available

C++:

  • VFCompare API – a video fingerprinting algorithm implementation that is optimized for the detection of duplicate videos

  • VFSearch API – a video fingerprinting algorithm implementation that is optimized for searching video in video

.Net:

  • Full API is described in a help file.

How can I try-out and evaluate the technology?

We suggest you download and experiment with the trial versions of our Media Monitoring Tool application and the Video Duplicates Finder application and familiarize yourself with the API and code samples.

.The .Net version of SDK is available as an independent installer with sample applications and sample source code inside.

​MMT/VDF tools' source code is included (tools require .Net 4.5 for SOAP export. SDK can be used in .Net 4.0 and later).

​The C++ version of SDK is available as an independent installer.

System requirements

Mac OS, Windows, or Linux.

Distribution rights

Royalty-free distribution.

Trial limitations

The trial version displays a watermark on the video window.

Purchase of Video Fingerprinting SDK will give you the following benefits:

  • Unlimited usage
  • No nag-screen
  • Free minor and major upgrades within one year (after one year, SDK will work the same as before) for a regular license and unlimited updates for unlimited time for the lifetime license
  • Priority support and fixes
The regular license is billed annually and automatically renewed each year. You can cancel your subscription at any time.

Media Monitoring Tool (Live) Sample

Our demo app is a fully functional media monitoring tool that can be used for ad tracking and broadcast media monitoring. It enables the detection of ad samples in a broadcast dump. You can also use this application and our Video Fingerprinting SDK to build your product or service for TV broadcast monitoring or integrate it into an existing service.

How it works

Our Media Monitoring Tool can detect when a reference sample video is played in a recorded TV broadcast, so paying someone to watch TV 24 hours a day, seven days a week, is no longer necessary. The TV broadcast stream is registered as an array of 5-minute-long video files, and then they are compared to the specified sample reference video, such as the commercial, to be tracked. The application will automatically detect all inclusions of the selected video in the recorded files and provide a list of the video files containing the commercial.

Our Media Monitoring Tool lets you automate the process of TV broadcast monitoring. It reduces the amount of personnel needed and the associated labor costs. And taking advantage of the content-based automated video search will also improve accuracy. It will even allow you to provide your clients digital proof of commercial playback without manual work.​

The process begins by recording the broadcast stream as a series of five-minute videos. The Media Monitoring Tool analyzes the captured content and finds all the client’s commercial instances. The results are presented as a list of thumbnails highlighting the clips containing the commercial.

Benefits

  • Accurate results – The program's content-based video search technology ensures accuracy and speed. The algorithm quickly and accurately identifies all instances of the reference video in the recorded broadcast video stream without any human intervention and no human error.​
  • Reduced costs – Because you no longer have to pay people to sit and stare at a TV screen and manually record the details of when the commercial is aired, your operation costs are dramatically reduced.
  • ​Easy use – The program's easy-to-learn intuitive interface allows custom searches to be defined and performed in seconds. The user selects the folder that contains the broadcast dump and specifies the video reference samples containing the ads to be identified. The program does the rest.

Video Duplicates Finder Sample

Video Duplicates Finder allows you to find similar or duplicate video files on your PC. AVI, MPEG-1, MPEG-2, Windows Media Video, MP4, and many other formats are supported. This app is a sample of Video Fingerprinting SDK usage.

Major features include:

  • AVI, WMV, MP4, MPG, TS, and a lot of other formats are supported
  • SD, HD, and 4K videos are supported
  • Sensitivity settings
  • Timeshift option
  • Complete file processing or a custom part of it
  • DirectShow (system codecs), FFMPEG, and VLC decoding engines

SDK contains optional FFMPEG and libVLC libraries licensed as LGPL v2.1.

logo
VisioForge © 2006 - 2024
discord