eluv-io / blind-video-watermark

Blind video watermarking with great invisibility and robustness.
https://github.com/eluv-io/blind-video-watermark
MIT License
74 stars 17 forks source link

Can't extract correct watermarks from encoded video #1

Open ShanQincheng opened 2 years ago

ShanQincheng commented 2 years ago

I use CLI which presented in here to extract watermarks(img or sequence) from encoded video, but I can't get correct watermarks.

Extracted image frames all in black colour with no meaning, and extracted sequence is in odd format like 33#33.

Commands I used for sequence: encoding: bvw embed -a seq -wm 2012 -i input.mp4 -o output.mp4 -k 123 456 789 -j 2

decoding: bvw extract -a seq -i input.mp4 -o OUTPUT_FILE -k 123 456 789

elv-lqy commented 2 years ago

I can't reproduce your errors and here is the outputs of the above commands on my side: https://ibb.co/b6L6sLn.

Can you try the sample video inside examples folder and also provide the configuration of your videos (resolution etc.)?

ShanQincheng commented 2 years ago

Sorry for the late reply, I had been too busy for the past week.

I did what was written in my first post again, the only thing changed is the video was replaced to the sample video under the examples folder, and then everything works fine now.

The video I used before download from here, I tried different versions among 1MB, 2MB and 5MB, all of them are not working.

1MB Video info shows below by ffprobe

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'big_buck_bunny_720p_1mb.mp4': Metadata: major_brand : isom minor_version : 512 compatible_brands: isomiso2avc1mp41 creation_time : 1970-01-01T00:00:00.000000Z encoder : Lavf53.24.2 Duration: 00:00:05.31, start: 0.000000, bitrate: 1589 kb/s Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 1205 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default) Metadata: creation_time : 1970-01-01T00:00:00.000000Z handler_name : VideoHandler vendor_id : [0][0][0][0] Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, 5.1, fltp, 384 kb/s (default) Metadata: creation_time : 1970-01-01T00:00:00.000000Z handler_name : SoundHandler vendor_id : [0][0][0][0]

brandnew2017 commented 1 year ago

It seems that there is something wrong when embedding watermarking information. image

Quakumei commented 4 months ago

Having the same issue here.

Using following video video.mp4

And using following image download

I can't extract original watermark. Output is as follows. There is some resemblance indeed, however, there is almost none.

frame290

Using the sequence 2012, extracted text is

quakumei@box: cat OUTPUT_FILE 
##########

Commands used for embedding and extraction are the following:

bvw embed -a seq -wm 2012 -i input.mp4 -o output.mp4 -k 123 456 789 -j 8
bvw extract -a seq -i output.mp4 -o OUTPUT_FILE -k 123 456 789

bvw embed -a img -wm download.jpg -i input.mp4 -o output2.mp4 -k 123 -j 8
bvw extract -a img -k 123 -i output2.mp4 -o OUTPUT_FOLDER
Quakumei commented 4 months ago

Even after embedding with strength 10, it still does not work.

https://github.com/user-attachments/assets/0309cf19-29c3-4aa7-a680-6b41a17913ec

frame112

upd: at 100 strength, the watermark extracted is just the black image.