platform/upstream/gst-plugins-base.git
23 months agoaudiotestsrc: Fix crash in gst_audio_test_src_fill() 00/275600/1 accepted/tizen_6.5_unified tizen_6.5 accepted/tizen/6.5/unified/20220603.141221 submit/tizen_6.5/20220527.050658 submit/tizen_6.5/20220602.024521
Gilbok Lee [Fri, 27 May 2022 01:56:30 +0000 (10:56 +0900)]
audiotestsrc: Fix crash in gst_audio_test_src_fill()

- src->process is changed to NULL,
  during gst_audio_test_src_fill operation

Change-Id: Ie943387223c2bd133c3c70b6b7951a9986edd0c2

23 months agotag: id3v2: fix frame size check and potential invalid reads 93/274993/3 accepted/tizen/6.5/unified/20220516.133613 submit/tizen_6.5/20220513.075852
Tim-Philipp Müller [Wed, 3 Mar 2021 01:08:25 +0000 (01:08 +0000)]
tag: id3v2: fix frame size check and potential invalid reads

Check the right variable when checking if there's
enough data left to read the frame size. (CVE-2021-3522)

Closes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/876

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1065>

Change-Id: I4d07368de74942af1f02453a78f281b91a0c6fbb

2 years agosubparse: Add drop-out-of-segment property 02/267302/1 accepted/tizen/6.5/unified/20211205.214010 submit/tizen_6.5/20211201.073933
Gilbok Lee [Wed, 1 Dec 2021 00:34:36 +0000 (09:34 +0900)]
subparse: Add drop-out-of-segment property

- When property 'drop-out-of-segment' is set to false,
  subparser will not drop the buffer even
  the start time of the parsed buffer is out of the segment.

Change-Id: Ia7d84ad26c2e93cda46778c86d35bd67442e907b

2 years agosubparse: Calcurate buffer pts using timestamp map for HLS webvtt 01/267301/1
Gilbok Lee [Wed, 24 Nov 2021 10:28:03 +0000 (19:28 +0900)]
subparse: Calcurate buffer pts using timestamp map for HLS webvtt

- parsing error occurs due to out of segment

Change-Id: Ib7945d1d3e64ed2568df94c77436444117fb9ea5

2 years agosubparse: Send custom event for fragment_timestamp 00/267300/1
Gilbok Lee [Wed, 24 Nov 2021 00:33:17 +0000 (09:33 +0900)]
subparse: Send custom event for fragment_timestamp

- If there is no buffer in case of discontinuous,
  do not send reference timestamp.
- related commit: d4e6aa89f86efbc9cc665f2ee123a33015f1449a
  'subparse: Add reference timestamp meta in GstBuffer for HLS webvtt' commit

Change-Id: Id98697ba6db1dc94b4ce4f753670524f6fcf506e

2 years agosubparse: Add reference timestamp meta in GstBuffer for HLS webvtt 80/266880/1
Gilbok Lee [Sat, 20 Nov 2021 06:39:08 +0000 (15:39 +0900)]
subparse: Add reference timestamp meta in GstBuffer for HLS webvtt

- When discontinuous buffer come in during HLS,
  send the input buffer pts to the reference timestamp meta data
- The reference timetamp meta data is added with the input buffer pts
  to synchronize with the mpeg ts stream

Change-Id: I5ff5b9523b44323f1d6aa37133e5341505d4ce55

2 years agodecodebin3: Avoid overriding explicit user selection 81/264681/1 accepted/tizen/6.5/unified/20211029.013338 accepted/tizen/unified/20211001.001525 submit/tizen/20210928.073626 submit/tizen_6.5/20211028.163401 tizen_6.5.m2_release
Eunhye Choi [Tue, 28 Sep 2021 07:08:28 +0000 (16:08 +0900)]
decodebin3: Avoid overriding explicit user selection

In case the user set a list of streams to select or answer explicitly
to all 'select-stream' event, we should respect the choice and not
try to add a stream per type.

related upstream commit :
b41b87522f59355bb21c001e9e2df96dc6956928
c9c93339fbd2d37f1ddfd054f7f9e26bce6df743
40fde5fcad0bcdb5429d7bf573690cfe55fc79c8

Change-Id: I63b75bb02fbe40392ae3edbf83a9830d7b606437

2 years agocameracontrol: Add new interface for extra preview GOP interval 03/264003/1 accepted/tizen/unified/20210916.014305 submit/tizen/20210915.115302
Jeongmo Yang [Mon, 13 Sep 2021 11:16:35 +0000 (20:16 +0900)]
cameracontrol: Add new interface for extra preview GOP interval

[Version] 1.16.2-18
[Issue Type] New feature

Change-Id: I5bff2e0433c87bc2daf2949804719cd41c1b48f2
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
2 years agocameracontrol: Add new interface for extra preview bitrate 79/263379/1 accepted/tizen/unified/20210906.123759 submit/tizen/20210903.031152
Jeongmo Yang [Wed, 1 Sep 2021 11:54:26 +0000 (20:54 +0900)]
cameracontrol: Add new interface for extra preview bitrate

[Version] 1.16.2-17
[Issue Type] New feature

Change-Id: Iaace8d2d4814cb782809daf87905d4ec946664f8
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
2 years agoMerge "subparse: Remove gst_event_unref when not support byte seek" into tizen accepted/tizen/unified/20210802.135813 submit/tizen/20210730.010728
Gilbok Lee [Fri, 30 Jul 2021 00:18:59 +0000 (00:18 +0000)]
Merge "subparse: Remove gst_event_unref when not support byte seek" into tizen

