Edward Hervey
f33ce4fe8b
encodebin: Fix pad removal for encodebin vs encodebin2
...
Clarify the fact that `encodebasebin->src_pad` is set when using a static source
pad (`encodebin`) and when not set it's dynamically added source
pads (`encodebin2`).
Fixes usage of encodebin2 when profiles are updated
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6667 >
2024-04-18 09:11:58 +00:00
Hou Qi
1e70dea347
encodebin: Add the parser before timestamper to tosync list
...
Also need to sync the state of the parser before timestamper with
parent.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6481 >
2024-03-29 07:59:06 +00:00
Thibault Saunier
147eb44149
encodebin2: Fix support for rendering to stream without muxer
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5914 >
2024-01-15 18:28:46 +00:00
Thibault Saunier
7eca75130d
encodebin: Plug a parser before timestamper
...
Timestamper might not support all stream formats so we need to make sure
some element is able to convert between those formats
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4122 >
2023-05-22 15:10:52 +00:00
Tim-Philipp Müller
8759b77a50
gst-plugins-base: re-indent with GNU indent 2.2.12
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4182 >
2023-03-17 03:18:53 +00:00
Thibault Saunier
77b6f58074
encodebin: Add timestamper elements when available
...
Timestamper elements are made to ensure stream timestamp are clean and
ready to be used by muxers, we should make use of them to cleanup
streams before muxing.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3779 >
2023-01-24 16:31:40 +00:00
Tim-Philipp Müller
0feb2770e6
encodebin: drop use of GSlice
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3695 >
2023-01-24 15:25:06 +00:00
Edward Hervey
c00da50c61
encodebasebin: Don't leak muxer pad
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390 >
2022-11-12 10:33:51 +01:00
Thibault Saunier
6a4425e46a
meson: Call pkgconfig.generate in the loop where we declare plugins dependencies
...
Removing some copy pasted code
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2970 >
2022-09-01 21:17:35 +00:00
Mathieu Duponchelle
efb18ec300
smartencoder: fix detection of avc1
...
While avc1 is the FourCC, avc is the name used in caps
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1549 >
2022-08-02 15:48:12 +00:00
Mathieu Duponchelle
b2c4052531
gstsmartencoder: don't make calculations for invalid DTS
...
Instead, as the current code relies on having a valid DTS (for lining
up passed through and re-encoded segments), simply compute a DTS
from the PTS if the DTS was invalid.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1549 >
2022-08-02 15:48:12 +00:00
Xavier Claessens
b99ecc78ca
Replace gst-i18n-*.h with gi18n-lib.h
...
GLib guarantees libintl is always present, using proxy-libintl as
last resort. There is no need to mock gettex API any more.
This fix static build on Windows because G_INTL_STATIC_COMPILATION must
be defined before including libintl.h, and glib does it for us as part
as including glib.h.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2028 >
2022-04-19 18:01:06 +00:00
Hou Qi
89a5cae89b
encodebasebin: Use GST_DEBUG instead of GST_ERROR when skipping muxer
...
_get_muxer() skips the muxers that do not satisfy the requirement and select
the desired one. It should not print error log, so use debug log instead.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1830 >
2022-03-06 18:15:04 +00:00
Thibault Saunier
156f2543ca
smartencoder: Force reencoding of vp9 for profiles can't support
...
If the input file is in a profile we won't be able to output (1 or 3 in BGR
format), simply reencode everything for now.
Once we add support for that case we can remove that code
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1062 >
2021-10-18 10:11:08 -03:00
Thibault Saunier
e9fdfade61
smartencoder: Always plug a vp9parse when encoding vp9
...
This way we know that all relevant fields about video format are
added and we avoid renegotiation issues.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1062 >
2021-10-18 10:11:08 -03:00
Thibault Saunier
32d36d0e89
smartencoder: Fix renegotiating when reencoding parts of the stream with vpx
...
In the encoded streams we might not have all the information about the
raw video stream, but when reencoding they end up being specified, even
if those are default values.
As vp8 decoders always output frames in some YUV color space we can
ensure that when upstream doesn't specify any value in its caps we
use the default one which is what we end up doing when decoding/reencoding
anyway, so this way downstream (matroskamux in that case) doesn't need
to be able to renegotiate (which it doesn't).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1062 >
2021-10-18 10:10:24 -03:00
Thibault Saunier
2fd28195ca
Move files from gst-plugins-base into the "subprojects/gst-plugins-base/" subdir
2021-09-24 16:13:26 -03:00