Files
FFmpeg/libavcodec
Andreas Rheinhardt b8c45bbcbc libavcodec/cbs: Stop needlessly reallocating the units array
Currently, a fragment's unit array is constantly reallocated during
splitting of a packet. This commit changes this: One can keep the units
array by distinguishing between the number of allocated and the number
of valid units in the units array.

The more units a packet is split into, the bigger the benefit.
So MPEG-2 benefits the most; for a video coming from an NTSC-DVD
(usually 32 units per frame) the average cost of cbs_insert_unit (for a
single unit) went down from 6717 decicycles to 450 decicycles (based
upon 10 runs with 4194304 runs each); if each packet consists of only
one unit, it went down from 2425 to 448; for a H.264 video where most
packets contain nine units, it went from 4431 to 450.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@googlemail.com>
2019-02-25 21:40:13 +00:00
..
2019-01-01 21:11:47 +01:00
2018-04-30 21:50:12 +02:00
2018-02-09 22:10:56 +01:00
2017-10-03 19:47:37 -03:00
2018-08-28 04:25:35 +01:00
2018-10-15 01:19:45 +02:00
2018-08-08 00:13:13 +05:30
2018-09-23 14:42:34 +01:00
2018-09-23 14:42:34 +01:00
2018-07-18 13:59:25 +02:00
2018-04-19 22:59:40 +02:00
2017-11-09 19:49:32 +01:00
2018-02-24 17:06:31 +01:00
2018-02-24 17:06:31 +01:00
2017-10-03 19:47:37 -03:00
2018-04-25 23:09:47 +02:00
2017-08-30 12:13:01 +02:00
2017-09-16 19:55:03 +02:00
2017-08-30 12:13:01 +02:00
2018-12-23 15:30:13 +01:00
2018-12-10 11:19:36 +01:00
2018-12-13 19:30:39 +01:00
2018-09-23 15:25:50 +02:00
2018-11-10 23:48:27 +01:00
2018-12-23 20:24:47 +01:00
2018-05-25 20:09:22 +02:00
2017-12-10 14:43:01 +01:00
2018-02-24 17:06:31 +01:00
2018-12-20 18:40:41 +08:00
2017-12-11 00:42:26 -03:00
2019-01-16 01:29:18 +01:00
2017-10-03 19:47:37 -03:00
2017-10-03 19:47:37 -03:00
2019-02-23 22:48:35 +01:00
2018-01-03 13:00:06 -05:00
2018-12-23 15:30:13 +01:00
2018-12-01 19:41:48 +01:00
2019-01-12 17:16:47 +01:00
2018-05-10 23:03:50 +02:00
2019-01-25 16:53:27 +08:00
2019-01-25 16:53:27 +08:00
2018-12-03 23:34:05 +01:00
2018-03-07 22:26:53 +01:00
2018-11-18 22:59:29 +01:00
2018-11-18 22:59:29 +01:00
2018-11-18 22:59:29 +01:00
2017-09-22 01:33:22 +02:00
2018-02-24 04:50:55 +01:00
2019-01-20 21:42:20 +01:00
2018-09-08 21:21:50 +02:00
2018-12-23 15:30:13 +01:00
2017-10-04 23:14:37 +01:00
2018-12-31 02:37:08 +01:00
2018-02-21 23:38:30 +00:00
2018-04-25 22:07:20 +02:00
2017-12-19 23:21:59 +00:00
2017-12-19 23:21:59 +00:00
2017-09-22 01:33:22 +02:00
2017-10-03 19:47:37 -03:00
2018-12-10 21:38:08 +01:00
2019-02-23 22:48:35 +01:00