2 years agosubparse: Remove gst_event_unref when not support byte seek 67/261967/1
Gilbok Lee [Thu, 29 Jul 2021 23:45:57 +0000 (08:45 +0900)]
subparse: Remove gst_event_unref when not support byte seek

Change-Id: I5b1ab17ef331a4a712d02cbb6969dd5bbc09cd0e

2 years agoGstVideoOverlay: Add gst_video_overlay_set_wl_window_exported_shell_handle 58/261558/4 accepted/tizen/unified/20210722.034903 submit/tizen/20210721.092635
Hyunil [Wed, 21 Jul 2021 06:37:25 +0000 (15:37 +0900)]
GstVideoOverlay: Add gst_video_overlay_set_wl_window_exported_shell_handle

- new interface for a shell handle exported by wayland window for synchronization between UI and video

[Version] 1.16.2-16
[Issue Type] New feature

Change-Id: I04d6244062892712c34278343eb9926c25483c07
Signed-off-by: Hyunil <hyunil46.park@samsung.com>
2 years agosubparse: lower text buffer threshold 60/261360/1 accepted/tizen/unified/20210719.025235 submit/tizen/20210716.034059
Hosang Lee [Wed, 17 Jun 2020 00:03:51 +0000 (09:03 +0900)]
subparse: lower text buffer threshold

It is possible for subtitle files to have a string length less than 30.
WebVTT for example may contain only the 'WEBVTT' string in the file
without any cues.
As an example in hls streams, since WEBVTT files can be segmented
like video/audio, some subtitle segments may only contain just the
header string.

Change-Id: I42dd0497852550d7cd6dd21a485856f06af55d71
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/708>

2 years agosubparse: convert from pango-markup to utf8 .. 59/261359/1
Mathieu Duponchelle [Fri, 20 Mar 2020 18:09:17 +0000 (19:09 +0100)]
subparse: convert from pango-markup to utf8 ..

when downstream requires it

Change-Id: I855f284401d8f5abbc4a1b1351f541c9883c92e4

2 years agosubparse: accept WebVTT timestamps without an hour component 58/261358/1
Mathieu Duponchelle [Wed, 11 Mar 2020 00:01:34 +0000 (01:01 +0100)]
subparse: accept WebVTT timestamps without an hour component

https://www.w3.org/TR/webvtt1/#webvtt-timestamp

Change-Id: I5e87fdcda7f150c12fc08857ce04c378001321bd
mm:ss,000 is a valid WebVTT timestamp

2 years agosubparse: Send timestamp map custom event for HLS webvtt 32/260432/5 accepted/tizen/unified/20210707.070828 submit/tizen/20210702.012922 submit/tizen/20210705.030138
Gilbok Lee [Thu, 24 Jun 2021 23:41:16 +0000 (08:41 +0900)]
subparse: Send timestamp map custom event for HLS webvtt

Change-Id: I19efb35add97820252d4a0cb8bab60f9d58e5002

2 years agocameracontrol: Add new interface for extra preview stream format 70/259470/2 accepted/tizen/unified/20210621.123206 submit/tizen/20210618.081505
Jeongmo Yang [Tue, 15 Jun 2021 03:26:39 +0000 (12:26 +0900)]
cameracontrol: Add new interface for extra preview stream format

[Version] 1.16.2-14
[Issue Type] New feature

Change-Id: If83351104c86b97be5d354b874ad5d777eab796b
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
2 years agosubparse: check byte seekability 92/259592/1 submit/tizen/20210616.025147
ruble [Thu, 10 Jun 2021 00:36:25 +0000 (09:36 +0900)]
subparse: check byte seekability

- If seeking in byte format is not possible,
  it'll be handled by default handler.

Change-Id: I186a643a81b084070cea02c64809c2ed1e38f4db

2 years agoRevert changes
ruble [Thu, 10 Jun 2021 05:35:11 +0000 (14:35 +0900)]
Revert changes

Change-Id: Ieddc55a98ea8104c97e0ae589f81fc6efad37452

2 years agosubparse: check byte seekability
ruble [Thu, 10 Jun 2021 00:36:25 +0000 (09:36 +0900)]
subparse: check byte seekability

- If seeking in byte format is not possible,
  it'll be handled by default handler.

Change-Id: I0474d0801b9f47a870b43e6e4bdeb712231892b1

2 years agoappsrc: add max-buffers property 37/259537/1
Eunhye Choi [Tue, 8 Jun 2021 10:50:26 +0000 (19:50 +0900)]
appsrc: add max-buffers property

- max-buffers is about the max number of queued buffers
  which is from upstream source code

Change-Id: I600401b44bffdff7ed7689a2f2670beabb95ca00

2 years agosubparse: check byte seekability
ruble [Wed, 9 Jun 2021 04:54:45 +0000 (13:54 +0900)]
subparse: check byte seekability

Change-Id: I9eacff2d1a7f2dcbfae32a4e5a96e9436efa3d70

3 years agortpbuffer: add gst_rtp_buffer_get_extension_onebyte_header_from_bytes 40/248340/4 accepted/tizen/unified/20210428.040400 submit/tizen/20210423.074051
Havard Graff [Tue, 28 Jan 2020 17:17:47 +0000 (18:17 +0100)]
rtpbuffer: add gst_rtp_buffer_get_extension_onebyte_header_from_bytes

