BluMark Single Frame Forensic Watermarking
The BluMark frame based forensic video watermarking solution is provided by Media Science International (MSI). BluMark technology can trace back the copyright of illegally delivered videos. This is accomplished through hiding imperceptible watermark information in video frames throughout media content. These watermarks can be extracted from any video segment even under very extreme attacks such as recompression, geometrical deformations adding noise, or many other processes as described below.
The BluMark watermarking technology is unique among its peers. Both the process for inserting watermark and the process of extracting the watermark can be done on very short samples of video within a few frames taking seconds compared to minutes with other watermarking solutions that are in use today. The watermarking process can be embedded into a soft or hard transcoder such as an SDK or a standalone command line program. This makes it convenient to integrate with asset management applications while minimizing the performance requirement of the watermarking process.
The watermarking SDK provides a video frame-based data interactive interface. A transcoding process is necessary for decoding each video frame from media content which can be offline video file or from live-tv channels. Regardless of input format, each frame will be converted to an RGB format and fed frame by frame into the SDK. The SDK then gives the watermarked frames back frame by frame with the same picture parameters such as width, height, pixel format etc. Finally, the transcoder encodes the watermarked video frame into the output media content.
In order to simplify the watermarking SDK a uniform RGB pixel format is used. Since there can be many different Pixel formats of decoded video frames such as YUV420/422/444P, 8/10/12 bit of sample depth, and various aspect ratios. Therefore, no matter what the original format is, it must be converted to a packed RGB24bit or RGB48bit as input. The SDK will then return to the transcoder the same pixel format as output so it can be converted to its final form.
The BluMark watermarking SDK is an aggregation interface by C++ abstract classes, it allows applications to integrate watermarking under different scenarios of VOD and liveTV transcoding. The detection of watermarks and detector applications are managed by MSI.
Figure 1: Inserted watermarking process in transcoding process
Figure 1 above supports the following conditions:
- Supports online and offline watermarking process, it may be media file or media streaming.
- The video decoding/encoding process in figure 1 should work regardless of codec.
- Output stays consistent with input video frames on picture size and RGB pixel format.
- No change in the count of total video frames.
- The application should pull out the buffered video frames inside SDK at end of decoding/encoding process dealing with buffering video frames for analysis and prediction over multi frames.
Figure 2: The operation logic of the SDK interface
The Transcoder process creates a unique watermarking workspace with the SDK class IUVideoWatermarkWorkspace that maintains the current context of work environment including remote connection to backend, license control of time and quantity, and managing watermarker instances as a container.
- The Transcoder process creates IUVideoFrameWatermarker objects from workspace and assigns to different media content (maybe media file or media stream). One watermarker corresponds to a single media content. After the watermarking job is terminated, the assigned watermarker should be released. The watermark workspace maintains multiple watermarker objects, which means it is practical to run multiple watermarking processes (it can be subprocess or thread) in parallel.
- The watermarker object is a n instantiation of the abstract interface class IUVideoFrameWatermarker which maintains the context of a watermarking context in its lifecycle, including width and height of the video frame, watermark information series, FPS etc. This means each watermarking frame operation shares the same context for a media content.
- The watermarker object runs watermarking through input/ output video frames. The watermarking algorithm uses analysis and prediction across continuous multi-frames so that it needs to buffer several video frames by algorithm inside SDK. Therefore, the transcoding process must be able to respond to a delay in the output of video frames. That is to say, at the beginning of watermarking where there have only been a few input video frames there will be no corresponding output frames since the SDK is buffering these frames. This will cause a slight delay for the output frames to begin appearing but once they start the throughput should be 1:1.
The BluMark watermarking technology has been tested to assess the level to which it is robust to manipulation. Such manipulations, or attacks, have the goal of attempting to remove or destroy the watermark. A series of simulated attacks at varying levels were conducted to ascertain at what point the watermark was no longer recoverable. The intensity of the attacks together with the variation of attack types it could withstand ensured that test was comprehensive and commercially viable.
Three test video assets were used, each of different content types such as sport or drama. Each asset was around 15 minutes in duration. The forensic watermarks were embedded into each test video and then tested through a series of transformations, as detailed in Table 3 below using the Digital Watermarking Alliance (DWA) industry test parameters.
The results of the test show that the BluMark watermark is recoverable in the instances it was tested and confirm that BluMark is robust for commercial use and comparable to other forensic watermarking solutions being used in the market place today. Furthermore, the tests confirmed that the watermark was recoverable in 3 to 7 seconds depending on the content type and length. Detailed results can be provided upon request.
Table 3: Test Criteria & Areas of Manipulation
➢ Forensically watermark content of durations < 30 seconds through full-length feature films of any type and size.
➢ Optimized support for dailies, clips, and short-form animations.
➢ Blind Detection
➢ Frame based forensic digital video watermarking engine supports session based, frame by frame temporal-spatial watermark embedding throughout the duration of the content.
➢ File stream frame-based watermark detector performs rapid sampling and detailed frame by frame analysis displaying real-time payload detection result.
➢ Robust, imperceptible 56-bit payloads survive all common quality and geometric attacks. Independently watermarked frames allow enhanced survivability under length, trim, and merge attacks.
➢ Golden-eye tested for imperceptibly, watermarked content free of visual distortions.
➢ Economical solution for organizations of any size to watermark
➢ Simple, well documented API and SDK allow for quick low-cost integrations to existing transcoding and asset management systems.
➢ Economically viable solution for protecting rightsholder content at every stage.
➢ BluMark desktop and BluMark OnDemand applications facilitate secure offline and remote programmatic and web-app access.