[FFmpeg-user] Verifying lossless rewrapping/transcoding in one step?

Moritz Barsnick barsnick at gmx.net
Tue Aug 6 13:14:07 EEST 2019


On Tue, Aug 06, 2019 at 10:07:40 +0200, Paul B Mahol wrote:
> If I understand correctly, basically need hash of each stream separately
> (for framehash this already works).
>
> That is quite possible to be implemented. Feel free to open feature request
> on FFmpeg bug tracker.

Just to show that it works, I have hacked up a quick proof of concept.
(Hacked up means: Possibly not clean, not enough reuse of code, ...)

From this for a video stream:
./ffmpeg_g -f lavfi -i testsrc -map 0 -t 1 -f hash -
[...]
SHA256=c747429bf5d240958db9545b184e2b226f826e67495ad5d46245794bc1b84078

and this for an audio stream:
./ffmpeg_g -f lavfi -i anoisesrc=seed=0 -map 0 -t 1 -f hash -
[...]
SHA256=4a3aa64bd7ef86ff2afb43c9346076792497cdcfcd741f10a1bea2e016294417

I can now produce this (note the new muxer):
./ffmpeg_g -f lavfi -i testsrc -f lavfi -i anoisesrc=seed=0 -map 0 -map 1 -t 1 -f streamhash -
SHA256=c747429bf5d240958db9545b184e2b226f826e67495ad5d46245794bc1b84078
SHA256=4a3aa64bd7ef86ff2afb43c9346076792497cdcfcd741f10a1bea2e016294417

I just couldn't quickly figure out how to prefix the stream specifiers
(e.g. 0:0, 0:1).

I'm not hapy with submitting a hack as a patch to ffmpeg-devel though.
;-) But I can provide the patch here or somewhere else.

Cheers,
Moritz


More information about the ffmpeg-user mailing list