So that one can parse the GBytes returned by gst_rtp_buffer_get_extension_bytes

Original patch
 : https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/commit/19e4d1a93cb21c71f7b359f2fc545875fbd0c930

Change-Id: I88c685c13302d0d9e058d9d580110f08f9612844

3 years agortcpbuffer: add RTPFB_TYPE_TWCC for Transport-Wide Congestion Control 39/248339/4
Havard Graff [Tue, 19 Mar 2019 15:20:01 +0000 (16:20 +0100)]
rtcpbuffer: add RTPFB_TYPE_TWCC for Transport-Wide Congestion Control

Original patch
 : https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/commit/daea137c9db1809233dfa79e05bd416358e526e9

Change-Id: Ib94aef95e824841372e037309b9909f5e713a1ee

3 years agodecodebin3: do not drop regular eos event 97/257197/1 accepted/tizen/unified/20210422.005402 submit/tizen/20210421.110538
Eunhye Choi [Tue, 20 Apr 2021 10:05:51 +0000 (19:05 +0900)]
decodebin3: do not drop regular eos event

- decodebin3 send eos event to downstream when it gets eos event from all tracks
  but it causes hang up if application ask changing pipeline state to PAUSED.
- eos track has no data to preroll but sink does not know whether it is eos or not
  because d3 drop the eos and it is waiting another track's eos.

Change-Id: Iee3aaa622f88898f5030a154f4eae25bc9fca562
(cherry picked from commit d52a7353d161875acb8d1168914d600d905374de)

3 years agoRevert "decodebin3: do not drop the eos event" 68/257068/1
Eunhye Choi [Tue, 13 Apr 2021 09:47:34 +0000 (18:47 +0900)]
Revert "decodebin3: do not drop the eos event"

This reverts commit e81e47479b49ffe98c3614ad2295c56e28e0b282.

- To allow pad switching in case of adaptive streaming.

Change-Id: Ic0102cc8cb83a2607ae7b24e8ff473df07a08dfa

3 years agodecodebin3: Release selection lock when pushing EOS 36/255836/3 accepted/tizen/unified/20210407.100555 submit/tizen/20210324.231443 submit/tizen/20210405.012807
Edward Hervey [Fri, 11 Dec 2020 09:13:59 +0000 (10:13 +0100)]
decodebin3: Release selection lock when pushing EOS

We can't keep the lock otherwise this would lock other actions. In order to keep
it safe, we grab a list of peer pads to send EOS to with the lock taken, then
send to the peer pads with the lock released.

Also make sure the selection lock is taken for another call to this function

Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/847

Change-Id: I8c811ff53b77ed62b79a3e90f1f4dab616f02e36
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/971>

3 years ago[cameracontrol] Add new enum for strobe 00/252800/1 accepted/tizen/unified/20210208.061740 submit/tizen/20210204.050939
Jeongmo Yang [Tue, 2 Feb 2021 09:15:26 +0000 (18:15 +0900)]
[cameracontrol] Add new enum for strobe

[Version] 1.16.2-10
[Issue Type] New feature

Change-Id: I14cdeda7a272fe1dafb51c0d657b2e9da2f6b0f0
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
3 years agodecodebin3: do not drop the eos event 74/250374/1 accepted/tizen/unified/20201228.130124 submit/tizen/20201224.044957
Eunhye Choi [Wed, 23 Dec 2020 08:19:34 +0000 (17:19 +0900)]
decodebin3: do not drop the eos event

- decodebin3 send eos event to downstream when it gets eos event from all tracks
  but it causes hang up if application ask changing pipeline state to PAUSED.
- eos track has no data to preroll but sink does not know whether it is eos or not
  because d3 drop the eos and it is waiting another track's eos.

Change-Id: I0787c8cf22abeb1e6e30ba56d0909381399cdbd2
(cherry picked from commit e81e47479b49ffe98c3614ad2295c56e28e0b282)

3 years agoActivate plug-in for Gstreamer Editing Services 67/246467/3 submit/tizen/20201110.045527
Minje Ahn [Fri, 30 Oct 2020 00:09:42 +0000 (09:09 +0900)]
Activate plug-in for Gstreamer Editing Services

Activation list:
 - libgstaudiomixer.so
 - libgstcompositor.so
 - libgstencoding.so

Change-Id: I3f21421011efd81b1bcfc4be3bdeef2465176d85
Signed-off-by: Minje Ahn <minje.ahn@samsung.com>
3 years agoplaybin3: Fix coverity issue (Missing unlock) 21/244121/2 accepted/tizen/unified/20201102.124435 submit/tizen/20201028.052639
Gilbok Lee [Tue, 15 Sep 2020 07:15:31 +0000 (16:15 +0900)]
playbin3: Fix coverity issue (Missing unlock)

Change-Id: I93dcc031ac75de8e6fff716cd7e7a689f9f9b23e

3 years agoMerge "spec: Add typelib" into tizen accepted/tizen/6.0/unified/20201030.110416 accepted/tizen/6.0/unified/hotfix/20201102.233438 accepted/tizen/6.0/unified/hotfix/20201103.051112 accepted/tizen/unified/20200610.015621 submit/tizen/20200602.084810 submit/tizen/20200609.025115 submit/tizen_6.0/20201029.205502 submit/tizen_6.0_hotfix/20201102.192902 submit/tizen_6.0_hotfix/20201103.115102 tizen_6.0.m2_release
Gilbok Lee [Tue, 2 Jun 2020 08:46:07 +0000 (08:46 +0000)]
Merge "spec: Add typelib" into tizen

