Mathieu Duponchelle
555a5ea9dd
basetsmux: use private copy of g_ptr_array_copy
...
This function is only present since glib 2.62
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913 >
2021-09-25 01:29:38 +00:00
Mathieu Duponchelle
c2eeb639b0
basetsmux: fix SCTE pts_adjustment with offsets
...
When there are elements between the demuxer and the muxer that
introduce an offset to the running time, or when offsets are
set on pads by the application, this shift must be taken into
account when calculating the final pts_adjustement.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913 >
2021-09-25 01:29:38 +00:00
Mathieu Duponchelle
c3a161f287
basetsmux: rework SCTE section handling to handle passthrough
...
mpegtsmux can receive SCTE sections from two origins: events
created by the application, and events forwarded downstream by
mpegtsdemux, containing sections that may not have been fully
parsed, and additional data to help tsmux translate times to
the correct domain, both for requesting keyframes and calculating
an accurate pts_adjustment.
The complete approach is documented further in a comment above
the relevant function.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913 >
2021-09-25 01:29:38 +00:00
Mathieu Duponchelle
e4f40ba526
mpegtspacketizer: handle "packetizing" already packetized data
...
.. when the section didn't have a packetizer. This can happen
as a result of building a new section from a copy of the original
data of another section.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913 >
2021-09-25 01:29:38 +00:00
Mathieu Duponchelle
4af003bc02
tsdemux: switch SCTE 35 sections handling to a passthrough model
...
Instead of modifying the splice times in the incoming sections
to running time and expecting eg mpegtsmux to convert those back
to its local PES time domain, which might be impossible when
those splice times are encrypted or the specification is extended,
transmit the needed information to the muxer as separate fields in
the event:
* A pts offset field can be used by the muxer in order to calculate
a final pts_adjustment
* A rtime_map can be used by the muxer to determine the correct
running times at which it should request keyframes
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913 >
2021-09-25 01:29:38 +00:00
Mathieu Duponchelle
1477d76b7d
scte-section: add support for packetizing splice_program_flag='0'
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913 >
2021-09-25 01:29:38 +00:00
Mathieu Duponchelle
612e064154
scte-section: add support for packetizing schedule events
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913 >
2021-09-25 01:29:38 +00:00
Mathieu Duponchelle
5ecd395d91
scte-section: Add TODO for porting to gst_bit_*
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913 >
2021-09-25 01:29:38 +00:00
Mathieu Duponchelle
e272fb3444
scte-section: add support for parsing splice components
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913 >
2021-09-25 01:29:38 +00:00
Mathieu Duponchelle
66533ea77d
scte-section: add support for SCHEDULE commands
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913 >
2021-09-25 01:29:38 +00:00
Mathieu Duponchelle
ab0ab46f13
scte-section: fix typo
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913 >
2021-09-25 01:29:37 +00:00
Mathieu Duponchelle
61fecce193
gst-scte-section: implement partial parsing
...
In cases where either the SIT is encrypted, or an unknown
command is encountered, we still want to send an event downstream.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913 >
2021-09-25 01:29:37 +00:00
Mathieu Duponchelle
d17c7f25e6
scte35-section: semantic API break
...
Document that the constructors for the splice events expect
a running time, as users of the API can not be expected to
predict the appropriate local PTS.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913 >
2021-09-25 01:29:37 +00:00
Mathieu Duponchelle
a9787d0c85
scte-section: add support for packetizing time_signal splices
...
time_signal splices are trivial, they only contain a splice_time()
and all the relevant information is carried in descriptors.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913 >
2021-09-25 01:29:37 +00:00
Mathieu Duponchelle
be4d0fff23
basetsmux: extend SCTE 35 support
...
Makes it possible to support passing SCTE 35 cue points from
demuxer to muxer, while preserving correct timing.
This will also improve ex nihilo cue points injection, as splice
times and durations are now interpreted as running time values,
and may trigger key unit requests.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913 >
2021-09-25 01:29:37 +00:00
Mathieu Duponchelle
1ca08bff57
tsdemux: Expose send-scte35-events property
...
When enabled, SCTE 35 sections (eg ad placement opportunities)
are forwarded as events donwstream.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913 >
2021-09-25 01:29:37 +00:00
Mathieu Duponchelle
b2718ed6cf
mpegtsbase: expose vmethod to let subclass handle sections
...
This can be used by tsdemux to handle and forward SCTE 35
sections.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913 >
2021-09-25 01:29:37 +00:00
Mathieu Duponchelle
a03c395582
mpegtssection: expose event constructor
...
This allows the demuxer to forward sections of interest downstream,
for example SCTE 35 splice information. These can then be reinjected
appropriately by a muxer for example.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913 >
2021-09-25 01:29:37 +00:00
Mathieu Duponchelle
fc975818b5
scte-section.h: fix type macros
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/913 >
2021-09-25 01:29:37 +00:00
Nicolas Dufresne
3037fde5eb
Move commit gst-indent hook to the root
...
This renable at meson setup time the installation of the gst-indent
commit hook. The hooks were kept from gst-devtools as this set supports
both C checks and Python checks.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/904 >
2021-09-24 17:47:01 -03:00
Thibault Saunier
776d8a6617
Add gst-integration-testsuites files as a submodule
2021-09-24 16:36:50 -03:00
Thibault Saunier
098b876985
Import gst-integration-testsuites
2021-09-24 16:29:33 -03:00
Thibault Saunier
c6b9c81fdd
ci: Remove now useless .gitlab-ci.yml files
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891 >
2021-09-24 16:21:18 -03:00
Thibault Saunier
07b4c930bc
Cleanup .gitignore
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891 >
2021-09-24 16:21:18 -03:00
Thibault Saunier
091946a478
ci: Port CI to the new monorepo
...
Main differences with previous setup are:
- No manifest creation
- gst-indent is executed only when the bot is assigned (instead of the manifest task)
- Cerbero jobs are triggered in the cerbero repo
- Remove cerbero and android related files as they now are in cerbero
itself.
- Update `container.ps1` to the new file layout
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891 >
2021-09-24 16:21:18 -03:00
Thibault Saunier
bcd3ffa8b2
Cleanup root directory from misc files
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891 >
2021-09-24 16:21:18 -03:00
Thibault Saunier
e0d3a211d9
base: Fix a suppression that has a slightly different trace
...
For some reason making a monorepo lead to some minor stack changes
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891 >
2021-09-24 16:21:18 -03:00
Thibault Saunier
f33e6655a3
Update README.md now that all modules have been merged in gstreamer
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891 >
2021-09-24 16:21:18 -03:00
Thibault Saunier
fba2402ac3
Remove git-update and git-worktree as they do not make sense anymore
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891 >
2021-09-24 16:21:18 -03:00
Thibault Saunier
7b6ac2dea8
Remove local gst wrap
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891 >
2021-09-24 16:21:17 -03:00
Thibault Saunier
d975e07edc
Merging gst-build
2021-09-24 16:16:32 -03:00
Thibault Saunier
9f659233ea
Move files from gstreamer-sharp into the "subprojects/gstreamer-sharp/" subdir
2021-09-24 16:16:29 -03:00
Thibault Saunier
d274c90e92
Merging gstreamer-sharp
2021-09-24 16:16:14 -03:00
Thibault Saunier
24c6e49874
Move files from gst-python into the "subprojects/gst-python//" subdir
2021-09-24 16:16:05 -03:00
Thibault Saunier
d0c25d3184
Merging gst-python
2021-09-24 16:16:03 -03:00
Thibault Saunier
41ed155bdf
Move files from gst-examples into the "subprojects/gst-examples/" subdir
2021-09-24 16:15:58 -03:00
Thibault Saunier
a7f54159b7
Merging gst-examples
2021-09-24 16:15:54 -03:00
Thibault Saunier
5c8ad24cdd
Move files from gst-docs into the "subprojects/gst-docs/" subdir
2021-09-24 16:15:51 -03:00
Thibault Saunier
e9465961bc
Merging gst-docs
2021-09-24 16:15:41 -03:00
Thibault Saunier
2701634c29
Move files from gst-devtools into the "subprojects/gst-devtools/" subdir
2021-09-24 16:15:38 -03:00
Thibault Saunier
86a93d746d
Merging gst-devtools
2021-09-24 16:15:34 -03:00
Thibault Saunier
01e70e3552
Move files from gst-editing-services into the "subprojects/gst-editing-services/" subdir
2021-09-24 16:15:30 -03:00
Thibault Saunier
6bb75890d9
Merging gst-editing-services
2021-09-24 16:15:25 -03:00
Thibault Saunier
a43d7eaef4
Move files from gst-rtsp-server into the "subprojects/gst-rtsp-server/" subdir
2021-09-24 16:15:21 -03:00
Thibault Saunier
a9d9189aa2
Merging gst-rtsp-server
2021-09-24 16:15:18 -03:00
Thibault Saunier
319b75d4b5
Move files from gst-ci into the "subprojects/gst-ci/" subdir
2021-09-24 16:15:13 -03:00
Thibault Saunier
c7253318b3
Merging gst-ci
2021-09-24 16:15:12 -03:00
Thibault Saunier
7a371e75b7
Move files from gst-libav into the "subprojects/gst-libav/" subdir
2021-09-24 16:15:08 -03:00
Thibault Saunier
97408bc7b6
Merging gst-libav
2021-09-24 16:15:07 -03:00
Thibault Saunier
b7d9115a05
Move files from gst-omx into the "subprojects/gst-omx/" subdir
2021-09-24 16:15:01 -03:00