mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-21 15:56:42 +00:00
37742cd36d
Implement a single timer queue for all timers. The goal is to always use ordered queues for storing timers. This way, extracting timers for execution becomes O(1). This also allow separating the clock wait scheduling from the timer itself and ensure that we only wake up the timer thread when strictly needed. The knew data structure is still O(n) on insertions and reschedule, but we now use proximity optimization so that normal cases should be really fast. The GList structure is also embeded intot he RtpTimer structure to reduce the number of allocations.
30 lines
746 B
Meson
30 lines
746 B
Meson
rtpmanager_sources = [
|
|
'gstrtpmanager.c',
|
|
'gstrtpbin.c',
|
|
'gstrtpdtmfmux.c',
|
|
'gstrtpjitterbuffer.c',
|
|
'gstrtpmux.c',
|
|
'gstrtpptdemux.c',
|
|
'gstrtprtxqueue.c',
|
|
'gstrtprtxreceive.c',
|
|
'gstrtprtxsend.c',
|
|
'gstrtpssrcdemux.c',
|
|
'rtpjitterbuffer.c',
|
|
'rtpsession.c',
|
|
'rtpsource.c',
|
|
'rtpstats.c',
|
|
'rtptimerqueue.c',
|
|
'gstrtpsession.c',
|
|
'gstrtpfunnel.c',
|
|
]
|
|
|
|
gstrtpmanager = library('gstrtpmanager',
|
|
rtpmanager_sources,
|
|
c_args : gst_plugins_good_args,
|
|
include_directories : [configinc, libsinc],
|
|
dependencies : [gstbase_dep, gstnet_dep, gstrtp_dep, gio_dep],
|
|
install : true,
|
|
install_dir : plugins_install_dir,
|
|
)
|
|
pkgconfig.generate(gstrtpmanager, install_dir : plugins_pkgconfig_install_dir)
|
|
plugins += [gstrtpmanager]
|