3 years agospec: Add typelib 63/235163/1
Gilbok Lee [Tue, 2 Jun 2020 08:18:39 +0000 (17:18 +0900)]
spec: Add typelib

- for python, C# bindings

Change-Id: Ib9b8e1f99d22c439e3593853e67a9740e09bcd5d

3 years agouridecodebin3: check state in src_pad_added callback 94/234794/4 accepted/tizen/unified/20200603.150157 submit/tizen/20200602.071248
Eunhye Choi [Wed, 27 May 2020 11:28:40 +0000 (20:28 +0900)]
uridecodebin3: check state in src_pad_added callback

- avoid deadlock during autoplugging
- get state before linking between urisourcebin and decodebin3
  to avoid resync state change of the uridecodebin3

Change-Id: I7f0fb12527c13b9c09ee4506d24fbfa168a06986

4 years agoRemove dependency of development package for opus 43/231443/3 accepted/tizen/unified/20200423.054601 submit/tizen/20200422.053831
INSUN PYO [Wed, 22 Apr 2020 04:27:51 +0000 (13:27 +0900)]
Remove dependency of development package for opus

- It caused that unnecessary packages were installed in platform binary.
 : gst-plugins-base -> opus-devel -> libogg-devel -> glibc-devel -> linux-kernel-headers

Change-Id: I03e4459711932566f392d3610867f295b6bdf3ad

4 years agodecodebin3: fix condition about factory selection 11/231111/1 accepted/tizen/unified/20200422.032205 submit/tizen/20200421.025806
Eunhye Choi [Fri, 17 Apr 2020 08:41:44 +0000 (17:41 +0900)]
decodebin3: fix condition about factory selection

Change-Id: I6b23a227bf928ce140dca3959dff848373860462

4 years agoEnable opus plugin 76/230776/1 accepted/tizen/unified/20200417.152746 submit/tizen/20200416.021254
Jeongmo Yang [Tue, 14 Apr 2020 06:07:27 +0000 (15:07 +0900)]
Enable opus plugin

[Version] 1.16.2-5
[Profile] Common
[Issue Type] Update

Change-Id: I77da25a258416d035e534266be03d5166e85b764
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
4 years agodecodebin3: add request resource signal 08/230608/4 accepted/tizen/unified/20200415.121429 submit/tizen/20200413.123659
Eunhye Choi [Mon, 13 Apr 2020 04:17:20 +0000 (13:17 +0900)]
decodebin3: add request resource signal

- decodebin3 does not export the candidate decoder information
  to application. so request-resource signal is added to acquire
  resource before creating hw decoder.

Change-Id: Iecbd4667bdc9c47106843e2f181e8cf310278231

4 years agodecodebin3: add property to select sw decoder 49/230549/2
Eunhye Choi [Fri, 10 Apr 2020 11:41:00 +0000 (20:41 +0900)]
decodebin3: add property to select sw decoder

- separate the force-sw-decoders property for video and audio.

Change-Id: Ia36ec554ed6454aa397b1b76439df0ca198c532b

4 years agoplaybin3: handle GST_PLAY_FLAG_FORCE_SW_DECODERS 26/230426/1
Víctor Manuel Jáquez Leal [Sun, 3 Nov 2019 14:52:28 +0000 (15:52 +0100)]
playbin3: handle GST_PLAY_FLAG_FORCE_SW_DECODERS

In decodebin3 and uridecodebin3 the `force-sw-decoders` boolean property is
added. In uridecodebin3 it is only a proxy property which will forward
the value to decodebin3.

When decodebin3 has `force-sw-decoders` disabled, it will filter out in its
decoder and decodable factories those elements within the 'Hardware'
class, at reconfiguring output stream.

playbin3 adds by default GST_PLAY_FLAG_FORCE_SW_DECODERS, and sets
`force-sw-decoders` property accordingly to its internal uridecodebin, also
filters out the 'Hardware' class decoder elements when caps
negotiation.

cherry pick from upstream
commit id: f4bcf8290b3568690dacf0dac95af7f7036f7110

Change-Id: I8ccce2c891a58e272452b1af66967f037c57d571

4 years agoplayback: add GST_PLAY_FLAG_FORCE_SW_DECODERS enum 47/230347/1
Víctor Manuel Jáquez Leal [Sun, 3 Nov 2019 14:16:04 +0000 (15:16 +0100)]
playback: add GST_PLAY_FLAG_FORCE_SW_DECODERS enum

This flag would be common either for playbin2 and playbin3.

cherry-pick from upstream
commit id: d50c71708a1dd2be120bc4b46c38cb09084a9cba

Change-Id: I55bb687226b8bb4ab36f518eb6d66e13ca3a25a9

4 years ago[videofilter] Add new condition in transform function for zero copy buffer 41/229441/2 accepted/tizen/unified/20200403.034505 submit/tizen/20200401.043141
Jeongmo Yang [Wed, 1 Apr 2020 05:41:42 +0000 (14:41 +0900)]
[videofilter] Add new condition in transform function for zero copy buffer

- The input buffer could be zero copy buffer.
- SR32 format is also used.

[Version] 1.16.2-4
[Profile] Common
[Issue Type] Update

