[FFmpeg-devel] [PATCH v18 12/19] fftools/ffmpeg: Replace sub2video with subtitle frame filtering and use new frame-based subtitle encoding API
Michael Niedermayer
michael at niedermayer.cc
Tue Nov 30 15:10:47 EET 2021
On Mon, Nov 29, 2021 at 07:48:25PM +0000, Soft Works wrote:
> This commit actually enables subtitle filtering in ffmpeg by
> sending and receiving subtitle frames to and from a filtergraph.
>
> The heartbeat functionality from the previous sub2video implementation
> is retained and applied to all subtitle frames (bitmap, text, ..).
>
> The other part of sub2video functionality is retained by
> auto-insertion of the new graphicsub2video filter.
>
> Justification for changed test refs:
>
> - sub2video
> The new results are identical excepting the last frame which
> is due to the implementation changes
>
> - sub2video_basic
> The previous results had some incorrect output because multiple
> frames had the same dts
> The non-empty content frames are visually identical, the different
> CRC is due to the different blending algorithm that is being used.
>
> - sub2video_time_limited
> The third frame in the previous ref was a repetition, which doesn't
> happen anymore with the new subtitle filtering.
>
> - sub-dvb
> Running ffprobe -show_frames on the source file shows that there
> are 7 subtitle frames with 0 rects in the source at the start
> and 2 at the end. This translates to the 14 and 4 additional
> entries in the new test results.
>
> - filter-overlay-dvdsub-2397
> Overlay results have slightly different CRCs due to different
> blending implementation
>
> Signed-off-by: softworkz <softworkz at hotmail.com>
This breaks:
./ffmpeg -i ~/tickets/153/bbc_small.ts -filter_complex '[0:v][0:s]overlay' -qscale 2 -t 3 -y file.avi
Press [q] to stop, [?] for help
subtitle input filter: decoding size 0x0
Auto-inserting graphicsub2video filter
[swscaler @ 0x5578a748db00] Value 0.000000 for parameter 'srcw' out of range [1 - 2.14748e+09]
[swscaler @ 0x5578a748db00] Value 0.000000 for parameter 'srch' out of range [1 - 2.14748e+09]
[swscaler @ 0x5578a748db00] Value 0.000000 for parameter 'dstw' out of range [1 - 2.14748e+09]
[swscaler @ 0x5578a748db00] Value 0.000000 for parameter 'dsth' out of range [1 - 2.14748e+09]
[graphicsub2video @ 0x5578a735e880] [IMGUTILS @ 0x7ffd6097eab0] Picture size 0x0 is invalid
Error reinitializing filters!
Failed to inject frame into filter network: Invalid argument
Error while processing the decoded data for stream #0:0
[libmp3lame @ 0x5578a73d3380] 3 frames left in the queue on closing
Conversion failed!
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
Good people do not need laws to tell them to act responsibly, while bad
people will find a way around the laws. -- Plato
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20211130/8b657970/attachment.sig>
More information about the ffmpeg-devel
mailing list