US 12,294,751 B2
Systems and methods for monitoring content distribution
Michael Richard Jeffrey, Orinda, CA (US)
Assigned to ADEIA GUIDES INC., San Jose, CA (US)
Appl. No. 16/618,983
Filed by Adeia Guides Inc., San Jose, CA (US)
PCT Filed Jun. 8, 2017, PCT No. PCT/US2017/036537
§ 371(c)(1), (2) Date Dec. 3, 2019,
PCT Pub. No. WO2018/226232, PCT Pub. Date Dec. 13, 2018.
Prior Publication US 2020/0145706 A1, May 7, 2020
Int. Cl. H04N 21/24 (2011.01); H04H 20/74 (2008.01); H04N 21/237 (2011.01); H04N 21/238 (2011.01); H04N 21/8547 (2011.01)
CPC H04N 21/2408 (2013.01) [H04H 20/74 (2013.01); H04N 21/237 (2013.01); H04N 21/238 (2013.01); H04N 21/8547 (2013.01)] 20 Claims
OG exemplary drawing
 
2. A method for verifying broadcast transmissions, the method comprising:
transmitting, using a source device, a video stream to a node, the video stream comprising a plurality of video frames, wherein the node is configured to redistribute the video stream toward an end user device, and wherein the source device is distinct from the node;
receiving, at the source device and from the node, a portion of a first video frame of the plurality of video frames, wherein the first video frame was redistributed by the node, and a first timestamp indicating a first transmission time of the node redistributing the first video frame;
sampling the portion of the first video frame;
determining, based on the sampling, one or more unique characteristics of the first video frame, wherein the one or more unique characteristics comprise a watermark in the sampled portion of the first video frame that uniquely identifies the first video frame from any other video frame;
generating, using the watermark that uniquely identifies the first video frame from the one or more unique characteristics determined based on the sampling the portion of the first video frame, a first fingerprint of the first video frame;
accessing, using the source device, a database comprising a plurality of entries that corresponds to the plurality of video frames, wherein each entry of the plurality of entries comprises:
(i) a fingerprint that was generated using a video frame of the plurality of video frames; and
(ii) a timestamp corresponding to the fingerprint, wherein the timestamp comprises a transmission time indicative of a time when the video frame used to generate the fingerprint was transmitted to the node;
identifying, using the source device and from the plurality of entries, a matching entry comprising a fingerprint that matches the first fingerprint;
retrieving, using the source device and from the matching entry, a second timestamp comprising a second transmission time indicative of a time when the first video frame was transmitted to the node;
determining, using the source device and based on the first timestamp and the second timestamp, a time offset between the first transmission time and the second transmission time;
transmitting, using the source device and to the node, an instruction that is configured to cause the node to generate a second fingerprint of a second video frame of the plurality of video frames at a scheduled time calculated by adding the time offset to a third transmission time indicative of the time when the second video frame was transmitted to the node;
based at least in part on transmitting the instruction, receiving from the node, the second fingerprint of the second video frame at the scheduled time;
based at least in part on receiving the second fingerprint of the second video frame at the scheduled time, determining whether the second fingerprint matches a third fingerprint generated from a third video frame transmitted to the node at the second transmission time;
based at least in part on determining that the second fingerprint matches the first fingerprint, generating a first alert indicating that the node has successfully redistributed the video stream; and
based at least in part on determining that the second fingerprint does not match the first fingerprint, generating a second alert indicating that the node failed to redistribute the video stream.