Change-Id: Ib3e6ecb0504f2019c2dc032fcb27456b68e2d0f8
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
4 years agoaudiomixer/compositor: Disable audiomixer and compositor 09/229209/1
Gilbok Lee [Mon, 30 Mar 2020 09:07:40 +0000 (18:07 +0900)]
audiomixer/compositor: Disable audiomixer and compositor

Change-Id: Id60626f0e5e3039e7f00f97da2fb160e098bf5ad

4 years ago[tizenmemory] Fix build warning 62/226762/1 accepted/tizen/unified/20200323.173033 submit/tizen/20200320.023549
Jeongmo Yang [Thu, 5 Mar 2020 07:16:55 +0000 (16:16 +0900)]
[tizenmemory] Fix build warning

- Add annotations for gobject instrospection
- Update Makefile.am to refer GstVideo-1.0.gir

[Version] 1.16.2-3
[Profile] Common
[Issue Type] Update

Change-Id: Ib685fd17f5503442501b42d848fd384fe97f0ed9
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
4 years ago[cameracontrol] Fix build warning and change interface style like colorbalance 17/226617/5
Jeongmo Yang [Wed, 4 Mar 2020 06:51:35 +0000 (15:51 +0900)]
[cameracontrol] Fix build warning and change interface style like colorbalance

- build warning : return value: Missing (element-type) annotation

[Version] 1.16.2-2
[Profile] Common
[Issue Type] Update

Change-Id: I6ca2dd1de71ec8c7e2062623f13c27cfb7b23ad6
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
4 years ago[tizenmemory] Set missed flags when map video memory 64/226464/1
Jeongmo Yang [Tue, 3 Mar 2020 03:12:49 +0000 (12:12 +0900)]
[tizenmemory] Set missed flags when map video memory

- gst_buffer_unref() is missed after gst_buffer_ref() while mapping and unmapping video memory,
  so, the buffer is not released and it caused underrun of bufferpool.

[Version] 1.16.2-1
[Profile] Common
[Issue Type] Bug fix

Change-Id: I7990bb88c5852999522a8b2b7d1b10b9e9b83fc2
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
4 years agoMerge branch 'tizen_gst_1.16.2' into tizen 91/225591/1 accepted/tizen/unified/20200304.124028 submit/tizen/20200221.064623 submit/tizen/20200302.032418
Gilbok Lee [Fri, 21 Feb 2020 06:22:40 +0000 (15:22 +0900)]
Merge branch 'tizen_gst_1.16.2' into tizen

Change-Id: Ic7957406bd4feccae8151765c793c34b3c9846e4

4 years agosubparse: fix svace issue 94/225494/2 tizen_gst_1.16.2
Eunhye Choi [Thu, 20 Feb 2020 07:49:41 +0000 (16:49 +0900)]
subparse: fix svace issue

Change-Id: I0008756d0b796b761591a0195fef800db2d02b87

4 years agoMerge branch 'upstream/1.16' into tizen_gst_1.16.2 87/222887/7
Gilbok Lee [Fri, 17 Jan 2020 07:02:38 +0000 (16:02 +0900)]
Merge branch 'upstream/1.16' into tizen_gst_1.16.2

Change-Id: I1bc8038f8df8189776f4b2d4b70e3822430e840b

4 years ago[videoconvert] Update converting function for I420toSN12 87/223787/3 accepted/tizen/unified/20200205.125306 submit/tizen/20200204.110420
Jeongmo Yang [Tue, 4 Feb 2020 03:48:22 +0000 (12:48 +0900)]
[videoconvert] Update converting function for I420toSN12

[Version] 1.12.2-8
[Profile] Common
[Issue Type] Update

Change-Id: I71e33e185881844b18de1321c45f65dbce002a3f
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
4 years agovideoconvert: Support I420 to SN12 converting on exynos target 49/223149/2 accepted/tizen/unified/20200130.214736 submit/tizen/20200128.053924 submit/tizen/20200130.052510
Jeongmo Yang [Thu, 23 Jan 2020 09:18:14 +0000 (18:18 +0900)]
videoconvert: Support I420 to SN12 converting on exynos target

[Version] 1.12.2-7
[Profile] Common
[Issue Type] Improvement

Change-Id: If23c5c4d51a018b7bc6446e9584940a87ed26edb
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
4 years agoRelease 1.16.2 upstream/1.16 1.16.2
Tim-Philipp Müller [Tue, 3 Dec 2019 11:03:11 +0000 (11:03 +0000)]
Release 1.16.2

4 years agoUpdate docs
Tim-Philipp Müller [Tue, 3 Dec 2019 11:03:11 +0000 (11:03 +0000)]
Update docs

4 years agoUpdate translations
Tim-Philipp Müller [Tue, 3 Dec 2019 11:03:09 +0000 (11:03 +0000)]
Update translations

4 years agoglfilters: Don't use static variables for storing per-element state
Sebastian Dröge [Wed, 2 Oct 2019 20:21:09 +0000 (23:21 +0300)]
glfilters: Don't use static variables for storing per-element state

4 years agoxvimagepool: Update size, stride, and offset with allocated XvImage
Seungha Yang [Fri, 8 Nov 2019 08:28:44 +0000 (17:28 +0900)]
xvimagepool: Update size, stride, and offset with allocated XvImage

Memory layout of XvImage might be different from that of GstVideoInfo.
If so, the image size, stride, and offset would be wrongly informed.

Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/677

