[FFmpeg-devel] [PATCH 1/2] ffmpeg: handle flushing and non-flushing separately in sub2video
Michael Niedermayer
michael at niedermayer.cc
Sat Sep 1 22:51:56 EEST 2018
On Fri, Aug 31, 2018 at 03:14:30PM +0300, Jan Ekström wrote:
> The initial fix for sub2video flushing during filter chain restarts
> seemed to add additional buffering into the filter chain, which in case
> of files did work, but when handling live streams would cause premature
> failure.
>
> This fix reverts the timestamp filtering, and separates flushing from
> normal heartbeat functionality by adding an explicit parameter.
> ffmpeg.c | 57 ++++++++++++++++++++++++++++++++++++++++++++++++--------
> ffmpeg.h | 2 -
> ffmpeg_filter.c | 2 -
> 3 files changed, 51 insertions(+), 10 deletions(-)
> 5e972ed74d7f00ee9243469f07c985f9890ce1f8 0001-ffmpeg-handle-flushing-and-non-flushing-separately-i.patch
> From 9ed9d80535a1e6a2a70faef296fd8d3cbfde8e55 Mon Sep 17 00:00:00 2001
> From: =?UTF-8?q?Jan=20Ekstr=C3=B6m?= <jan.ekstrom at aminocom.com>
> Date: Thu, 26 Jul 2018 19:07:38 +0300
> Subject: [PATCH 1/2] ffmpeg: handle flushing and non-flushing separately in
> sub2video
>
> This stops accidental flushes from happening in sub2video in case
> the filter chain gets a re-configuration/re-init. Heartbeats
> should not cause a flush and additional buffering in the filter chain.
>
> Properly fixes filter chain flush handling, as previously the
> filter chain would keep buffering frames.
>
> Additionally, document the various stages of sub2video.
> ---
> fftools/ffmpeg.c | 57 +++++++++++++++++++++++++++++++++++------
> fftools/ffmpeg.h | 2 +-
> fftools/ffmpeg_filter.c | 2 +-
> 3 files changed, 51 insertions(+), 10 deletions(-)
breaks fate-sub2video
TEST sub2video
--- ./tests/ref/fate/sub2video 2018-09-01 19:32:08.768406978 +0200
+++ tests/data/fate/sub2video 2018-09-01 21:50:44.516582168 +0200
@@ -11,31 +11,31 @@
0, 1, 1, 1, 518400, 0x4051c7f9
0, 2, 2, 1, 518400, 0xfb00e17e
1, 499000, 499000, 4960000, 1015, 0x19e092d2, F=0x0
-0, 3, 3, 1, 518400, 0x192abb74
-0, 4, 4, 1, 518400, 0x4669a88b
-0, 5, 5, 1, 518400, 0xaababe00
-0, 6, 6, 1, 518400, 0x98a211a5
-0, 7, 7, 1, 518400, 0x440e7547
-0, 8, 8, 1, 518400, 0xca5bb496
-0, 9, 9, 1, 518400, 0xf86e0b0a
-0, 10, 10, 1, 518400, 0xb80fa020
-0, 11, 11, 1, 518400, 0x41c2a54b
-0, 12, 12, 1, 518400, 0x51baf353
-0, 13, 13, 1, 518400, 0x967ea7f3
-0, 14, 14, 1, 518400, 0x819e7f89
-0, 15, 15, 1, 518400, 0x192233e1
-0, 16, 16, 1, 518400, 0xc80a0eb3
-0, 17, 17, 1, 518400, 0x08260a23
-0, 18, 18, 1, 518400, 0xc92e2caf
-0, 19, 19, 1, 518400, 0x3fe36eea
-0, 20, 20, 1, 518400, 0x0891e8d5
-0, 21, 21, 1, 518400, 0x84655095
-0, 22, 22, 1, 518400, 0x9c7fa014
-0, 23, 23, 1, 518400, 0x9c43b656
-0, 24, 24, 1, 518400, 0x2cf46221
-0, 25, 25, 1, 518400, 0x7322e11c
-0, 26, 26, 1, 518400, 0x45af1a84
-0, 27, 27, 1, 518400, 0x7b781071
+0, 3, 3, 1, 518400, 0x17f5f77c
+0, 4, 4, 1, 518400, 0x427fe2ce
+0, 5, 5, 1, 518400, 0x76d8fe7b
+0, 6, 6, 1, 518400, 0x167c5c28
+0, 7, 7, 1, 518400, 0x1d54c98e
+0, 8, 8, 1, 518400, 0x664016a4
+0, 9, 9, 1, 518400, 0x4a477278
+0, 10, 10, 1, 518400, 0xc3beffb4
+0, 11, 11, 1, 518400, 0xf052f750
+0, 12, 12, 1, 518400, 0xcd9e399a
+0, 13, 13, 1, 518400, 0x1843d70b
+0, 14, 14, 1, 518400, 0x4737acf9
+0, 15, 15, 1, 518400, 0x3a9961a0
+0, 16, 16, 1, 518400, 0x2dce2c74
+0, 17, 17, 1, 518400, 0x1d601ddc
+0, 18, 18, 1, 518400, 0xb47429b1
+0, 19, 19, 1, 518400, 0xfab24433
+0, 20, 20, 1, 518400, 0xd69d8e91
+0, 21, 21, 1, 518400, 0xc8b8ce57
+0, 22, 22, 1, 518400, 0xf6a90e9c
+0, 23, 23, 1, 518400, 0x11cc1ec4
+0, 24, 24, 1, 518400, 0xcad7cd01
+0, 25, 25, 1, 518400, 0x01596125
+0, 26, 26, 1, 518400, 0xc2b7aca0
+0, 27, 27, 1, 518400, 0x8b2d9fde
0, 28, 28, 1, 518400, 0x4f7c706c
0, 29, 29, 1, 518400, 0xb227603b
0, 30, 30, 1, 518400, 0x7b4b89c2
@@ -59,128 +59,128 @@
0, 48, 48, 1, 518400, 0x7df08fba
0, 49, 49, 1, 518400, 0xbab197ea
1, 15355000, 15355000, 4733000, 2094, 0x3c171425, F=0x0
-0, 77, 77, 1, 518400, 0x902285d9
-0, 100, 100, 1, 518400, 0xbab197ea
+0, 77, 77, 1, 518400, 0xbab197ea
+0, 78, 78, 1, 518400, 0x902285d9
1, 48797000, 48797000, 2560000, 2480, 0x7c0edf21, F=0x0
0, 244, 244, 1, 518400, 0x7a11c812
-0, 257, 257, 1, 518400, 0xbab197ea
+0, 245, 245, 1, 518400, 0xbab197ea
+0, 257, 257, 1, 518400, 0x34cdddee
1, 51433000, 51433000, 2366000, 3059, 0xc95b8a05, F=0x0
-0, 258, 258, 1, 518400, 0x34cdddee
-0, 269, 269, 1, 518400, 0xbab197ea
+0, 258, 258, 1, 518400, 0xbab197ea
1, 53910000, 53910000, 2696000, 2095, 0x61bb15ed, F=0x0
0, 270, 270, 1, 518400, 0x4db4ce51
-0, 283, 283, 1, 518400, 0xbab197ea
+0, 271, 271, 1, 518400, 0xbab197ea
+0, 283, 283, 1, 518400, 0xe6bc0ea9
1, 56663000, 56663000, 1262000, 1013, 0xc9ae89b7, F=0x0
-0, 284, 284, 1, 518400, 0xe6bc0ea9
-0, 290, 290, 1, 518400, 0xbab197ea
+0, 284, 284, 1, 518400, 0xbab197ea
+0, 290, 290, 1, 518400, 0xa8643af7
1, 58014000, 58014000, 1661000, 969, 0xe01878f0, F=0x0
-0, 291, 291, 1, 518400, 0xa8643af7
-0, 298, 298, 1, 518400, 0xbab197ea
+0, 291, 291, 1, 518400, 0xbab197ea
1, 67724000, 67724000, 1365000, 844, 0xe7db4fc1, F=0x0
0, 339, 339, 1, 518400, 0xb1885c67
-0, 345, 345, 1, 518400, 0xbab197ea
+0, 340, 340, 1, 518400, 0xbab197ea
1, 69175000, 69175000, 1558000, 802, 0xf48531ba, F=0x0
0, 346, 346, 1, 518400, 0x378e3fd0
-0, 354, 354, 1, 518400, 0xbab197ea
+0, 347, 347, 1, 518400, 0xbab197ea
+0, 354, 354, 1, 518400, 0xa3782469
1, 70819000, 70819000, 1865000, 1709, 0xb4d5a1bd, F=0x0
-0, 355, 355, 1, 518400, 0xa3782469
-0, 363, 363, 1, 518400, 0xbab197ea
+0, 355, 355, 1, 518400, 0xbab197ea
1, 72762000, 72762000, 1968000, 2438, 0x99d7bc82, F=0x0
0, 364, 364, 1, 518400, 0xba23a0d5
-0, 374, 374, 1, 518400, 0xbab197ea
+0, 365, 365, 1, 518400, 0xbab197ea
+0, 374, 374, 1, 518400, 0x129de2f8
1, 74806000, 74806000, 1831000, 2116, 0x96514097, F=0x0
-0, 375, 375, 1, 518400, 0x129de2f8
-0, 383, 383, 1, 518400, 0xbab197ea
+0, 375, 375, 1, 518400, 0xbab197ea
1, 76716000, 76716000, 1262000, 1822, 0xefccc72e, F=0x0
0, 384, 384, 1, 518400, 0x19772f0f
-0, 390, 390, 1, 518400, 0xbab197ea
+0, 385, 385, 1, 518400, 0xbab197ea
+0, 390, 390, 1, 518400, 0x56f54e73
1, 78051000, 78051000, 1524000, 987, 0x7b927a27, F=0x0
-0, 391, 391, 1, 518400, 0x56f54e73
-0, 398, 398, 1, 518400, 0xbab197ea
+0, 391, 391, 1, 518400, 0xbab197ea
+0, 398, 398, 1, 518400, 0x300b5247
1, 79644000, 79644000, 2662000, 2956, 0x190778f7, F=0x0
-0, 399, 399, 1, 518400, 0x300b5247
+0, 399, 399, 1, 518400, 0xbab197ea
1, 82380000, 82380000, 2764000, 3094, 0xc021b7d3, F=0x0
-0, 412, 412, 1, 518400, 0xbab197ea
-0, 413, 413, 1, 518400, 0x6fd028fa
-0, 426, 426, 1, 518400, 0xbab197ea
+0, 412, 412, 1, 518400, 0x6fd028fa
+0, 413, 413, 1, 518400, 0xbab197ea
+0, 426, 426, 1, 518400, 0x01f80e9d
1, 85225000, 85225000, 2366000, 2585, 0x74d0048f, F=0x0
-0, 427, 427, 1, 518400, 0x01f80e9d
-0, 438, 438, 1, 518400, 0xbab197ea
+0, 427, 427, 1, 518400, 0xbab197ea
+0, 438, 438, 1, 518400, 0xb48d90c0
1, 87652000, 87652000, 1831000, 634, 0x8832fda1, F=0x0
-0, 439, 439, 1, 518400, 0xb48d90c0
-0, 447, 447, 1, 518400, 0xbab197ea
+0, 439, 439, 1, 518400, 0xbab197ea
1, 91531000, 91531000, 2332000, 2080, 0x97a1146f, F=0x0
0, 458, 458, 1, 518400, 0xcb5a0173
-0, 469, 469, 1, 518400, 0xbab197ea
+0, 459, 459, 1, 518400, 0xbab197ea
1, 95510000, 95510000, 3299000, 2964, 0x8b8f6684, F=0x0
0, 478, 478, 1, 518400, 0xb8a323e4
-0, 494, 494, 1, 518400, 0xbab197ea
+0, 479, 479, 1, 518400, 0xbab197ea
+0, 494, 494, 1, 518400, 0xc43518ba
1, 98872000, 98872000, 2161000, 1875, 0x9002ef71, F=0x0
-0, 495, 495, 1, 518400, 0xc43518ba
-0, 505, 505, 1, 518400, 0xbab197ea
+0, 495, 495, 1, 518400, 0xbab197ea
1, 101124000, 101124000, 4096000, 3872, 0x20c6ed9c, F=0x0
0, 506, 506, 1, 518400, 0x04e38692
-0, 526, 526, 1, 518400, 0xbab197ea
+0, 507, 507, 1, 518400, 0xbab197ea
1, 105303000, 105303000, 2730000, 3094, 0xf203a663, F=0x0
0, 527, 527, 1, 518400, 0x856b0ee5
-0, 540, 540, 1, 518400, 0xbab197ea
+0, 528, 528, 1, 518400, 0xbab197ea
1, 108106000, 108106000, 2059000, 2404, 0x41a7b429, F=0x0
0, 541, 541, 1, 518400, 0x3e5beee2
-0, 551, 551, 1, 518400, 0xbab197ea
+0, 542, 542, 1, 518400, 0xbab197ea
1, 141556000, 141556000, 1661000, 1088, 0xde20aa20, F=0x0
0, 708, 708, 1, 518400, 0xb8bc1365
-0, 716, 716, 1, 518400, 0xbab197ea
+0, 709, 709, 1, 518400, 0xbab197ea
0, 817, 817, 1, 518400, 0x83efa32d
1, 163445000, 163445000, 1331000, 339, 0x8bd186ef, F=0x0
-0, 824, 824, 1, 518400, 0xbab197ea
+0, 818, 818, 1, 518400, 0xbab197ea
0, 840, 840, 1, 518400, 0x03ea0e90
1, 168049000, 168049000, 1900000, 1312, 0x0bf20e8d, F=0x0
-0, 850, 850, 1, 518400, 0xbab197ea
+0, 841, 841, 1, 518400, 0xbab197ea
+0, 850, 850, 1, 518400, 0x8780239e
1, 170035000, 170035000, 1524000, 1279, 0xb6c2dafe, F=0x0
-0, 851, 851, 1, 518400, 0x8780239e
-0, 858, 858, 1, 518400, 0xbab197ea
+0, 851, 851, 1, 518400, 0xbab197ea
0, 861, 861, 1, 518400, 0x6eb72347
1, 172203000, 172203000, 1695000, 1826, 0x9a1ac769, F=0x0
-0, 869, 869, 1, 518400, 0xbab197ea
+0, 862, 862, 1, 518400, 0xbab197ea
1, 173947000, 173947000, 1934000, 1474, 0xa9b03cdc, F=0x0
0, 870, 870, 1, 518400, 0x9c4a3a3d
-0, 879, 879, 1, 518400, 0xbab197ea
+0, 871, 871, 1, 518400, 0xbab197ea
1, 175957000, 175957000, 1763000, 1019, 0x20409355, F=0x0
0, 880, 880, 1, 518400, 0xc9ebfa89
-0, 889, 889, 1, 518400, 0xbab197ea
+0, 881, 881, 1, 518400, 0xbab197ea
0, 946, 946, 1, 518400, 0xbaf801ef
1, 189295000, 189295000, 1968000, 1596, 0x408c726e, F=0x0
-0, 956, 956, 1, 518400, 0xbab197ea
+0, 947, 947, 1, 518400, 0xbab197ea
1, 191356000, 191356000, 1228000, 1517, 0xae8c5c2b, F=0x0
0, 957, 957, 1, 518400, 0x59f4e72f
-0, 963, 963, 1, 518400, 0xbab197ea
+0, 958, 958, 1, 518400, 0xbab197ea
+0, 963, 963, 1, 518400, 0x9d5b9d69
1, 192640000, 192640000, 1763000, 2506, 0xa458d6d4, F=0x0
-0, 964, 964, 1, 518400, 0x9d5b9d69
-0, 972, 972, 1, 518400, 0xbab197ea
+0, 964, 964, 1, 518400, 0xbab197ea
1, 195193000, 195193000, 1092000, 1074, 0x397ba9a8, F=0x0
0, 976, 976, 1, 518400, 0x923d1ce7
-0, 981, 981, 1, 518400, 0xbab197ea
+0, 977, 977, 1, 518400, 0xbab197ea
1, 196361000, 196361000, 1524000, 1715, 0x695ca41e, F=0x0
0, 982, 982, 1, 518400, 0x6e652cd2
-0, 989, 989, 1, 518400, 0xbab197ea
+0, 983, 983, 1, 518400, 0xbab197ea
1, 197946000, 197946000, 1160000, 789, 0xc63a189e, F=0x0
0, 990, 990, 1, 518400, 0x25113966
-0, 996, 996, 1, 518400, 0xbab197ea
+0, 991, 991, 1, 518400, 0xbab197ea
+0, 996, 996, 1, 518400, 0x2dc83609
1, 199230000, 199230000, 1627000, 1846, 0xeea8c599, F=0x0
-0, 997, 997, 1, 518400, 0x2dc83609
-0, 1004, 1004, 1, 518400, 0xbab197ea
+0, 997, 997, 1, 518400, 0xbab197ea
1, 200924000, 200924000, 1763000, 922, 0xd4a87222, F=0x0
0, 1005, 1005, 1, 518400, 0x90483bc6
-0, 1013, 1013, 1, 518400, 0xbab197ea
+0, 1006, 1006, 1, 518400, 0xbab197ea
0, 1053, 1053, 1, 518400, 0x3de86ab7
1, 210600000, 210600000, 1831000, 665, 0x55580135, F=0x0
-0, 1062, 1062, 1, 518400, 0xbab197ea
+0, 1054, 1054, 1, 518400, 0xbab197ea
1, 214771000, 214771000, 1558000, 1216, 0x50d1f6c5, F=0x0
0, 1074, 1074, 1, 518400, 0x8c320e68
-0, 1082, 1082, 1, 518400, 0xbab197ea
+0, 1075, 1075, 1, 518400, 0xbab197ea
0, 1128, 1128, 1, 518400, 0x81e977b2
1, 225640000, 225640000, 2127000, 2133, 0x670c11a5, F=0x0
-0, 1139, 1139, 1, 518400, 0xbab197ea
+0, 1129, 1129, 1, 518400, 0xbab197ea
+0, 1139, 1139, 1, 518400, 0xb046dd30
1, 227834000, 227834000, 1262000, 1264, 0xc1d9fc57, F=0x0
-0, 1140, 1140, 1, 518400, 0xb046dd30
0, 1145, 1145, 1, 518400, 0xbab197ea
Test sub2video failed. Look at tests/data/fate/sub2video.err for details.
make: *** [fate-sub2video] Error 1
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
Those who would give up essential Liberty, to purchase a little
temporary Safety, deserve neither Liberty nor Safety -- Benjamin Franklin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20180901/2cc2b78a/attachment.sig>
More information about the ffmpeg-devel
mailing list