We present an implementation overview of the architecture of DASH-IF Forensic A/B Watermarking.
The following docker-compose command will build the image of FFmpeg that is needed.
make setup-3 USP_LICENSE_KEY=$USP_LICENSE_KEY
Currently these are following A/B variant from Origin available:
You will notice that the response Header from this server contains
a response Header X-ORIGIN: ORIGIN-A
or X-ORIGIN: ORIGIN-B
which helps
identified the two Origin servers.
Example stream with the following WM pattern 0101010101
curl -v \
http://localhost/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiSm9obiBEb2UiLCIzMDAiOjEsIjMwMSI6MSwiMzAyIjoxMCwid210b2tlbi1kaXJlY3QiOnsiMzA0IjowMTAxMDEwMTAxfSwic3ViIjoiMTIzNDU2Nzg5MCIsImlzcyI6ImY0YTg0NWU5ZDEwNyJ9.0iEoLGTJLlJuYxIby6_krB8BNMpNwee40AyrHMgaR6c/ingress.isml/.mpd
Example stream with the following pattern 0000011111
http://localhost/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiSm9obiBEb2UiLCIzMDAiOjEsIjMwMSI6MSwiMzAyIjoxMCwid210b2tlbi1kaXJlY3QiOnsiMzA0IjowMDAwMDExMTExfSwic3ViIjoiMTIzNDU2Nzg5MCIsImlzcyI6ImY0YTg0NWU5ZDEwNyJ9.qXenxnAql5Lkil5kRJ6BIqlf4tD4nL08PUlcDMMr5AU/ingress.isml/.mpd
In the following images you will notice different Active Container ID which identifies the Variant A/B from the live streaming setup.
Variant A:
Variant B:
Make sure that you are running the following command from the /live folder of the project.
make clean-setup-3