4 years agoxvimagepool: Fix confusing debug message for padding size
Seungha Yang [Fri, 8 Nov 2019 08:33:17 +0000 (17:33 +0900)]
xvimagepool: Fix confusing debug message for padding size

4 years agovideo-converter: Fix RGB-XYZ-RGB conversion
Edward Hervey [Fri, 8 Nov 2019 14:13:59 +0000 (15:13 +0100)]
video-converter: Fix RGB-XYZ-RGB conversion

The matrices were in the wrong order.
Instead of the conversion matrix being
  _ XYZ_TO_RGB_output * RGB_TO_XYZ_input * input_RGB
It was
  _ RGB_TO_XYZ_input * XYZ_TO_RGB_output * input_RGB

4 years agoaudiorate: Update next_offset per rate change
Seungha Yang [Thu, 7 Nov 2019 13:00:03 +0000 (22:00 +0900)]
audiorate: Update next_offset per rate change

To support runtime audio samplerate change, re-calculate next target offset
per caps. Calculating the next buffer offset using the previous
offset seems to be tricky and rounding error prone.

Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/693

4 years agoRevert "audiorate: accumulate offset by time diff"
Seungha Yang [Thu, 7 Nov 2019 12:42:25 +0000 (21:42 +0900)]
Revert "audiorate: accumulate offset by time diff"

This reverts commit 4fa850e3e6c039000fc7f648de238af6c2278469.

The commit would break an constant rate audio stream with gap.

4 years agoaudioringbuffer: Reset reorder flag before check
Jochen Henneberg [Mon, 26 Aug 2019 13:03:48 +0000 (15:03 +0200)]
audioringbuffer: Reset reorder flag before check

This function might be revisited with different channel position mapping
while audio source goes into play so the reorder flag needs to be reset
before the checks happen.

4 years agoaudio-buffer: Don't fail to map buffers with zero samples
Sebastian Dröge [Thu, 14 Nov 2019 11:37:58 +0000 (12:37 +0100)]
audio-buffer: Don't fail to map buffers with zero samples

Instead initialize the map infos, etc to NULL like gst_buffer_map()
would be doing on a zero-sized buffer.

This fixes a crash in audioresample if the first output buffer would
contain zero samples.

4 years agovideorate: Fix max-duplication-time handling
Sebastian Dröge [Mon, 28 Oct 2019 12:43:50 +0000 (14:43 +0200)]
videorate: Fix max-duplication-time handling

Previously this would've only set discont=TRUE and then for all future
buffers simply returned immediately.

Instead we also need to
  a) drain previous input until its buffer time
  b) update next_ts and base_ts accordingly for the gap
  c) actually store the new buffer after the gap so it can be used in
     the future and so the old buffer before the gap is gone

Also update the unit test accordingly so that it actually tests for this
behaviour. Previously it only tested that after the gap we got no output
at all.

4 years agogl/gbm: ensure we call the resize callback before attempting to draw
Matthew Waters [Sun, 3 Nov 2019 13:38:18 +0000 (00:38 +1100)]
gl/gbm: ensure we call the resize callback before attempting to draw

Without this, sinks will not be notified about size changes or even the
initial size and would render at 0x0.

4 years agovideo-converter: Use G_N_ELEMENTS instead of writing it out manually
Sebastian Dröge [Mon, 21 Oct 2019 13:43:32 +0000 (16:43 +0300)]
video-converter: Use G_N_ELEMENTS instead of writing it out manually

4 years agovideo-converter: Scaling-only fast-paths for planar formats are keeping interlacing
Sebastian Dröge [Mon, 21 Oct 2019 14:40:35 +0000 (17:40 +0300)]
video-converter: Scaling-only fast-paths for planar formats are keeping interlacing

So we can also use them for interlaced content and speed up scaling a
bit.

4 years agovideo-scaler: Correctly handle interlaced vertical scalers in gst_video_scaler_2d()
Sebastian Dröge [Mon, 21 Oct 2019 14:28:46 +0000 (17:28 +0300)]
video-scaler: Correctly handle interlaced vertical scalers in gst_video_scaler_2d()

We need to provide twice as many lines as usual to the scaling function
as every second lines would be skipped.

Without this we read from random memory and produce colorful output and
crashes.

4 years agovideo-converter: Don't use fast-path halfing/doubling rescalers for interlaced planar...
Sebastian Dröge [Mon, 21 Oct 2019 13:43:02 +0000 (16:43 +0300)]
video-converter: Don't use fast-path halfing/doubling rescalers for interlaced planar formats

They will mix lines from the top and bottom field and by that
effectively deinterlace the video, badly.

4 years agovideo-converter: Use interlaced scalers for vertical scaling if needed
Sebastian Dröge [Mon, 21 Oct 2019 13:43:02 +0000 (16:43 +0300)]
video-converter: Use interlaced scalers for vertical scaling if needed

Without this, scaling e.g. interlaced UYVY causes corrupted output with
lines as follows: f1 f1 f2 f2, i.e. two lines of each field and only
then the other field.

4 years agogstrtspconnection: messages_bytes not decreased
Joakim Johansson [Thu, 3 Oct 2019 10:03:09 +0000 (12:03 +0200)]
gstrtspconnection: messages_bytes not decreased

The watch->messages_bytes is not decreased when the write operation
from the backlog is only partly successfull.

This commit decreases the watch->messages_bytes for the successfully
sent messages.

Fixes #679

