mendevi.utils.compute_video_hash

mendevi.utils.compute_video_hash(videos: str | bytes | Path | Iterable[str | bytes | Path]) bytes | dict[Path, bytes][source]

Compute the checksum of the video.

For \(n\) hash of \(b\) bits, the proba of the colision \(C\) is \(p(C) = 1 - \left(\frac{2^k-1}{2^k}\right)^{\frac{n(n-1)}{2}}\).

The md5 hash uses \(b = 128\) bits. If we add one video per second durring 10 years, the proba of colision is about \(p(C) \approx 1.46*10^{-22}\).

That’s why the md5 hash is used to identify the video files.

Parameters

videospathlike or list[pathlike]

The single or set of video you want to compute the signature.

Returns

signatures

The md5 checksum of the video file. In the case of a multiple file, a dictionary containing the file and the hash is returned rather a single hash. If the file does not exists, return None.