[FFmpeg-trac] #10142(avfilter:open): scdet filter not logging some frames score
FFmpeg
trac at avcodec.org
Tue Jan 17 11:43:21 EET 2023
#10142: scdet filter not logging some frames score
----------------------------------+------------------------------------
Reporter: colemarc | Owner: (none)
Type: defect | Status: open
Priority: minor | Component: avfilter
Version: 5.1.2 | Resolution:
Keywords: scdet | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
----------------------------------+------------------------------------
Changes (by colemarc):
* status: new => open
Old description:
> `ffmpeg version 5.1.1-static https://johnvansickle.com/ffmpeg/ Copyright
> (c) 2000-2022 the FFmpeg developers`
>
> 1000.mkv has exactly 1000 frames.
> scdet filter logs scores for only 866 frames.
>
> {{{
> $ ffmpeg -nostdin -nostats -i 1000.mkv -map 0:v -filter:v
> "scdet=threshold=0:sc_pass=0,metadata=mode=print:key=lavfi.scd.score,showinfo=checksum=0"
> -f null - 2>&1 | grep iskey | wc -l
> 1000
>
> $ ffmpeg -nostdin -nostats -i 1000.mkv -map 0:v -filter:v
> "scdet=threshold=0:sc_pass=0,metadata=mode=print:key=lavfi.scd.score,showinfo=checksum=0"
> -f null - 2>&1 | grep scdet | wc -l
> 866
> }}}
>
> However the scdet filter forwards all 1000 frames and sets frame metadata
> for each of them.
>
> {{{
> $ ffmpeg -nostdin -nostats -i 1000.mkv -map 0:v -filter:v
> "scdet=threshold=0:sc_pass=0,metadata=mode=print:key=lavfi.scd.score,showinfo=checksum=0"
> -f null - 2>&1 | grep 'Parsed_metadata_1.*lavfi.scd.score' | wc -l
> 1000
> }}}
>
> All the frames missed in the scdet log have lavfi.scd.score=0.000, but a
> few frames with lavfi.scd.score=0.000 get logged.
New description:
`ffmpeg version 5.1.1-static https://johnvansickle.com/ffmpeg/ Copyright
(c) 2000-2022 the FFmpeg developers`
1000.mkv has exactly 1000 frames.
scdet filter logs scores for only 866 frames.
{{{
$ ffmpeg -nostdin -nostats -i 1000.mkv -map 0:v -filter:v
"scdet=threshold=0:sc_pass=0,metadata=mode=print:key=lavfi.scd.score,showinfo=checksum=0"
-f null - 2>&1 | grep iskey | wc -l
1000
$ ffmpeg -nostdin -nostats -i 1000.mkv -map 0:v -filter:v
"scdet=threshold=0:sc_pass=0,metadata=mode=print:key=lavfi.scd.score,showinfo=checksum=0"
-f null - 2>&1 | grep scdet | wc -l
866
}}}
However the scdet filter forwards all 1000 frames and sets frame metadata
for each of them.
{{{
$ ffmpeg -nostdin -nostats -i 1000.mkv -map 0:v -filter:v
"scdet=threshold=0:sc_pass=0,metadata=mode=print:key=lavfi.scd.score,showinfo=checksum=0"
-f null - 2>&1 | grep 'Parsed_metadata_1.*lavfi.scd.score' | wc -l
1000
}}}
All the frames missed in the scdet log have lavfi.scd.score=0.000, but a
few frames with lavfi.scd.score=0.000 get logged.
[https://drive.google.com/file/d/1vdz_aBprlUCh5eQ__URkzbVBIIEiawMM/view?usp=share_link
1000.mkv]
--
--
Ticket URL: <https://trac.ffmpeg.org/ticket/10142#comment:1>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list