4 years agocheck: Don't use real audio devices for tests
Edward Hervey [Thu, 10 Oct 2019 14:58:26 +0000 (16:58 +0200)]
check: Don't use real audio devices for tests

When checking the behaviour of live seeking on audiomixer or
adder we don't *really* need real audio devices. audiotestsrc
in live mode is enough to test the behaviour of those elements.

Also avoids people repeatedly wasting hours trying to figure out
whether that failing behaviour is due to their code or not.

4 years agopbutils: add description for CineForm codec
Tim-Philipp Müller [Tue, 8 Oct 2019 18:35:49 +0000 (19:35 +0100)]
pbutils: add description for CineForm codec

4 years agoriff: add mapping for CineForm codec
Tim-Philipp Müller [Tue, 8 Oct 2019 18:35:23 +0000 (19:35 +0100)]
riff: add mapping for CineForm codec

Makes CineForm-in-AVI work.

4 years agoglupload: Add VideoMetas and GLSyncMeta to the raw uploaded buffers
Thibault Saunier [Fri, 27 Sep 2019 14:10:43 +0000 (11:10 -0300)]
glupload: Add VideoMetas and GLSyncMeta to the raw uploaded buffers

This is done by reusing `gst_gl_memory_setup_buffer` avoiding to
duplicate code.

Without a VideoMeta, mapping those buffers lead to GstBuffer mapping the
buffer in system memory even when specifying the GL flags (through the
buffer merging mechanism) making the result totally broken.

4 years agostreamsynchronizer: avoid pad destruction races.
Charlie Turner [Fri, 20 Sep 2019 08:48:30 +0000 (09:48 +0100)]
streamsynchronizer: avoid pad destruction races.

Due to the use of {set/get}-element_private methods being used to store
the GstSyncStream in the src and sink pads, and the racey nature of pad
destruction, there are numerous ways we can be bitten by race conditions
in the stream synchronizer. Fix that by tying the pads toghether with
references.

4 years agogst-play: Use gst_print* to avoid broken stdout string on Windows
Seungha Yang [Tue, 24 Sep 2019 06:32:33 +0000 (15:32 +0900)]
gst-play: Use gst_print* to avoid broken stdout string on Windows

Equvalant to https://gitlab.freedesktop.org/gstreamer/gstreamer/merge_requests/258

When debug enabled, the debug string might be broken on Windows.

4 years agoRelease 1.16.1
Tim-Philipp Müller [Mon, 23 Sep 2019 10:06:23 +0000 (11:06 +0100)]
Release 1.16.1

4 years agoUpdate docs
Tim-Philipp Müller [Mon, 23 Sep 2019 10:06:23 +0000 (11:06 +0100)]
Update docs

4 years agoUpdate translations
Tim-Philipp Müller [Mon, 23 Sep 2019 10:06:21 +0000 (11:06 +0100)]
Update translations

4 years agovideo-info: parse field-order for all interleaved formats
Marco Felsch [Mon, 19 Nov 2018 16:19:33 +0000 (17:19 +0100)]
video-info: parse field-order for all interleaved formats

The "field-order" is related for all interlace_mode modes except the
"progressive" mode. So instead of or'ing each mode we can use the
already supported GST_VIDEO_INFO_IS_INTERLACED macro.

4 years agomeson: Reenable NEON support
Doug Nazar [Mon, 2 Sep 2019 20:20:07 +0000 (16:20 -0400)]
meson: Reenable NEON support

4 years agoaudio-resampler: Update NEON to handle remainders not multiples of 4
Doug Nazar [Tue, 3 Sep 2019 03:25:39 +0000 (23:25 -0400)]
audio-resampler: Update NEON to handle remainders not multiples of 4

If the remainder is not evenly divisable by 4, we'd miss the check
for zero and continue the loop until crashing. Change the branch
to take into account negatives as well.

This more closely matches the SSE loop.

4 years agoeglimage: Fix memory leak
Jonas Larsson [Wed, 28 Aug 2019 18:24:01 +0000 (11:24 -0700)]
eglimage: Fix memory leak

Also free the GstEGLImage struct allocated by g_new0.

Fixes #661

4 years agotests: fix up valgrind suppressions for glibc getaddrinfo leaks
Tim-Philipp Müller [Sun, 8 Sep 2019 00:03:57 +0000 (01:03 +0100)]
tests: fix up valgrind suppressions for glibc getaddrinfo leaks

Make more flexible. There is an extra
  gethostbyname2_r@@GLIBC_2.2.5 (getXXbyYY_r.c:217)
in the trace on the build bots (F30).

Fixes the -base and -good valgrind jobs on the 1.16 branch CI.

4 years agoaudiodecoder: fix ctitical info assertion 'GST_IS_CAPS (dec->priv->ctx.caps)' failed
Hou Qi [Wed, 21 Aug 2019 11:04:56 +0000 (19:04 +0800)]
audiodecoder: fix ctitical info assertion 'GST_IS_CAPS (dec->priv->ctx.caps)' failed

Matroskademux will send gap event when lag of video and audio is over 3 seconds.
audiodecoder needs to handle gap event and set default output caps.
Only audio info is set, while output caps is ignored. This cause the assertion failed.

Need to fill output caps in gst_audio_decoder_negotiate_default_caps() with
negotiated caps to avoid critical info printed when check it later.

4 years agoDocs: add GL_CFLAGS to GTK_DOC_CFLAGS
Mike Gorse [Sat, 24 Aug 2019 12:23:34 +0000 (12:23 +0000)]
Docs: add GL_CFLAGS to GTK_DOC_CFLAGS

