Marek Vasut
fbd02b3e2a
bayer2rgb: Pass all parameters to LINE() macro
...
Pass all three parameters used by the LINE() macro to the LINE() macro
and unroll the code for readability. Add more comments regarding which
of these LINE()s point to which data in the temporary buffer to make
the code less confusing.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4686 >
2023-06-15 08:26:12 +00:00
Marek Vasut
8bec6828f4
bayer2rgb: Fold src_stride into gst_bayer2rgb_process()
...
The source stride parameter can be easily obtained from GstBayer2RGB
structure, do it within gst_bayer2rgb_process() and drop the parameter.
No functional change.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4686 >
2023-06-15 08:26:12 +00:00
Marek Vasut
ddcb45ffc0
bayer2rgb: Inline the j=0 value
...
The j variable is used as an iterator further down in this code, but
here it can be just inlined in the macro parameters to make the code
easier to read. This is done in preparation for further changes. No
functional change.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4686 >
2023-06-15 08:26:12 +00:00
Marek Vasut
484e31c1d9
bayer2rgb: Disable in-place transform
...
The bayer2rgb process implemented doesn't support in-place tranform.
This element doesn't implement a "transform_ip" vmethod of
GstBaseTransform it will revert to using the "tranform" vmethod.
It's misleading to set it to TRUE, here. Change this to FALSE.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4686 >
2023-06-15 08:26:12 +00:00
Marek Vasut
0763fb107d
rgb2bayer: Support video/x-bayer 10/12/14/16 bit depths
...
Add support for conversion to 10/12/14/16 bit bayer pattern.
The implementation is rather simplistic, just take the ARGB
input, generate 16-bit data out of it instead of 8-bit, shift
them as required by the output bitness, and apply endian swap.
Example usage:
```
$ gst-launch-1.0 videotestsrc num-buffers=1 ! \
video/x-raw,width=512,height=512,format=ARGB ! \
rgb2bayer ! \
video/x-bayer,format=bggr12le ! \
filesink location=/tmp/bayer12.raw
```
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4686 >
2023-06-15 08:26:12 +00:00
Tim-Philipp Müller
a9c5e5e239
asfmux: fix potentially unaligned write on 32-bit ARM
...
Fixes #2665
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4842 >
2023-06-14 04:59:05 +00:00
Nicolas Dufresne
4402a8044f
fakesinks: Fix recursive notify loop
...
The proxy callback for the notify::last-message was emiting the signal
again on the child, which caused an infinit loop. We could swap the child
and the user data to signal to the bin instead, but it was found that proxying
this signal was not very useful. Typical use case it to set silent=0 and use
deep-notify feature. Proxying that signal just duplicate that output which
isn't very useful.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4766 >
2023-06-13 23:33:08 +00:00
Jan Alexander Steffens (heftig)
6e9d67bbc1
mpegtsmux: Use terminological ISO 639-2 language codes
...
These are preferred in most circumstances.
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2649
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4795 >
2023-06-12 08:51:10 +00:00
Vivia Nikolaidou
0e62bb2ba6
basetsmux: Fix language crash when ts_pad->stream is NULL
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4785 >
2023-06-07 16:58:38 +00:00
Vivia Nikolaidou
0a331402d6
tsdemux: Detect language from ac3 descriptor
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4709 >
2023-06-07 13:04:03 +00:00
Vivia Nikolaidou
395e0c3925
tsmux: Resend PMT whenever the language changes
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4711 >
2023-06-01 17:05:11 +00:00
Vivia Nikolaidou
1781b26ad2
tsmux.h: Remove TSMUX_MAX_ES_INFO_LENGTH dead code
...
Also TsMux.es_info_buf which was also not used anywhere
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4681 >
2023-05-23 14:00:11 +00:00
Vivia Nikolaidou
9e84b737cb
tsmux: Separate DVB and ATSC AC3 descriptors
...
The previous code was ATSC-specific. Separated it into gstatscmux.c and
added the DVB-specific one from ETSI EN 300 468 V1.11.1 (2010-04)
https://www.etsi.org/deliver/etsi_en/300400_300499/300468/01.11.01_60/en_300468v011101p.pdf
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4681 >
2023-05-23 14:00:11 +00:00
Vivia Nikolaidou
866d5d87c4
tsmux: Refactor AC3 descriptor to use GstByteWriter
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4681 >
2023-05-23 14:00:11 +00:00
Vivia Nikolaidou
637e263504
tsmux: Parse bitrate from tags into the stream
...
Instead of parsing a hardcoded zero and always writing the highest
limit.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4681 >
2023-05-23 14:00:11 +00:00
Vivia Nikolaidou
7a98a4214b
tsmux: Fix 0x81 descriptor for AC3 streams
...
According to ATSCA/52:2018
https://prdatsc.wpenginepowered.com/wp-content/uploads/2021/04/A52-2018.pdf
Used wireshark as ground truth for detection/parsing.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4681 >
2023-05-23 14:00:11 +00:00
Ruben Gonzalez
059965fe53
doc: Fix newline char between authors
...
Found running `gst-inspect-1.0 -a |& grep -v ":" | grep @`
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4682 >
2023-05-20 05:48:23 +00:00
Shengqi Yu
b092c3f580
h264parse: adjust some logs printing level in h264parse
...
adjust log level from GST_ERROR to GST_WARNING when h264 caps have
codec_data but no avc format or have no codec data or stream-format.
Because theses are not real errors, it is easy to mislead if print error
logs.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4675 >
2023-05-20 02:07:36 +00:00
Thibault Saunier
6dff93acf6
testsrcbin: Remove spurious caps unref
...
Caps are cleared at the end of the function
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2575
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4668 >
2023-05-19 22:00:39 +00:00
Seungha Yang
e9d8bf7532
h264parser: Define level enum values
...
... and stop duplicating it
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4595 >
2023-05-17 21:29:25 +00:00
Víctor Manuel Jáquez Leal
ad40a9323e
jpegparse: fix warning text and debug data
...
They were backwards or missing.
Fix : #2567
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4641 >
2023-05-15 17:31:58 +02:00
Mihail Ivanchev
8e64dea5c6
gstcodectimestamper: remove PC file generation from plugin's own meson.build
...
The file generated here is incomplete; it is generated for all plugins in a loop at an upper level.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4518 >
2023-05-01 16:41:32 +00:00
Thibault Saunier
187d91627c
rtpsrc: Give better names to internal elements
...
Same name was used for all instances of rtpsrc making debugging more complex
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4484 >
2023-04-28 16:00:47 +00:00
Edward Hervey
ab458eae56
pcapparse: Add support for Linux "cooked" capture encapsulation v2
...
See https://www.tcpdump.org/linktypes/LINKTYPE_LINUX_SLL2.html
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4451 >
2023-04-19 09:56:47 +02:00
Sebastian Dröge
6a0965cb8a
tsdemux: Set number of channels to 2 for dual mono Opus
...
Instead of leaving it at 0, which will then cause caps creation to fail.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4445 >
2023-04-18 14:56:44 +03:00
Seungha Yang
9489fb3f54
sdpdemux: Add support for RFC4570 SDP source filters
...
Parse source-filter attributes and configure udpsrc accordingly
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3485 >
2023-04-12 16:32:07 +00:00
Thibault Saunier
5797fa09af
codectimestamper: Implement QUERY_CAPS support
...
This is required to ensure that downstream restrcitions are also
propagated upstream.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4341 >
2023-04-12 15:07:28 +00:00
Thibault Saunier
dbc6afd874
codectimestamper: Use accept-intersect and accept-template caps
...
We should behave similarly to video parsers so we can use:
- accept-template as we can also accept caps with missing fields.
- accept-intersect to do quick check with the pad template caps as it is
enough. Users should have figured the appropriate full caps on a
previous caps query
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4341 >
2023-04-12 15:07:28 +00:00
Jan Schmidt
1b762ba012
mpegpsdemux: Rework gap sending
...
Take the gap logic from mpegtsdemux, and don't
send gap events on a stream that's outputting buffers with
no timestamps. Time isn't advancing, but the stream has
buffers - so it's not sparse.
Fixes #2374
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4333 >
2023-04-06 01:34:03 +00:00
Nicolas Dufresne
c883fea19e
h265parse: Don't override upstream framerate
...
The framerate should only be replaced (and corrected for alternating field)
when it is parsed from the bitstream. Otherwise, the upstream framerate
from caps should be trusted and assumed correct.
Related to gst-plugins-bad!2020
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4259 >
2023-04-05 13:33:39 -04:00
Nicolas Dufresne
93904f1921
h265parse: Rename parsed_framerate to framerate_from_caps
...
That meaning of parsed_framerate is ambigious, it is set whenever the
framerate has been parsed from caps, which can be confused with being
parsed from the bitstream. Rename this as framerate_from_caps.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4259 >
2023-04-05 13:33:39 -04:00
Edward Hervey
38dd5deb66
tsdemux: Minor refactoring
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4336 >
2023-04-04 20:54:50 +00:00
Edward Hervey
8e51399334
mpegts: Fix include headers
...
<gst/mpegts/mpegts.h> is the unique header to use
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4336 >
2023-04-04 20:54:50 +00:00
Brad Hards
4087bb9a55
mpegts: remove stream-type from KLV meta
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4310 >
2023-03-31 07:03:54 +00:00
Brad Hards
6f2eb752c5
mpegts: add support for KLV metadata in PES packets
...
Co-authored-by: Andoni Morales Alastruey <ylatuya@gmail.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1312 >
2023-03-30 12:16:52 +00:00
Brad Hards
4e14bac1ff
mpegts: implement metadata in PES packets
...
Co-authored-by: Andoni Morales Alastruey <ylatuya@gmail.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1312 >
2023-03-30 12:16:52 +00:00
Sebastian Dröge
84e08a377b
mpegtsdemux: Fix handling of explicit Opus channel mapping
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4180 >
2023-03-23 08:46:50 +00:00
Sebastian Dröge
9d2ac6e90b
mpegtsmux: Allow writing arbitrary Opus channel mapping families and up to 255 channels
...
And fix writing of dual-mono special cases.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4180 >
2023-03-23 08:46:50 +00:00
Sebastian Dröge
ccad9a7338
plugins: Fix various trivial clang compiler warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4210 >
2023-03-18 16:16:55 +02:00
Sebastian Dröge
3851c2da12
tsdemux: Fix reading of extended Opus channel configuration
...
Argument evaluation order is implementation defined in C, and gcc is
evaluating right-to-left (works) while clang is evaluating left-to-right
(does not work).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4210 >
2023-03-18 10:01:25 +00:00
Nicolas Dufresne
9deb3d6aa4
h264parse: Stop considering NO_NAL as an error
...
The NO_NAL return value simply means that the buffer did not contain
enough data to identity a NAL. This should lead to waiting for more data not
considering the stream as invalid.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3234 >
2023-03-17 21:25:49 +00:00
Tim-Philipp Müller
81716a1097
gst-plugins-bad: re-indent with GNU indent 2.2.12
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4182 >
2023-03-17 03:18:54 +00:00
Seungha Yang
ad30fb87c2
h264parse: Validate VUI framerate
...
A few streams contain invalid/wrong framerate in VUI. Do validate
it based on the spec and ignore invalid VUI framerate values.
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1753
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4127 >
2023-03-08 11:59:52 +00:00
Seungha Yang
837d8d1b20
h265timestamper: Use gst_h265_parser_parse_decoder_config_record()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2759 >
2023-03-06 12:50:41 +00:00
Seungha Yang
8c596aeb5b
h265parse: Use gst_h265_parser_parse_decoder_config_record()
...
Stop duplicating code and use newly added parsing method instead
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2759 >
2023-03-06 12:50:41 +00:00
Mengkejiergeli Ba
eab15c8659
h265parse: Fix to check returned value
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3968 >
2023-03-02 11:00:20 +00:00
Víctor Manuel Jáquez Leal
235f29ec84
jpegparse: demote and promote log messages level
...
Before those levels where when implementing the plugin. Now these
levels are for reporting issues from users.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4039 >
2023-03-01 11:42:44 +00:00
He Junyan
d8feddcc0c
jpegparse: reset parse state when the SOI is not the first marker
...
There may be garbage or some bits before a SOI comes in some problematic
mjpeg streams. For example, some network error may cause the EOI marker
of the previous frame lost, and when the new frame's SOI comes, we still
use the state of the last frame, which will generate errors.
For this kind of frames without EOI, if that frame already has some data
(the SOS segment is detected), we still push it as a frame with CORRUPTED
flag set. But if not, we just discard all the data before the new SOI.
Co-Authored-By: Víctor Jáquez <vjaquez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4039 >
2023-03-01 11:42:44 +00:00
amindfv
2f629b435b
alphacombine: add support for I420_10LE
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4071 >
2023-02-27 23:47:50 +00:00
Seungha Yang
5b84439711
h265parse: Always set profile on src caps
...
h265parse should provide profile for autoplugging
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4026 >
2023-02-23 10:13:54 +00:00