Otherwise introspection may fail because wayland-client.h cannot be found.

4 years agovideo-frame: Take TFF flag from the video info if it was set in there
Sebastian Dröge [Fri, 16 Aug 2019 08:58:28 +0000 (11:58 +0300)]
video-frame: Take TFF flag from the video info if it was set in there

The caps and thus the video info have preference. If the field order is
set in there then it applies to all frames.

This works around issues where the tff field order is only set in the
caps but not additionally in the buffer flags.

4 years agoglcolorconvert: Fix external-oes shader
Xavier Claessens [Fri, 9 Aug 2019 20:04:03 +0000 (16:04 -0400)]
glcolorconvert: Fix external-oes shader

The #extention must come before 'precision highp float;'.

Closes: #650

4 years agovideo-color: keep UNKNOWN colorimetry define automatically up-to-date
Tim-Philipp Müller [Sun, 11 Aug 2019 13:16:51 +0000 (14:16 +0100)]
video-color: keep UNKNOWN colorimetry define automatically up-to-date

Follow-up to !310 and helps with backport commits like !360

4 years agovideo-color: Deal with NULL colorimetry while converting from string
Arun Raghavan [Fri, 24 May 2019 13:22:58 +0000 (15:22 +0200)]
video-color: Deal with NULL colorimetry while converting from string

This came up in the case where v4l2 sets caps with colorimetry=NULL, and
then tries to parse back the colorimetry, causing a crash in
gst_video_get_colorimetry() because of g_str_equal(). We fix this by
making sure the only caller of the function never calls it with a null
colorimetry string.

4 years agovideo-color: Fix unknown colorimetry checking
Arun Raghavan [Fri, 24 May 2019 14:35:08 +0000 (16:35 +0200)]
video-color: Fix unknown colorimetry checking

Also drop some deadcode #defines.

4 years agovideo-anc: Fix ADF detection when trying to extract data from vanc
Sebastian Dröge [Wed, 7 Aug 2019 10:01:07 +0000 (13:01 +0300)]
video-anc: Fix ADF detection when trying to extract data from vanc

Previously we were checking offset 1 twice, but the second check
should've been for offset 2.

4 years agogl/wayland: fix wayland event source burning CPU
Lucas Stach [Tue, 28 May 2019 15:43:25 +0000 (17:43 +0200)]
gl/wayland: fix wayland event source burning CPU

Commit c71dd72b "gl/wayland: fix glib mainloop integration" was overeager
in removing the poll result test from the check function. This caused
dispatch to be called even if no new events are available on the
Wayland connection, which in turn would wake up the glib mainloop,
causing effectively a tight loop without ever blocking on the poll.

Fixes #603

4 years agoAdd used attribute in order to make NEON detection working with -flto.
Martin Liska [Wed, 24 Jul 2019 08:12:17 +0000 (10:12 +0200)]
Add used attribute in order to make NEON detection working with -flto.

4 years agoaudioaggregator: Split getcaps() function into two
Sebastian Dröge [Thu, 18 Jul 2019 05:46:42 +0000 (08:46 +0300)]
audioaggregator: Split getcaps() function into two

One for convert pads and one for normal sink pads.

4 years agovideoaggregator: We can only convert the format if a GstVideoAggregatorConvertPad...
Sebastian Dröge [Tue, 16 Jul 2019 07:40:16 +0000 (10:40 +0300)]
videoaggregator: We can only convert the format if a GstVideoAggregatorConvertPad is used

Otherwise assume that we can at least support any framerate.

4 years agoaudioaggregator: Always take first configure pad's rate and downstream caps into...
Sebastian Dröge [Tue, 16 Jul 2019 07:34:24 +0000 (10:34 +0300)]
audioaggregator: Always take first configure pad's rate and downstream caps into account when calculating allow sink caps

While we can convert between all formats apart from the rate, we
actually need to make sure that we comply with a) the rate of the first
configured pad and b) also all the allowed rates from downstream.

4 years agoaudioaggregator: If we don't have a GstAudioAggregatorConvertPad, don't assume that...
Sebastian Dröge [Tue, 16 Jul 2019 07:02:08 +0000 (10:02 +0300)]
audioaggregator: If we don't have a GstAudioAggregatorConvertPad, don't assume that we can actually convert

4 years agoaudioaggregator: always use downstream's rate requirements
Mathieu Duponchelle [Mon, 15 Jul 2019 14:08:34 +0000 (16:08 +0200)]
audioaggregator: always use downstream's rate requirements

We were previously only fixating the rate in the getcaps
implementation when downstream was requiring a discrete value,
causing negotiation to fail when upstream was capable of rate
conversion, but not made aware that it had to occur.

Instead of fixating the rate, we can simply update our sink
template caps with whatever GValue the downstream caps are holding
as their rate field.

Allows negotiation to successfully complete with pipelines such as:

audiotestsrc ! audio/x-raw, rate=48000 ! audioresample ! audiomixer name=m ! \
audio/x-raw, rate={800, 1000} ! autoaudiosink \
audiotestsrc ! audio/x-raw, rate=44100 ! audioresample ! m.

4 years agortspconnection: data-offset increase not set
Göran Jönsson [Fri, 28 Jun 2019 05:22:17 +0000 (07:22 +0200)]
rtspconnection: data-offset increase not set